工具1:Traceroute
用法
Traceroute 域名/IP
原理
基于ICMP协议(发送的是UDP,ttl值为零时返回ICMP)
IP头部TTL值递增,根据返回地址判断路径
弊端
路径设备禁用ICMP数据宝时探测无效
工具2:tcptraceroute
用法
traceroute -T ip 用tcp探测
tcptraceroute IP shell脚本,用tcp探测,较上面的全面
原理
基于TCP协议
发送TTL值递增的SYN包
弊端
不见里完整的TCP握手,会被某些NAT设备丢弃,导致探测结果不准确
工具3:0trace
用法
- 0trace.sh eth0 目标IP 端口 先指定在本机的那个网卡上做探测,然后指定目标IP和端口
- 需要访问指定的目标IP后才能进行探测,此命令需要多次使用,每次结果可能会有不同
原理
基于正常会话的TCP协议,发送ACK包
IP头部TTL值递增
优势
可能探测到内网地址段
绕过某些防火墙限制
路径枚举的工具在以下情况无效
- 目标防火墙丢弃所有出战ICMP数据包
- 目标防火墙作为TTL值重写或全包重写
- 路径中存在应用层代理/负载均衡设备
- 防火墙后没有明确的三层设备
- IDS/IPS容易检测到TCP特征