skip to content
Liu Yang's Blog

服务器网络诊断工具箱

/ 4 min read

Table of Contents

网络问题排查往往需要多个工具配合,这里整理常用命令、脚本和网址。

命令行工具

工具用途
iperf3双端带宽测试
tcpingTCP 端口连通性测试(不受 ICMP 屏蔽影响)
ping基础连通性与往返延迟
nexttrace路由追踪,展示每跳节点的 ASN、运营商和地理信息
nmap端口扫描、主机发现、服务探测
speedtest-cliSpeedtest.net 带宽测速
gost多协议隧道与穿透工具,常用于调试转发链路
ufw防火墙规则管理
tailscaleSD-WAN,加密的点对点虚拟网络

一键脚本

Terminal window
# IP 质量与流媒体解锁检测
bash <(curl -sL IP.Check.Place)
bash <(curl -L -s https://raw.githubusercontent.com/1-stream/RegionRestrictionCheck/main/check.sh)
# 网络质量综合检测(延迟、丢包、抖动)
bash <(curl -Ls Net.Check.Place)
# 服务器综合性能检测
bash <(curl -sL https://run.NodeQuality.com)

实用网址

用途网址
国际 BGP 路由分析bgp.tool
服务器全球连通性测试ping.pe
服务器国内连通性测试itdog.cn
Cloudflare 测速speed.cloudflare.com
Speedtestspeedtest.cn / fast.com
UDP 丢包测试packetlosstest.com

测试出站 IP

Terminal window
curl -s www.cloudflare.com/cdn-cgi/trace -4 # IPv4 出站
curl -s www.cloudflare.com/cdn-cgi/trace -6 # IPv6 出站

通过证书反查域名

crt.sh 可以查某个域名的历史 SSL 证书,也可以反查子域名,是信息收集的常用入口。

https://crt.sh/?q=example.com

nmap 常用命令参考

主机发现

Terminal window
# 扫描网段内存活主机
nmap -sn -n 192.168.1.0/24
# 强制使用 ICMP ping
nmap -sn -PE 192.168.1.0/24
# 快速发现 + 跳过 DNS + 并发加速
nmap -sn -n --host-timeout 500ms --max-retries 0 --min-parallelism 100 192.168.1.0/24

端口扫描

Terminal window
# 默认 TCP SYN 扫描(需 root 权限)
nmap 192.168.1.1
# 扫描指定端口
nmap -p 22,80,443 192.168.1.1
# 全端口扫描(65535 个,较慢)
nmap -p- 192.168.1.1
# UDP 端口扫描(DNS、SNMP 等服务)
nmap -sU 192.168.1.1
# 快速扫描常用 100 个端口
nmap -F -T4 192.168.1.1

服务与系统探测

Terminal window
# 服务版本识别
nmap -sV 192.168.1.1
# 全面扫描(端口 + 服务 + 系统 + traceroute)
nmap -A -T4 192.168.1.1

-T0-T5 控制速度,越大越快、越容易被防火墙检测到。日常用 -T4,敏感环境用 -T2

保存结果

Terminal window
nmap -oN output.txt 192.168.1.1 # 普通文本
nmap -oX output.xml 192.168.1.1 # XML,方便工具解析

nexttrace 路由追踪

相比 traceroute,nexttrace 会附带每跳的 ASN、运营商、地理位置,判断线路绕路和运营商移交点非常直观。

Terminal window
nexttrace 1.1.1.1

常见用途:判断国际出口走的是哪条骨干网(CN2、9929、4837、CMIN2 等),以及在哪里移交给国际运营商。


iperf3 带宽测试

需要两端都运行 iperf3,一端作服务端,一端作客户端。

Terminal window
# 服务端(监听 5201 端口)
iperf3 -s
# 客户端(测 TCP 带宽)
iperf3 -c <server-ip>
# 测 UDP 带宽(-u)并指定目标带宽(-b)
iperf3 -c <server-ip> -u -b 100M
# 反向测试(服务端向客户端发包,测下行)
iperf3 -c <server-ip> -R