背景:作为运维工程师,排障是必备技能;每次排错完,命令就忘了;梳理一下方法论。
Linux网络常用排障工具:

工具 用途
traceroute 端口可用性探测
mtr 网络测试工具

案例一:

    公司采用公有云加IDC机房构建的网络架构。云和机房之间的网络波动也会带来一些问题;当两端网络不
    稳定时,很有必要熟练一些命令来排查具体原因。
    1. 在公有云服务器做mtr 
    2. 在IDC机房服务器做mtr
    mtr -c 50 xx.xx.11.251 --report
    参数解释: --report:以报告模式显示输出,不加该参数,执行完,页面退出了;
    -c 50 每秒发送数据包数

第一列(Host):节点IP地址和域名。按 n 键可切换显示。
第二列(Loss%):节点丢包率。
第三列(Snt):每秒发送数据包数。默认值是10,可以通过“-c”参数指定。
第四列(Last):最近一次的探测延迟。
第五、六、七列(Avg、Best、Wrst):分别是探测延迟的平均值、最小值和最大值。
第八列(StDev):标准偏差。越大说明相应节点越不稳定。


案例二:
探测到IP 223.5.5.5 的22端口是否通,从截图看到,到13跳不通;查询13跳IP 是什么地方,反馈给供应商。

    traceroute -n -T -p 22 223.5.5.5

    -T 过TCP探测   
    -n:直接使用IP地址而非主机名称(禁用DNS反查)。
    -d:使用Socket层级的排错功能。
    -f:设置第一个检测数据包的存活数值TTL的大小。
    -F:设置不要分段标识。
    -g:设置来源路由网关,最多可设置8个。
    -i:主机有多个网卡时,使用指定的网卡发送数据包。
    -I:使用ICMP数据包替代UDP数据包进行探测。
    -m:设置检测数据包的最大存活数值TTL的大小。
    -p:设置传输协议的通信端口。
    -r:忽略普通的Routing Table,直接将数据包发送到目标主机上。
    -s:设置本地主机发送数据包的IP地址。
    -t:设置检测数据包的TOS数值。
    -v:详细显示指令的执行过程。
    -w:设置等待远端主机回包时间。
    -x:开启或关闭数据包的正确性检验。