萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Linux 教學

Linux 網絡運維必備 12 大核心命令實戰速查手冊

網絡故障排查、性能調優、安全審計,離不開一套順手的命令行工具箱。本文精選 12 個最高頻、最高價值的 Linux 網絡命令,按 連通性測試、路徑追蹤、域名解析、流量抓包、接口配置、連接狀態、帶寬監控 七大場景分類,附帶實戰參數組合、輸出解讀與避坑提示,建議收藏備查。

一、連通性測試

1. ping — 最基礎的達達測試

ping -c 4 -i 0.2 -W 2 8.8.8.8
# -c 次數  -i 間隔秒  -W 超時秒  -s 包大小  -4/-6 強制 IPv4/IPv6
# 輸出關鍵:time=RTT, ttl=跳數, icmp_seq=序列號, packet loss=丟包率

ping 輸出示例

2. arping — 二層 ARP 級達達 (穿透防火牆阻擋 ICMP)

sudo arping -c 3 -I eth0 192.168.1.100
# 僅局域網有效,確認 MAC 地址映射、IP 衝突

二、路徑追蹤

3. tracepath — 無需 root 的路徑追蹤 (MTU 發現)

tracepath example.com
# 輸出含:hop、RTT、MTU、asymm (非對稱路由)
# Ubuntu 預裝,CentOS 需安裝 iputils-tracepath

tracepath 輸出

4. traceroute — 功能更全的路徑追蹤 (需 root)

traceroute -n -T -p 80 example.com
# -n 不解析域名 -T TCP SYN 模式 (繞過阻擋 UDP/ICMP 的防火牆) -p 端口
# 支援 -I (ICMP), -U (UDP, 默認), -T (TCP)

5. mtr — 綜合 ping + traceroute 的動態神器

mtr -r -c 100 example.com
# -r 報告模式 (非交互) -c 次數
# 關鍵列:Loss% (丟包)、Snt (發送)、Last/Avg/Best/Wrst (RTT)、StDev (抖動)
# 第 6 跳 Loss 20%+ → 重點排查該跳設備/鏈路

mtr 輸出示例

三、域名解析

6. host — 簡潔 DNS 查詢

host example.com           # A/AAAA 記錄
host 208.43.115.82         # 反向 PTR
host -t mx example.com     # MX 郵件記錄
host -t ns example.com     # NS 授權服務器
host -a example.com        # 所有記錄 (ANY)

host 輸出

7. dig — 專業級 DNS 診斷 (替代 nslookup)

dig +short example.com A           # 只輸出 IP
dig @8.8.8.8 example.com +trace    # 從根域遞歸追蹤
dig example.com AXFR               # 區域傳輸嘗試 (檢測誤配)
dig +dnssec example.com            # DNSSEC 驗證

四、域名/網絡資產信息

8. whois — 域名/IP 註冊信息查詢

whois example.com
whois 8.8.8.8
# 輸出:Registrar、Creation/Expiry Date、Name Servers、Registrant/Org (若未隱私保護)

whois 輸出

五、接口與連接管理

9. ifplugstatus — 物理鏈路狀態檢測 (網線插拔)

sudo apt install ifplugd   # Debian/Ubuntu
ifplugstatus               # 所有接口
ifplugstatus eth0          # 指定接口
# 輸出:link beat detected (已插網線) / unplugged (未插)

ifplugstatus 輸出

10. ip / ifconfig — 接口配置查看與修改 (ip 為現代標準)

# 查看
ip -br -c a                # 簡潔彩色顯示所有接口地址
ip -6 a                    # 僅 IPv6
# 臨時配置 (重啟失效)
sudo ip addr add 192.168.10.5/24 dev eth0
sudo ip link set eth0 up
# 永久配置見發行版網絡腳本 (Netplan / ifcfg / interfaces)

ifconfig 輸出

11. nmcli — NetworkManager 命令行控制 (桌面/服務器通用)

nmcli device status
nmcli connection show
nmcli con up "Wired connection 1"
nmcli con mod "Wired connection 1" ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8,1.1.1.1" ipv4.method manual
nmcli con up "Wired connection 1"

12. dhclient — DHCP 租約管理

sudo dhclient -r -v eth0   # 釋放租約
sudo dhclient -v eth0      # 重新獲取
# -v 詳情 -1 一次性嘗試 -pf 指定 pid 文件 -lf 指定租約文件

dhclient 輸出

六、連接狀態與統計

13. ss / netstat — 套接字統計 (ss 為現代替代)

ss -antlp | head -20              # 所有 TCP 監聽/連接 + 進程
ss -s                             # 協議統計摘要
ss -o state established '( dport = :443 or sport = :443 )'  # 過濾 HTTPS 連接
# netstat 經典參數:
# -a 所有 -t TCP -u UDP -n 數字 -p 進程 -r 路由 -i 接口統計 -s 協議統計

netstat 輸出
netstat -p 進程映射
netstat -s 協議統計

七、流量抓包與分析

14. tcpdump — 命令行抓包標準

sudo tcpdump -i eth0 -nn -s0 -w capture.pcap port 80
# -nn 不解析主機/端口 -s0 抓全包 -w 寫 pcap
# Wireshark 打開 .pcap 做深度分析

15. nethogs — 進程級帶寬佔用 Top (類 htop)

sudo nethogs eth0
# 實時顯示每個 PID 的發送/接收速率,快速定位「誰在偷跑流量」

16. iftop — 連接級帶寬 Top

sudo iftop -i eth0 -P -n
# -P 顯示端口 -n 不解析主機名
# 按 T 切換顯示總流量、按 S/D 排序源/目流量

場景化速查表

場景首選命令關鍵參數/組合
「能不能 ping 通?」ping-c 4 -W 2
「丟包在哪一跳?」mtr-r -c 100
「域名解析到哪個 IP?」host / dighost -t mx, dig +trace
「這個域名是誰註冊的?」whois
「網線插好了嗎?」ifplugstatus / ethtoolethtool eth0 | grep Link
「臨時改個 IP」ip addr addip addr add 10.0.0.5/24 dev eth0
「哪個進程佔用 80 端口?」ss / lsofss -antlp | grep :80
「當前連接數多少?」ss -s
「抓包分析 HTTP」tcpdump / httprytcpdump -i eth0 -A port 80
「誰在佔帶寬?」nethogs / iftopnethogs eth0
「防火牆放行了嗎?」iptables-nft / firewall-cmdnft list ruleset

總結

這 12+ 命令構成了 Linux 網絡運維的「標準庫」。建議:熟練掌握 ping/mtr/host/dig/ip/ss/tcpdump/nethogs 八大核心,其餘按需查閱。記住兩個原則:「分層排查」 (物理→鏈路→網絡→傳輸→應用) 與 「對比基線」 (正常值 vs 當前值)。工具死、人活,靈活組合才能破解疑難雜症。

copyright © 萬盛學電腦網 all rights reserved