发布网友 发布时间:2022-04-22 07:49
共1个回答
热心网友 时间:2022-06-18 01:21
视乎你所ping的对象...
1.如果你所ping的IP地址为一路由器的IP地址,其中括号中为路由器的接口如下所示
PC----(E0)R1(E1)----(E0)R2(E1)----(E0)R3
而且,路由器上的默认TTL值没有被设置的话(默认为255),则会有:
PC ping R1上的任意口(无论是E0及E1)IP,因为PC与R1直连,所以返回的TTL=255,而如果ping R2的任意口(无论是E0及E1)IP,因为PC与R2间隔了R1这跳,所以TTL值传到R1中会比其减1,而PC收到该包后会得知TTL=254,即可得知,PC到R2间通过了1个路由器(R1);同理,如果PC ping R3,返回TTL=253,同此可判断经过两跳...
但是,如果路由器上的默认TTL值改变了,则很难判断了,因为你不知道所改变的值是多少...但如果你知道,则还是可以知道期间通过的跳数的...
2.如果你所ping的IP地址为拥有一公网IP的PC或服务器,如下图所示:
PC1----R1----R2----R3----PC2/Server
则所得的TTL为PC2/Server的默认TTL减去期间通过的路由器的跳数,比如PC2/Server的默认TTL为128,则PC1 ping过去而返回的TTL=128-3=125,而PC2/Server的默认TTL视乎其操作系统的不同或者其设置的不同而会有所不同,这个就较难判断了...
3.如果你所ping的IP地址为经过NAT之后的PC的IP,如下图所示: