![image](/uploads/allimg/120424/232935H15-0.png)
如图拓扑: 各个物理接口的IP 命令规则: xy.1.1.x 例: R2的f0/0为23.1.1.2 R2的F1/0为 12.1.1.2 LOOPBACK地址为图所示
R2上将静态路由重分布到EIGRP
eigrp跑在每台路由器上,没开启STUB之前。
R6上学习到的路由如图
可以看到学全了所有路由。
假设R3是县级路由器,R4是市级路由器,假如去往R6(另一个市)的链路出现问题了。那么根据EIGRP原理
R4会在自己的拓扑表里看看有没有次优的路径,如果有,就放入路由表中继续使用,如果没有,就会像邻居发送query查询包,R3作为邻居接到后,自己没有次优到达R6的路径也会给R2发,一级一级发过去,到最后也是R1回应R2, R2回应R3,一级一级回应上来。 ||你说连市级路由器都不晓得我们县级会晓得吗?有必要吗?何必呢?不说别的,万一县级路由器出故障了回应不了了,那我
R4等个3分钟就变stuck in active了,完全没必要。如何避免呢?所以我们要在县级路由器R3上打开eigrp stub。变成STUB域。
即我可以传送我区域里我指定类型的路由条目或者只接不发,但我不接受查询(R4不像STUB区域发送查询包)多省事。
在R3上
R3(config-router)#eigrp stub receive-only
指定R3只接受路由,不发送路由更新,这时我们看R4路由表
已经不见县里的路由条目。当然还eigrp stub 后面还可以指定 只发送直连的 汇总的 等等等等这里就略过。
这时我们把R6的回环接口DOWN掉,看看R4还会不会像R3发送查询包
debug eigrp packet query命令。开启此DEBUG
*Mar 1 03:14:51.335: EIGRP: Received QUERY on FastEthernet0/0 nbr 45.1.1.5
*Mar 1 03:14:51.339: AS 90, Flags 0x0, Seq 124/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
*Mar 1 03:14:51.351: EIGRP: Enqueueing QUERY on FastEthernet1/0 iidbQ un/rely 0/1 serno 102-102
*Mar 1 03:14:51.351: EIGRP: Enqueueing QUERY on FastEthernet0/0 iidbQ un/rely 0/1 serno 102-102
*Mar 1 03:14:51.355: EIGRP: Enqueueing QUERY on FastEthernet1/0 nbr 34.1.1.3 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 102-102
*Mar 1 03:14:51.359: EIGRP: Enqueueing QUERY on FastEthernet0/0 nbr 45.1.1.5 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 102-102
R4#
*Mar 1 03:14:51.359: EIGRP: Sending QUERY on FastEthernet0/0 /*只从F0/0发送了查询,F0/0连的是R5,没有从F1/0(连接R3)发送查询
*Mar 1 03:14:51.363: AS 90, Flags 0x0, Seq 154/0 idbQ 0/0 iidbQ un/rely 0/0 serno 102-102
*Mar 1 03:14:52.235: EIGRP: Received QUERY on FastEthernet1/0 nbr 34.1.1.3
*Mar 1 03:14:52.239: AS 90, Flags 0x0, Seq 174/0 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/0
效果达成。作者:skh163。