转自:http://liushuo890.blog.51cto.com/5167996/1070523

EIGRP的Metric计算以及负载均衡_ip

实验拓扑如上图,首先我们用 eigrp 协议做通以上拓扑

R1(config)#int lo 0

R1(config-if)#ip add 1.1.1.1 255.255.255.0

R1(config-if)#no shut
R1(config-if)#exit
R1(config)#
R1(config)#int f1/0
R1(config-if)#ip add 12.1.1.1 255.255.255.0
R1(config-if)#no shut
R1(config-if)#exit
R1(config)#int f1/1
R1(config-if)#ip add 13.1.1.1 255.255.255.0
R1(config-if)#no shut


R2(config)#int f1/0
R2(config-if)#ip add 12.1.1.2 255.255.255.0
R2(config-if)#no shut
R2(config-if)#exit
R2(config)#int f1/1
R2(config-if)#ip add 24.1.1.1 255.255.255.0
R2(config-if)#no shut


R3(config)#int f1/0
R3(config-if)#ip add 13.1.1.2 255.255.255.0
R3(config-if)#no shut
R3(config-if)#exit
R3(config)#
R3(config)#int f1/1
R3(config-if)#ip add 34.1.1.1 255.255.255.0
R3(config-if)#no shut
R3(config-if)#exit


R4(config)#int lo 0
R4(config-if)#ip add 4.4.4.4 255.255.255.0
R4(config-if)#no shut
R4(config-if)#exit
R4(config)#
R4(config)# int f1/0
R4(config-if)#ip add 24.1.1.2 255.255.255.0
R4(config-if)#no shut
R4(config-if)#exit
R4(config)#
R4(config)#int f1/1
R4(config-if)#ip add 34.1.1.2 255.255.255.0
R4(config-if)#no shut
R4(config-if)#exit


IP地址配置成功,检测直连



EIGRP的Metric计算以及负载均衡_ip_02


EIGRP的Metric计算以及负载均衡_ip_03


EIGRP的Metric计算以及负载均衡_f1_04


使用EIGRP协议实现全网互联


EIGRP的Metric计算以及负载均衡_ip_05


R2(config)#router eigrp 90
R2(config-router)#net 12.1.1.0
R2(config-router)#net
*Nov 25 21:43:32.791: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 90: Neighbor 12.1.1.1 (FastEthernet1/0) is up: new adjacency
R2(config-router)#net 24.1.1.0
R2(config-router)#no au
R2(config-router)#no auto-summary
R2(config-router)#
EIGRP的Metric计算以及负载均衡_f1_06EIGRP的Metric计算以及负载均衡_ip_07

宣告路由协议


EIGRP的Metric计算以及负载均衡_f1_08

成功学到全网路由条目 并且通信成功

EIGRP的测试

首先我们查看R1的 EIGRP 邻居


EIGRP的Metric计算以及负载均衡_f1_09

R1 有两个EIGRP的邻居

EIGRP使用多种参数计算去往目标网络的 metric 值, 包括 带宽 延迟 负载 可信度 MTU 这五个参数分别使用K值来标识 ,如果两台EIGRP路由器之间的K值不同,则代表双方计算 metric 的方式不同,所以K值不同的两台路由器之间无法形成EIGRP的邻居关系

EIGRP的metric计算方式


EIGRP的Metric计算以及负载均衡_f1_10


在计算METRIC值时,只计算接口出方向的带宽,也就是在一条链路上,只有出接口的带宽会被计算


我们查看一下 EIGRP路由器R1的5个K值


EIGRP的Metric计算以及负载均衡_ip_11

可见 5 个K值分别为 1 0 1 0 0


验证K值不同,EIGRP的邻居关系不能建立,那么我们修改路由器R2的K值


EIGRP的Metric计算以及负载均衡_ip_12

当修改了R2的K值之后,报错提示 K值不匹配 无法建立邻居关系


尝试计算R1到目标 4.4.4.4 的 metric值

首先我们需要知道从R1到4.4.4.4这条链路的 最小带宽 以及 延迟之和

最小带宽=出接口的最小带宽

延迟之和=所有链路出接口的延迟之和


EIGRP的Metric计算以及负载均衡_ip_13


EIGRP的Metric计算以及负载均衡_ip_14

可见以太网链路的 带宽为100000 为整条链路最小带宽

从R1至4.4.4.4 链路的延迟之和为

R1 f1/0 + R2 f1/1 + R4 lo0 = 100+100+5000=5200

将以上值入 metric 计算公式


EIGRP的Metric计算以及负载均衡_ip_15

查看路由表看 得出的值与路由表中的值是否相同


EIGRP的Metric计算以及负载均衡_ip_16

与路由表中数值相同,此时我们就成功的计算了METRIC


路由器R2到 4.4.4.4 的Metric 用同样的方式计算

bandwith=10000

delay= 100+5000=5100

最终 metric 为


EIGRP的Metric计算以及负载均衡_f1_17


实验:

通过修改R2的接口带宽,来影响metric的计算,最终影响路由表

R2(config)#int f1/1
R2(config-if)#bandwidth 50000

此时我们看到从R1-4.4.4.4只有一条路径  R1-R3-R4


EIGRP的Metric计算以及负载均衡_ip_18

去往4.4.4.4的路由下一跳为 13.1.1.2 也就是R3


测试EIGRP协议的非等价负载均衡


EIGRP的Metric计算以及负载均衡_ip_19

R1上去往 4.4.4.4 的FD值为158720 AD值为156160

我们在EIGRP的拓扑表中并没看到 R1-R2-R4的路径,拓扑表中存放的是 successor 和 fessible successor ,如果一个路径没有成为 fessible successor 那么原因是,该路径的AD值大于successor 的FD值,那我们现在就计算 R2 到 4.4.4.4 的 metric

bandwith=50000

delay=100+5000  套入公式得 metric=181760 大于 successor 的 FD值,所以该路径不会被放入拓扑表中