- 积分
- 369
- 鸿鹄币
- 个
- 好评度
- 点
- 精华
- 最后登录
- 1970-1-1
- 阅读权限
- 30
- 听众
- 收听
初级工程师
  
|
发表于 2014-6-6 13:51:52
|
显示全部楼层
本帖最后由 fule2004 于 2014-6-6 14:02 编辑
根据上面的各位的回复,我整理了下:
1.R1ping 3.3.3.3 R1查看自己的路由表,发现自己有关于3.3.3.3的路由
3.0.0.0/24 is subnetted, 1 subnets
S 3.3.3.0 [1/0] via 172.1.1.2
172.1.0.0/24 is subnetted, 1 subnets
C 172.1.1.0 is directly connected, Vlan1
下一跳的地址为 172.1.1.2
2.然后转到二层查找关于172.1.1.2 ARP表项
R1#show ip arp
Protocol Address Age (min) Hardware Addr Type Interface
Internet 172.1.1.4 74 c405.1568.0000 ARPA Vlan1
Internet 172.1.1.1 - c400.1568.0000 ARPA Vlan1
Internet 172.1.1.2 73 c401.1568.0000 ARPA Vlan1
Internet 172.1.1.3 64 c404.1568.0000 ARPA Vlan1
发现 172.1.1.2 的MAC地址为 c401.1568.0000
接着R1会查找自己的MAC-ADDRESS-TABLE 查找c401.1568.0000 是从哪个端口学习到的
R1#SHOW MAC-address-table
Destination Address Address Type VLAN Destination Port
------------------- ------------ ---- --------------------
c400.1568.0000 Self 1 Vlan1
c405.1568.0000 Dynamic 1 FastEthernet1/0
发现自己的MAC-address-table 没有关于c401.1568.0000的条目时,R1的二层处理模块会将ICMP报文从所有端口上泛洪出去!
这样R3就可以收到了ping 3.3.3.3的包,并回复给R1.
我通过下面的拓扑验证了泛洪机制:
当R2 f0/0 shutdown后,在R1上ping 3.3.3.3,在R1<-------->R4的链路上可以抓ICMP的包
总结:
R1在R3 f0/0 shutdown后还可以ping通3.3.3.3的原因有两个
1、在R1上存在关于到3.3.3.3的下一跳接口172.1.1.2的ARP条目(如果这一条目不存在的话,R1会发出ARP请求包,询问172.1.1.2的MAC地址);
2、R1的二层将ICMP进行泛洪了,把ICMP包在每个端口都发送了一遍,R3才可以收到ping 3.3.3.3的包并回复;
|
29#
2014-6-6 13:51:52
回复(0)
收起回复
|