ubuntu 网络常用命令

在 Ubuntu 系统中,网络管理、诊断和配置常用以下命令,涵盖接口配置、路由管理、DNS 查询、端口检测、网络统计等场景。以下是分类整理的常用命令及用法:

一、基础网络接口配置

1. ip(现代网络工具,推荐替代 ifconfig
  • 作用:查看/配置网络接口、路由、ARP 等。
  • 常用子命令
    • ip addr show 或 ip a:查看所有网络接口的 IP 地址。

      # 查看 eth0 接口的 IP
      ip addr show eth0
    • ip link show 或 ip l:查看网络接口的物理状态(如是否启用)。

      # 启用/禁用接口
      sudo ip link set eth0 up # 启用 eth0
      sudo ip link set eth0 down # 禁用 eth0
    • ip route show 或 ip r:查看路由表。
2. ifconfig(传统工具,部分旧系统仍用)
  • 作用:查看/配置网络接口(IP、子网掩码等)。
  • 常用操作

    # 查看所有接口信息
    ifconfig
    
    
    # 查看指定接口(如 eth0)
    ifconfig eth0
    
    
    # 临时配置 IP(重启失效)
    sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0
3. nmcli(NetworkManager 命令行工具)
  • 作用:管理网络连接(适合使用 NetworkManager 的系统)。
  • 常用操作

    # 查看所有网络连接状态
    nmcli dev status
    
    
    # 查看特定连接(如 eth0)的配置
    nmcli con show eth0
    
    
    # 启用/禁用连接
    sudo nmcli con up eth0 # 启用
    sudo nmcli con down eth0 # 禁用

二、网络连接测试

1. ping
  • 作用:测试与目标主机的连通性(基于 ICMP 协议)。
  • 常用选项
    • -c <次数>:指定发送包的数量。
    • -i <间隔>:指定发送间隔(秒)。

    # 测试与 8.8.8.8(Google DNS)的连通性,发送 4 个包
    ping -c 4 8.8.8.8
2. traceroute 或 tracepath
  • 作用:追踪数据包到目标主机的路由路径(显示经过的路由器)。
  • 用法

    # 追踪到 example.com 的路由
    traceroute example.com
    
    
    # 更简洁的输出(不解析域名)
    traceroute -n example.com
3. mtr(结合 ping 和 traceroute 的工具)
  • 作用:实时显示路由路径及丢包率(需安装:sudo apt install mtr)。
  • 用法
    mtr example.com
4. telnet(测试端口连通性)
  • 作用:测试目标主机的指定端口是否开放(需安装:sudo apt install telnet)。
  • 用法

    # 测试 8.8.8.8 的 53 端口(DNS)
    telnet 8.8.8.8 53

三、路由与网关管理

1. route(传统路由工具)
  • 作用:查看/配置路由表。
  • 常用操作

    # 查看路由表
    route -n # -n 表示不解析域名,显示 IP
    
    
    # 添加默认网关(假设网关为 192.168.1.1)
    sudo route add default gw 192.168.1.1 eth0
    
    
    # 删除默认网关
    sudo route del default gw 192.168.1.1
2. ip route(现代路由工具)
  • 作用:替代 route,更推荐使用。
  • 常用操作

    # 查看路由表
    ip route show
    
    
    # 添加默认网关
    sudo ip route add default via 192.168.1.1 dev eth0
    
    
    # 删除默认网关
    sudo ip route del default via 192.168.1.1 dev eth0

四、DNS 相关命令

1. dig(DNS 查询工具)
  • 作用:查询 DNS 记录(A、MX、CNAME 等)。
  • 常用选项
    • @<DNS服务器>:指定 DNS 服务器(如 @8.8.8.8)。
    • +short:简化输出。

    # 查询 example.com 的 A 记录
    dig example.com A
    
    
    # 查询 MX 记录(邮件服务器)
    dig example.com MX
    
    
    # 指定 DNS 服务器查询
    dig @8.8.8.8 example.com A
    
    
    # 简化输出(仅显示结果)
    dig +short example.com A

2. nslookup(交互式 DNS 查询)
  • 作用:查询 DNS 信息(交互模式或命令行)。
  • 用法

    # 查询 example.com 的 IP
    nslookup example.com
    
    
    # 指定 DNS 服务器(如 8.8.8.8)
    nslookup example.com 8.8.8.8

3. host(简化 DNS 查询)
  • 作用:查询 DNS 记录(类似 dig 但更简洁)。
  • 用法

    host example.com
    host -t MX example.com # 查询 MX 记录

五、端口与服务监听

1. ss(替代 netstat 的现代工具)
  • 作用:查看网络连接、端口监听状态。
  • 常用选项
    • -t:TCP 协议
    • -u:UDP 协议
    • -l:监听中的连接
    • -n:不解析服务名(直接显示端口号)
    • -p:显示进程信息

    # 查看所有 TCP 监听端口
    ss -tln
    
    
    # 查看所有 UDP 监听端口
    ss -uln
    
    
    # 查看已建立的 TCP 连接
    ss -tn state established
    
    
    # 查看指定端口的进程(如 80 端口)
    ss -tnp | grep :80

2. netstat(传统工具,部分系统仍用)
  • 作用:查看网络连接、路由表、接口统计等。
  • 常用选项
    • -a:显示所有连接(包括监听和非监听)
    • -n:不解析服务名
    • -t:TCP
    • -u:UDP
    • -r:显示路由表

    # 查看所有 TCP 连接
    netstat -tn
    
    
    # 查看路由表
    netstat -rn
    
    
    # 查看接口统计(流量、错误等)
    netstat -i

六、网络统计与诊断

1. ifstat(网络接口流量统计)
  • 作用:实时显示网络接口的流量(需安装:sudo apt install ifstat)。
  • 用法

    # 实时显示 eth0 的流量(每秒刷新)
    ifstat -i eth0 1
2. ethtool(网卡物理层信息)
  • 作用:查看/配置网卡参数(如速度、双工模式)。
  • 用法

    # 查看 eth0 的详细信息(速度、链路状态等)
    sudo ethtool eth0
    
    
    # 设置网卡为全双工、1000Mbps(需管理员权限)
    sudo ethtool -s eth0 speed 1000 duplex full
3. mii-tool(查看网卡链路状态)
  • 作用:类似 ethtool,但更简单(部分旧网卡适用)。
  • 用法
    mii-tool eth0

七、无线网络相关

1. iwconfig(无线接口配置)
  • 作用:查看/配置无线网卡(SSID、加密等)。
  • 用法

    # 查看无线接口信息
    iwconfig
    
    
    # 连接到指定 WiFi(需先启用接口)
    sudo iwconfig wlan0 essid "WiFi名称" key "密码"
2. nmcli(无线连接管理)
  • 作用:通过 NetworkManager 管理无线连接。
  • 用法

    # 扫描附近 WiFi
    nmcli dev wifi list
    
    
    # 连接到指定 WiFi(需已知密码)
    nmcli dev wifi connect "WiFi名称" password "密码"

八、其他常用工具

1. curl(HTTP 请求工具)
  • 作用:发送 HTTP 请求(测试网页、API 等)。
  • 用法

    # 访问 example.com
    curl example.com
    
    
    # 显示请求头
    curl -I example.com
    
    
    # 发送 POST 请求(带数据)
    curl -X POST -d "param=value" http://example.com/api
2. wget(文件下载工具)
  • 作用:从网络下载文件。
  • 用法

    # 下载文件
    wget http://example.com/file.zip
    
    
    # 后台下载(断点续传)
    wget -b http://example.com/largefile.zip
3. nmap(网络扫描工具,需安装)
  • 作用:扫描主机开放的端口、服务(需安装:sudo apt install nmap)。
  • 用法

    # 扫描目标主机的常见端口
    nmap example.com
    
    
    # 快速扫描(仅扫描常用端口)
    nmap -F example.com

总结

  • 配置网络:优先用 ipnmcli(适合桌面版);服务器环境可能直接编辑 /etc/netplan/ 配置(netplan 命令)。
  • 诊断问题:用 ping 测连通性,traceroute 查路由,ss/netstat 看端口,dig 查 DNS。
  • 权限:修改网络配置(如 ipifconfig)通常需要 sudo

根据场景选择工具,能高效排查网络问题!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值