tarceroute ping 开放(icmp|udp) tarceroute原理 ICMP应用之ping

ping是一个用来查询网络通不通的一个工具,是系统自带的,运行于内核,调用ICMP协议。

ping的工作原理:ping通过调用echo来发送请求,通过是否收到echo-reply来查询网络层的连通性。ping的结果会给出传送的时间和TTL的数据,还可以查看主机到目的主机的路由。这是因为ICMP的ping请求数据报在每经过一个路由器的时候,路由器就会把自己的IP地址放到该数据包中,而目的主机则会把这个IP列表复制到ICMP数据包中发回给主机。但是,IP头能记录的路由列表非常有限,如果要观看完整的路由信息,就要用到traceroute工具了。

ICMP应用之traceroute

traceroute是用来侦测主机到目的主机所经路由情况的工具,可以获取到所经路由器的IP地址。

traceroute的工作原理:它收到目的主机的IP后,首先给目的主机发送一个TTL=1的UDP数据包,而经过的第一个路由器收到这个数据包以后,就自动将TTL减1.而TTL变为0以后,路由器就把这个包给抛弃了,并同时产生一个主机不可达的ICMP数据包给主机。主机收到这个数据包以后就发送一个TTL=2的数据包给主机,然后刺激第二个路由器给主机发送ICMP数据包,如此反复直到到达目的主机。这样,traceroute就拿到了所有的路由器IP,从而避免了IP头只能记录有限的路由IP 的问题。

操作:173.255.xx.xx 47.254.xx.xx 需要开放udp和icmp协议 阿里云的北美服务器linode的北美服务器

iptables -A INPUT -p icmp -j ACCEPT iptables -A OUTPUT -p icmp -j ACCEPT iptables -A INPUT -p udp -j ACCEPT iptables -A OUTPUT -p udp -j ACCEPT 测试完之后取消traceroute和ping

阿里云需要开放安全组icmp 0.0.0.0/0 udp 0.0.0.0/0