EIGRP 是一个高效的路由协议,它的特点如下:
1. 通过发送和接收Hello 包来建立和维持邻居关系,并交换路由信息;
2. 采用组播(224.0.0.10)或单播进行路由更新;
3. EIGRP 的管理距离为90 或170;
4. 采用触发更新,减少带宽占用;
5. 支持可变长子网掩码 (VLSM),默认开启自动汇总功能;
6. 支持IP、IPX、AppleTalk 等多种网络层协议;
7. 对每一种网络协议,EIGRP 都维持独立的邻居表、拓扑表和路由表;
8. EIGRP 使用Diffusing Update 算法(DUAL)来实现快速收敛.并确保没有路由环路;
9. 存储整个网络拓扑结构的信息,以便快速适应网络变化;
10. 支持等价和非等价的负载均衡;
11. 使用可靠传输协议(RTP)保证路由信息传输的可靠性;
12. 无缝连接数据链路层协议和拓扑结构,EIGRP 不要求对OSI 参考模型的2 层协议做
特别的配置。
R1(f0/0) ----- (f0/1)R2
Eigrp不仅可以组播路由更新也可以单播路由更新,命令必须要在所有router上做
R1(config-router)#neighbor 12.1.1.2 f0/0 \\命令是在路由模式下敲入的
R2(config-router)#neighbor 12.1.1.1 f0/1
但如果有passive-interface命令,无论单播或者组播都不能建立起邻居
R2(config)#router eigrp 90
R2(config-router)#passive-interface default
R2(config-router)#no passive-interface f0/1
一般端口连接客户端时可以使用passive interface
R1(f0/0) ----- (f0/1)R2
Eigrp默认只支持md5认证,认证也必须是两端同时做
R1/2(config-if)#ip authentication mode eigrp 90 md5 \\接口下做 开启认证
R1/2(config-if)#ip authentication key-chain eigrp 90 fuyi/2 \\ 调用key-chain在eigrp认证上
R1(config)#key chain fuyi
R1(config-keychain)#key 0
R1(config-keychain-key)#key-string fuyiccna \\认证过程都是拿序列号最小的一个key去验证(而且两端都必须使用相同的key id [key 0]去验证 ),不会去用key1 或者key2去往下去验证 所以我们应该在r2配置如下
R2#sh run | se key chain
key chain fuyi2
key 0 \\
key-string fuyiccna
key 1
key-string fuyiccna
另外的 key 的配置下还可以接send �Clifetime 和 accept �Clifetime 去定义一个key的有效期
拓扑图: R1(e0/0)----(e0/1)R2(e0/0)----(e0/1)R3
R1#sh ip int b
Interface IP-Address OK? Method Status Protocol
Ethernet0/0 12.1.1.1 YES manual up up
Loopback0 192.168.0.1 YES manual up up
Loopback1 192.168.1.1 YES manual up up
Loopback2 192.168.2.1 YES manual up up
Loopback3 192.168.3.1 YES manual up up
全网跑 eigrp
情形一:
如果在r1 eigrp宣告时,net 192.168.0.0 0.0.255.255
那么看 r3上的路由表
R3#sh ip rout eigrp
D 192.168.0.0/24 [90/435200] via 23.1.1.2, 00:01:57, Ethernet0/1
12.0.0.0/24 is subnetted, 1 subnets
D 12.1.1.0 [90/307200] via 23.1.1.2, 00:02:45, Ethernet0/1
D 192.168.1.0/24 [90/435200] via 23.1.1.2, 00:01:57, Ethernet0/1
D 192.168.2.0/24 [90/435200] via 23.1.1.2, 00:01:57, Ethernet0/1
D 192.168.3.0/24 [90/435200] via 23.1.1.2, 00:01:57, Ethernet0/1
说明network是R1把直接路由在 192.168.0.0/16内的路由信息宣告出去了
情形二: 在情形1的条件下,在R1(或者R2上)加: eigrp 汇总路由
R1(config-if)#ip summary-address eigrp 90 192.168.0.0 255.255.252.0
R3#sh ip rout eigrp
12.0.0.0/24 is subnetted, 1 subnets
D 12.1.1.0 [90/307200] via 23.1.1.2, 00:08:54, Ethernet0/1
D 192.168.0.0/22 [90/435200] via 23.1.1.2, 00:00:18, Ethernet0/1
说明手工汇总抑制了明晰路由,产生了一条192.168.0.0/22的路由
同时产生D 192.168.0.0/22 is a summary, 00:02:49, Null0 防止路由环路
那么就说明在R1 敲network 192.168.0.0/16 已不生效
另: 这个问题应该是那个老兄上课时 要的问得问题的答案吧J
3.3.3.3是internet
把静态路由重分布进eigrp
R2(config)#ip route 0.0.0.0 0.0.0.0 s1/0
R2(config)#router ei 90
R2(config-router)#redistribute static
在r2写一条指向端口的静态路由 (指下一跳无效,以前的blog有解释过原因),在eigrp上用network 0.0.0.0宣告
<结果不展示,结果跟上一个方法一样>
使用这个命令的条件:
注意为了能看到试验效果,务必不要使用network 0.0.0.0 去宣告路由
R2 上配置如下
ip default-network 3.0.0.0
ip route 3.0.0.0 255.0.0.0 Serial1/0
R2#sh run | se router ei
router eigrp 90
network 3.0.0.0
network 12.0.0.0
no auto-summary
拓扑图
默认eigrp是开启等价负载均衡,因为 variance的值为1
EIGRP maximum metric variance 1
为了方便算metric值我们用命令修改该K值
R1/2/3/4(config-if)#router eig 90
R1/2/3/4 (config-router)#metric weight 0 0 0 1 0 0
默认metric计算公式:metric= [10^7 /bandwidth (min) + delay(sum)/10] * 256
在R1上看3.3.3.3的路由表
D 3.3.3.0 [90/665600] via 14.1.1.4, 00:00:58, FastEthernet0/1
[90/665600] via 12.1.1.2, 00:00:58, FastEthernet0/0
下面我们来计算下665600是怎么来的?
Show inter f0/0 s1/0 lo0
可以看到个个接口的延迟 那么我们把这些接口的延迟加起来
metric计算的方向为路由进接口的方向 (interface in 方向 )
6656600 = (20000 + 1000 + 5000 )/10 * 256
如何开启负载均衡?
首先负载均衡是发生在 s 与 fs 之间,所以开启它的条件为:
1 AD < (S)FD ===>也是成为fs的条件
2 FS FD < S FD * V 值
我们先把R2的延迟改高些,R4的延迟改低一些
R2(config)#int s1/0
R2(config-if)#delay 15 (实际上为150 微妙 ,10倍的倍数关系)
R4 (config-if)#delay 10
同时在R1上让v值不等于1
R1(config)#router ei 90
R1(config-router)#variance 2
在R1上看拓扑表
R1#sh ip eigrp topology
P 3.3.3.0/24, 1 successors, FD is 156160
via 14.1.1.4 (156160/130560), FastEthernet0/1
via 12.1.1.2 (157440/131840), FastEthernet0/0
条件1:131840 < 156160 符合成为fs的条件
条件2: FD(主)*variance >FD(备份)时
156160 * 2 > 157440
Show ip route可以查看结果
试验要求:用上图的试验拓扑图,全网跑 eigrp
在r1 开三个lookback 口 , 地址分别是 1.1.1.1 10.1.1.1 100.1.1.1
要求 R3 只可以看到100.1.1.1
答案 :使用distribute-list
在r3上使用access-list ,然后再eigrp协议模式中使用distribute-list
R3#sh ip access-lists
Standard IP access list 10
10 deny 1.1.1.0, wildcard bits 0.0.0.255 (4 matches)
20 deny 10.1.1.0, wildcard bits 0.0.0.255 (4 matches)
30 permit any (6 matches)
R3(config)#router ei 90
R3(config-router)#distribute-list 10 in
试验结果如下:
接上图试验,我们使从23.1.1.2过来的100.1.1.0的路由的metric的值瞬间增加改为600000
命令:
R3#sh ip access-lists
Standard IP access list 20
10 permit 100.1.1.0, wildcard bits 0.0.0.255 (4 matches)
R3(config)#router ei 90
R3(config-router)# offset-list 20 in 600000 Serial1/0
再次查看r3的路由表,发现metric 变为1265600 ( 665600+600000)
D 100.1.1.0 [90/1265600] via 23.1.1.2, 00:00:24, Serial1/0
Eigrp stub是避免sia的一个比较好的方式,因为它可以限制查询范围
拓扑图如下:
把 r1的lo 0口关闭,debug eigrp packages 可以看到, r1会向r2查询1.1.1.0的路由 query报文
*Mar 1 07:49:08.142: EIGRP: Sending QUERY on FastEthernet0/0
在r2 上敲入
R2(config)#router eig 90
R2(config-router)#eigrp stub
Mar 1 07:53:06.606: EIGRP: Received QUERY on FastEthernet0/0 nbr 12.1.1.2 《r1只会收到r2的query报文,r1 是不会向r2发送query报文的》
当然r3上也不会有1.1.1.0 这个网段的路由
然而当我们在r1的lo 0口下 no shut后 R3 永远学不到1.1.1.0的路由 原因如下 :
默认情况下 stub router只会传直链和汇总的路由
那么要透露出1.1.1.0解决办法是什么?
我们可以使用leak-map
Step1 : access-list
R2#sh ip access-lists
Standard IP access list 10
10 permit 1.1.1.0, wildcard bits 0.0.0.255
Step2 : route-map
R2(config)#route-map fuyi
R2(config-route-map)#match ip address fuyi
R2(config-route-map)#exit
Step3: 调用route-map
R2(config)#router eigrp 90
R2(config-router)#eigrp stub leak-map fuyi
试验结果
show ip eigrp neighbors 查看EIGRP 邻居表
show ip eigrp topology 查看EIGRP 拓扑结构数据库
show ip eigrp interface 查看运行EIGRP 路由协议的接口的状况
show ip eigrp traffic 查看EIGRP 发送和接收到的数据包的统计情况
debug eigrp neighbors 查看EIGRP 动态建立邻居关系的情况
debug eigrp packets 显示发送和接收的EIGRP 数据包
ip hello-interval eigrp 配置EIGRP 的HELLO 发送周期
ip hold-time eigrp 配置EIGRP 的HELLO hold 时间
router eigrp 启动EIGRP 路由进程
no auto-summary 关闭自动汇总
ip authentication mode eigrp 配置EIGRP 的认证模式
ip authentication key-chain eigrp 在接口上调用钥匙链
variance 配置非等价负载均衡
delay 配置接口下的延迟
bandwidth 配置接口下的带宽
offset-list [access list number] in [values] [interface] 调整metric值
ip summary-address eigrp 手工路由汇总
本文出自 “Erick WAY” 博客,谢绝转载!