haierccc 发表于 2015-11-24 22:03:05

非常诡异的Cisco Packet Trace ICMP包,请问谁能解释一下呢?

本帖最后由 haierccc 于 2015-11-24 22:20 编辑

我这个人喜欢追根究底。
比如,我们都知道,2个路由器之间的直连接口一定要是同网段的,比如下图:

但我在想另一件事情:如果这2个接口,不在同一个网段会怎样呢?
答案相比您也知道:不通
可是这个“不通”的底层运作是怎样的呢?于是我用PT强大的单步跟踪功能,一步一步的跟踪,希望得到答案
在正常的情况下是这样的:
1、router0给route2发出ICMP请求
2、但在这之前,因为不知道router2的MAC地址,所以该ICMP包被丢弃
3、router0发送arp给router2,询问该端口的MAC地址
4、router2回应该ARP包
5、在知道了对方的MAC之后,重新生成ICMP到达router2并返回,完成一个ping的循环

以上是正常情况,可是如果我把router2的对应端口改为50.0.0.1 255.0.0.0,会是怎样的情况呢?
可能是因为路由器发现,目标IP不在任何的直连网段上,所以该ICMP包根本没有生成

再玩第三个花样:router2的IP改为50.0.0.1 255.0.0.0,但在routeer0上ping10.0.0.3
这时,奇怪的包出现了,过程是这样的:
因为在这之前已经正常ping过了,所以router0已经有了router2对应端口的MAC地址
于是此ICMP包到达了router2
但因为r2的该端口的IP地址已经改为了50.0.0.1,所以该包被丢弃,
这个奇怪的PDU如下:

大家可以看到,居然有2个IP和2个ICMP,这是什么意思呢?
还请高人解答了!

jackyduys 发表于 2015-11-24 22:53:21

{:6_276:}

michael007 发表于 2015-11-25 00:32:32

看了楼主的问题,来说说我的理解。首先路由器之间正确的做法应是使用串口线,然后配时钟速率。在以太网中太用直通或双绞线连接设备。那么楼主的问题是直连接口网段不同会怎样,很明显,肯定不通,因为路由表中没有对方的路由,肯定不通。那么正常情况下直连接口都是在同网段的。
其实可以用PC来举例,比如在局域网中,PC ping其他设备,同网段ARP广播,然后交换机回应,然后再封装目的mac就通了。不同网段就发给网关,然后再解析到对应目的MAC。
像这个PT抓包这个功能,模拟效果倒是不错,但是PT这个软件本身功能有限,也可能是BUG,所以楼主就不要纠结这么多了,如果对报文分析实在感兴趣,就用wireshark搭配GNS3来抓包看好了。

michael007 发表于 2015-11-25 00:36:15

第一你这样的假设根本是不符合常理的,路由器之间要用串口线,而不是交叉线。第二直连设备之间都是同网段的。第三你还是别纠结了,可能是PT的一个BUG。实在喜欢专研就用wireshark搭配GNS3抓包研究吧。

michael007 发表于 2015-11-25 00:36:24

第一你这样的假设根本是不符合常理的,路由器之间要用串口线,而不是交叉线。第二直连设备之间都是同网段的。第三你还是别纠结了,可能是PT的一个BUG。实在喜欢专研就用wireshark搭配GNS3抓包研究吧。

michael007 发表于 2015-11-25 00:36:32

第一你这样的假设根本是不符合常理的,路由器之间要用串口线,而不是交叉线。第二直连设备之间都是同网段的。第三你还是别纠结了,可能是PT的一个BUG。实在喜欢专研就用wireshark搭配GNS3抓包研究吧。

Juispan 发表于 2015-11-25 08:05:02

{:6_276:}

Rockyw 发表于 2015-11-25 10:51:14

这个用模拟器做出来的结果没有参考价值,要用真实设备做才能验证

haierccc 发表于 2015-11-25 17:14:46

本帖最后由 haierccc 于 2015-11-25 17:20 编辑

michael007 发表于 2015-11-25 00:32
看了楼主的问题,来说说我的理解。首先路由器之间正确的做法应是使用串口线,然后配时钟速率。在以太网中太 ...

你好!
我在学习CCNA的时候,的确也是说在路由器之间是用串口线,然后配置时钟时钟频率64000,也就是64K的速度
是否是我学习的课程的版本太老了,否则为何放着1000M的以太网线不用,一定要用64K的串口线呢?
而且,就算是串口线的速度有1000M,为何一定要用特殊的串口线,而不是大规模使用的,成本很低的以太网线呢?
我参与过大规模的网络施工,但是2层网,没有涉及到路由转发,为了开阔我的视野才学习的CCNA,所以我并不知道串口线在路由器上的必要性,我猜想,路由器之间的链路可以很长(中间用光纤),那么就是在路由器上直接有光口,抑或是用“光发”转换。
路由器那么多的千兆网口,不知道为何要用慢速的串口线。
希望解惑,谢谢!

haierccc 发表于 2015-11-25 17:18:52

michael007 发表于 2015-11-25 00:36
第一你这样的假设根本是不符合常理的,路由器之间要用串口线,而不是交叉线。第二直连设备之间都是同网段的 ...

你好,我问了一个问题,希望得到解惑,谢谢
页: [1]
查看完整版本: 非常诡异的Cisco Packet Trace ICMP包,请问谁能解释一下呢?