有趣的小场景——PPP直连环路(厂商:huawei)版权所属:Vincent-yang未经允许禁止用于商用,仅供参考。

 1. 环路概述:
路由环路是指因配置不当或路由协议收敛时出错,导致数据包在两台或多台路由器里被来回转发,最后TTL耗尽,不能到达目的地的一种故障。
 2. 实验拓扑:
今天我们先通过一个小实验来演示下简单的环路现象,实验拓扑如下(路由器之间的链路采用PPP封装):

 

  3. 实验配置:
R1的配置
interface Serial1/0/0
 link-protocol ppp
 ip address 12.1.1.1 255.255.255.0
R2的配置
interface Serial1/0/0
 link-protocol ppp
 ip address 12.1.1.2 255.255.255.0
 4. 验证环路存在:
我们在R1的tracert一下12.1.1.3到12.1.1.254之间的任何一个地址,这里以12.1.1.3为例,发现数据包在R1和R2之间打环
<R1>tracert 12.1.1.3
 traceroute to  12.1.1.3(12.1.1.3), max hops: 30 ,packet length: 40,press CTRL_C to break 
 1 12.1.1.2 60 ms  30 ms  20 ms 
 2 12.1.1.1 20 ms  10 ms  10 ms 
 3 12.1.1.2 30 ms  20 ms  30 ms 
 4 12.1.1.1 20 ms  20 ms  * 
 5 12.1.1.2 70 ms  30 ms  30 ms 
 6 12.1.1.1 30 ms  40 ms  50 ms 
 7 12.1.1.2 60 ms  50 ms  60 ms 
 8 12.1.1.1 70 ms  40 ms  60 ms 
 9 12.1.1.2 90 ms  70 ms  70 ms 
10 12.1.1.1 70 ms  70 ms  70 ms 
11 12.1.1.2 100 ms  90 ms  100 ms 
12 12.1.1.1 90 ms  90 ms  90 ms 
13 12.1.1.2 120 ms  90 ms  110 ms 
14 12.1.1.1 110 ms  100 ms  110 ms 
15 12.1.1.2 130 ms  110 ms  130 ms 
16 12.1.1.1 120 ms  120 ms  120 ms 
17 12.1.1.2 140 ms  140 ms  130 ms 
18 12.1.1.1 140 ms  130 ms  140 ms 
19 12.1.1.2 150 ms  160 ms  140 ms 
20 12.1.1.1 150 ms  150 ms  140 ms 
21 12.1.1.2 170 ms  170 ms  180 ms 
22 12.1.1.1 160 ms  170 ms  180 ms 
23 12.1.1.2 180 ms  180 ms  180 ms 
24 12.1.1.1 190 ms  170 ms  190 ms 
25 12.1.1.2 190 ms  190 ms  200 ms 
26 12.1.1.1 200 ms  200 ms  200 ms 
27 12.1.1.2 210 ms  210 ms  220 ms 
28 12.1.1.1 220 ms  210 ms  220 ms 
29 12.1.1.2 210 ms  240 ms  230 ms 
30 12.1.1.1 230 ms  *  220 ms 
<R1>
在R1上对12。1.1.3发一个ping包,并使用ENSP抓包也可以看到TTL耗尽的现象
<R1>ping -c 1 12.1.1.3
  PING 12.1.1.3: 56  data bytes, press CTRL_C to break
    Request time out
  --- 12.1.1.3 ping statistics ---
    1 packet(s) transmitted
    0 packet(s) received
    100.00% packet loss

 

  5. 原因分析
(1)PPP协议的特殊性:PPP没有ARP查找的机制,其发包的原理是无论任何包,都要发向PPP对方的节点(有路由的前提下)。
(2)分析路由表
<R1>dis ip routing-table      
Destination/Mask    Proto   Pre  Cost      Flags    NextHop         Interface
       12.1.1.0/24       Direct     0    0           D          12.1.1.1        Serial1/0/0
       12.1.1.1/32       Direct     0    0           D         127.0.0.1       Serial1/0/0
       12.1.1.2/32       Direct     0    0           D          12.1.1.2        Serial1/0/0
     12.1.1.255/32     Direct     0    0           D         127.0.0.1       Serial1/0/0
 
<R2>dis ip routing-table 
Destination/Mask    Proto   Pre  Cost      Flags    NextHop         Interface
       12.1.1.0/24      Direct      0    0           D         12.1.1.2        Serial1/0/0
       12.1.1.1/32      Direct      0    0           D         12.1.1.1        Serial1/0/0
       12.1.1.2/32      Direct      0    0           D        127.0.0.1       Serial1/0/0
     12.1.1.255/32    Direct      0    0           D        127.0.0.1       Serial1/0/0
当在R1或R2上发目的地12.1.1.3的数据包时,路由器采用最长匹配原则,会命中红线标记的条目,把包发给对方,所以数据包就环路了。
 6. 规避方法:
在PPP链路上配置IP时,请务必使用30位掩码,30位掩码只有两个可用地址,这样就不会生成冗余目的地的直连路由,就不会再产生环路,这也是在PPP等广域网链路上配置30位掩码地址的原因之一。

 

 版权所属:Vincent-yang未经允许禁止用于商用,仅供参考。

 内容如果存在错误,请大家斧正。

 联系邮箱:a1647229887@icloud.com

 主要用于大家共同学习交流,大家可以多多评论,一起讨论技术。

posted @ 2019-12-27 00:17  Vincent-yang  阅读(386)  评论(0编辑  收藏  举报