搞网络维护、做开发或者只是偶尔查个问题,手边没几个趁手的命令工具还真不行。很多人只知道ping和ipconfig,其实还有很多功能更强、效率更高的网络命令工具集值得试试。下面这几个,都是日常用起来顺手的家伙。
1. PingPlotter
排查网络延迟问题时,PingPlotter比单纯的ping命令直观太多。它能持续追踪到目标服务器的每一跳延迟,并以图形方式展示波动情况。比如你打游戏卡顿,用它一看就知道是本地ISP的问题还是国外线路不稳定。
2. Nmap
想扫描局域网里哪些设备在线,或者检查服务器开放了哪些端口?Nmap几乎是标配。命令简单直接:
nmap -sP 192.168.1.0/24
这一行就能扫出整个内网的活跃主机。安全测试、设备管理都用得上。
3. Wireshark
抓包分析这块,Wireshark基本没对手。虽然界面看起来复杂,但一旦掌握基础过滤语法,查问题特别快。比如网页加载慢,抓个包看看是不是某个资源请求一直卡着不回。
http.request.method == "GET" && ip.dst == 192.168.1.100
这种过滤条件能快速定位特定流量。
4. NetCat(nc)
号称“网络瑞士军刀”,能用来测端口连通性、传文件甚至当简易Web服务器。比如测试某台服务器的80端口通不通:
nc -zv example.com 80
返回Connected就说明没问题。没有telnet的时候,它就是最好的替代。
5. Traceroute / tracert
Windows用tracert,Linux/macOS用traceroute,原理一样:看数据包从你电脑到目标地址走了哪几跳。遇到网站打不开,先trace一下,发现卡在第三跳,那大概率不是你这边的问题。
tracert www.baidu.com
6. Curl
开发者几乎天天见。不仅能下载文件,还能模拟各种HTTP请求。比如测试API接口是否正常:
curl -X POST -H "Content-Type: application/json" -d '{"name": "john"}' https://api.example.com/user
响应数据直接输出,调试起来比浏览器方便多了。
7. Tcpdump
Linux环境下抓包首选。虽然不如Wireshark有图形界面,但在远程服务器上跑命令更轻量。比如监听某网卡的DNS请求:
tcpdump -i eth0 port 53
适合在无图形界面的服务器上快速诊断问题。
8. DNSQuery / dig
查DNS解析问题,dig比nslookup更强大。比如查看某个域名的所有A记录和CNAME链:
dig example.com +trace
一步看清整个解析过程,排查DNS劫持或配置错误很管用。
这些工具各有侧重,搭配使用效果更好。家里路由器老掉线,拿PingPlotter跑一晚上就知道规律;公司服务器响应慢,用tcpdump和curl配合定位瓶颈。工具不在多,用熟几个关键的,处理问题就能快人一步。