目录
- 实验要求
- 子网划分
- ip以及各个环回的配置
- ospf配置及接口网络类型更改
- bgp的配置
- 路由反射器小知识
- 联邦的小知识
- bgp宣告
实验要求
如图
实验要求:
1,R2-7每台路由器都存在一个环回接口用于建立邻居,同时存在一个环回代表连接用户的接口;最终这些连接用户的接口网络需要可以和
R1、R8的环回通讯
2, AS2网段地址 172.16.0.0/16 减少路由条目数量
3,R6和R3作为反射器
说明:R2,3,4作为一个大S里面的小联邦,R5,6,7也是这样。上面一个联邦as号为64512,下面一个为64513.他们的大号为as2
子网划分
将 172.16.0.0/16 划分成 24位掩码的Ip分配给各个网段和各个用户环回即可
划分成30位掩码的地址给用于建邻的地址即可
如图:
R2两个环回: 172.16.0.2/32, 172.16.2.2/24
R3两个环回: 172.16.0.3/32, 172.16.3.3/24
R4两个环回: 172.16.0.4/32, 172.16.4.4/24
R5两个环回: 172.16.0.5/32, 172.16.5.5/24
R6两个环回: 172.16.0.6/32, 172.16.6.6/24
R7两个环回: 172.16.0.7/32, 172.16.7.7/24
R1和R8环回随便配
ip以及各个环回的配置
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]ip ad 12.1.1.1 24
[R1-GigabitEthernet0/0/1]q
[R1]int lo0
[R1-LoopBack0]ip ad 1.1.1.1 24
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip ad 12.1.1.2 24
[R2-GigabitEthernet0/0/0]int g0/0/1
[R2-GigabitEthernet0/0/1]ip ad 172.16.23.1 24
[R2-GigabitEthernet0/0/1]int g0/0/2
[R2-GigabitEthernet0/0/2]ip ad 172.16.25.1 24
[R2-GigabitEthernet0/0/2]q
[R2]int lo0
[R2-LoopBack0]ip ad 172.16.0.2 32
[R2-LoopBack0]int lo1
[R2-LoopBack1]ip ad 172.16.2.2 24
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]ip ad 172.16.23.2 24
[R3-GigabitEthernet0/0/0]int g0/0/1
[R3-GigabitEthernet0/0/1]ip ad 172.16.34.1 24
[R3-GigabitEthernet0/0/1]int lo0
[R3-LoopBack0]ip ad 172.16.0.3 32
[R3-LoopBack0]int lo1
[R3-LoopBack1]ip ad 172.16.3.3 24
[R4]int g0/0/0
[R4-GigabitEthernet0/0/0]ip ad 172.16.34.2 24
[R4-GigabitEthernet0/0/0]int g0/0/1
[R4-GigabitEthernet0/0/1]ip ad 172.16.47.1 24
[R4-GigabitEthernet0/0/1]int lo0
[R4-LoopBack0]ip ad 172.16.0.4 32
[R4-LoopBack0]int lo1
[R4-LoopBack1]ip ad 172.16.4.4 24
[R5]int g0/0/0
[R5-GigabitEthernet0/0/0]ip ad 172.16.25.2 24
[R5-GigabitEthernet0/0/0]int g0/0/1
[R5-GigabitEthernet0/0/1]ip ad 172.16.56.1 24
[R5-GigabitEthernet0/0/1]int lo0
[R5-LoopBack0]ip ad 172.16.0.5 32
[R5-LoopBack0]int lo1
[R5-LoopBack1]ip ad 172.16.5.5 24
[R6]int g0/0/1
[R6-GigabitEthernet0/0/1]ip ad 172.16.56.2 24
[R6-GigabitEthernet0/0/1]int g0/0/2
[R6-GigabitEthernet0/0/2]ip ad 172.16.67.1 24
[R6-GigabitEthernet0/0/2]int lo0
[R6-LoopBack0]ip ad 172.16.0.6 32
[R6-LoopBack0]int lo1
[R6-LoopBack1]ip ad 172.16.6.6 24
[R7]int g0/0/0
[R7-GigabitEthernet0/0/0]ip ad 172.16.47.2 24
[R7-GigabitEthernet0/0/0]int g0/0/1
[R7-GigabitEthernet0/0/1]ip ad 78.1.1.1 24
[R7-GigabitEthernet0/0/1]int g0/0/2
[R7-GigabitEthernet0/0/2]ip ad 172.16.67.2 24
[R7-GigabitEthernet0/0/2]int lo0
[R7-LoopBack0]ip ad 172.16.0.7 32
[R7-LoopBack0]int lo1
[R7-LoopBack1]ip ad 172.16.7.7 24
[R8]int g0/0/0
[R8-GigabitEthernet0/0/0]ip ad 78.1.1.2 24
[R8-GigabitEthernet0/0/0]int lo0
[R8-LoopBack0]ip ad 8.8.8.8 24
接下来让as2通
ospf配置及接口网络类型更改
R2,3,4,5,6,7 运行ospf让as2相通
[R2]ospf 1 route-id 2.2.2.2
[R2-ospf-1]area 0
[R2-ospf-1-area-0.0.0.0]network 172.16.0.2 0.0.0.0
[R2-ospf-1-area-0.0.0.0]network 172.16.2.0 0.0.0.255
[R2-ospf-1-area-0.0.0.0] network 172.16.23.1 0.0.0.0
[R2-ospf-1-area-0.0.0.0] network 172.16.25.1 0.0.0.0
[R2-ospf-1-area-0.0.0.0]int g0/0/0
[R2-GigabitEthernet0/0/0]ospf network-type broadcast
[R2-GigabitEthernet0/0/0]int g0/0/2
[R2-GigabitEthernet0/0/2]ospf network-type broadcast
[R2-GigabitEthernet0/0/2]int g0/0/1
[R2-GigabitEthernet0/0/1]ospf network-type broadcast
[R3]ospf 1 router-id 3.3.3.3
[R3-ospf-1]area 0
[R3-ospf-1-area-0.0.0.0]network 172.16.0.3 0.0.0.0
[R3-ospf-1-area-0.0.0.0] network 172.16.3.0 0.0.0.255
[R3-ospf-1-area-0.0.0.0] network 172.16.23.2 0.0.0.0
[R3-ospf-1-area-0.0.0.0] network 172.16.34.1 0.0.0.0
[R3-ospf-1-area-0.0.0.0]int g 0/0/0
[R3-GigabitEthernet0/0/0]ospf network-type broadcast
[R3-GigabitEthernet0/0/0]int g0/0/1
[R3-GigabitEthernet0/0/1]ospf network-type broadcast
[R4]ospf 1 router-id 4.4.4.4
[R4-ospf-1]area 0
[R4-ospf-1-area-0.0.0.0]network 172.16.0.4 0.0.0.0
[R4-ospf-1-area-0.0.0.0] network 172.16.4.0 0.0.0.255
[R4-ospf-1-area-0.0.0.0] network 172.16.34.2 0.0.0.0
[R4-ospf-1-area-0.0.0.0] network 172.16.47.1 0.0.0.0
[R4-ospf-1-area-0.0.0.0]int g0/0/0
[R4-GigabitEthernet0/0/0]ospf network-type broadcast
[R4-GigabitEthernet0/0/0]int g0/0/1
[R4-GigabitEthernet0/0/1]ospf network-type b
[R5]ospf 1 router-id 5.5.5.5
[R5-ospf-1]area 0
[R5-ospf-1-area-0.0.0.0] network 172.16.0.5 0.0.0.0
[R5-ospf-1-area-0.0.0.0] network 172.16.5.0 0.0.0.255
[R5-ospf-1-area-0.0.0.0] network 172.16.25.2 0.0.0.0
[R5-ospf-1-area-0.0.0.0] network 172.16.56.1 0.0.0.0
[R5-ospf-1-area-0.0.0.0]int g0/0/0
[R5-GigabitEthernet0/0/0]ospf network-type broadcast
[R5-GigabitEthernet0/0/0]int g0/0/1
[R5-GigabitEthernet0/0/1]ospf network-type b
[R6]ospf 1 router-id 6.6.6.6
[R6-ospf-1]area 0
[R6-ospf-1-area-0.0.0.0] network 172.16.6.0 0.0.0.255
[R6-ospf-1-area-0.0.0.0] network 172.16.56.2 0.0.0.0
[R6-ospf-1-area-0.0.0.0] network 172.16.67.1 0.0.0.0
[R6-GigabitEthernet0/0/0]int g0/0/1
[R6-GigabitEthernet0/0/1]ospf network-type b
[R6-GigabitEthernet0/0/1]int g0/0/2
[R6-GigabitEthernet0/0/2]ospf network-type b
[R7]ospf 1 router-id 7.7.7.7
[R7-ospf-1-area-0.0.0.0] network 172.16.0.7 0.0.0.0
[R7-ospf-1-area-0.0.0.0] network 172.16.7.0 0.0.0.255
[R7-ospf-1-area-0.0.0.0] network 172.16.47.2 0.0.0.0
[R7-ospf-1-area-0.0.0.0] network 172.16.67.2 0.0.0.0
[R7-ospf-1-area-0.0.0.0]int g0/0/0
[R7-GigabitEthernet0/0/0]ospf network-type b
[R7-GigabitEthernet0/0/0]int g0/0/1
[R7-GigabitEthernet0/0/1]ospf network-type b
[R7-GigabitEthernet0/0/1]int g0/0/2
[R7-GigabitEthernet0/0/2]ospf network-type b
到此ospf配置完成,中间as2部分相通了,任意测试
如下:R2ping通R7环回
bgp的配置
为了不用两两建邻所以:
此次试验用到了联邦和反射器
路由反射器小知识
路由反射器 有三个角色:RR(反射器) 客户端 非客户端
无论客户端还是非客户端都必须是RR的IBGP邻居; 由RR作为中心点与多个客户端、非客户端构成一个簇(组);在一个簇内存在一台RR和至少一台客户端;也可以一台RR和多个客户端、多个非客户端;或者一个RR与多个客户端,没有非客户端;
反射规则:
1、 RR从一个EBGP邻居处学习到的路由,可以传输给客户端、非客户端,已经本地的其他EBGP邻居;
2、 RR从一个客户端学习到的路由,可以传递给本地其他的客户端、非客户端、其他的EBGP邻居;
3、 RR从一个非客户端学习到的路由,可以传递给本地的其他客户端、EBGP邻居;不能传递给其他的非客户端;
4, 不优路由不能被传递,自然也不能被反射;
联邦的小知识
联邦-将一个AS,逻辑的分为多个小AS;对外依然遵循大AS号传递规则;
但小AS间为联邦内的EBGP邻居关系,可以像EBGP关系一样传递路由,但默认不对属性进行修改;
规则:
1) 所有操作基于小AS号进行;
2) AS内所有设备需要定义自己所在的大AS号
3) 小AS间的BGP设备需要告知对端的小AS号
配置:
[R1]bgp 1
[R1-bgp]router-id 1.1.1.1
[R1-bgp]peer 12.1.1.2 as-number 2 R1用接口与R2建邻
R2与R5是大S里面的EBGP邻居,所以R2的需要声明另外一个联邦号
[R2]bgp 64512 所在as号,为小号
[R2-bgp] router-id 2.2.2.2
[R2-bgp] confederation id 2 声明R2的大号为as2
[R2-bgp]confederation peer-as 64513 声明R2的另外一个联邦号为64513
[R2-bgp] peer 12.1.1.1 as-number 1 R2 与R1接口建邻
[R2-bgp]peer 172.16.0.3 as-number 64512 与ibgp邻居R3的环回口建邻
[R2-bgp]peer 172.16.0.3 connect-interface LoopBack0 声明自己用环回与对方建邻
[R2-bgp] peer 172.16.0.5 as-number 64513
[R2-bgp] peer 172.16.0.5 ebgp-max-hop 2 因为R2与 R5 为EBGP邻居,所以需要更改TTL值
[R2-bgp] peer 172.16.0.5 connect-interface LoopBack0
[R3]bgp 64512
[R3-bgp]router-id 3.3.3.3
[R3-bgp]confederation id 2
[R3-bgp] peer 172.16.0.2 as-number 64512
[R3-bgp]peer 172.16.0.2 connect-interface LoopBack0
[R3-bgp] peer 172.16.0.4 as-number 64512
[R3-bgp] peer 172.16.0.4 connect-interface LoopBack0
R4与R7是大S里面的EBGP邻居,所以R4的需要声明另外一个联邦号
[R4]bgp 64512
[R4-bgp]router-id 4.4.4.4
[R4-bgp]confederation id 2
[R4-bgp] confederation peer-as 64513
[R4-bgp] peer 172.16.0.3 as-number 64512
[R4-bgp] peer 172.16.0.7 as-number 64513
[R4-bgp] peer 172.16.0.7 ebgp-max-hop 2
[R4-bgp] peer 172.16.0.7 connect-interface LoopBack0
R5与R2同理
[R5]bgp 64513
[R5-bgp]router-id 5.5.5.5
[R5-bgp]confederation id 2
[R5-bgp] confederation peer-as 64512
[R5-bgp]peer 172.16.0.2 as-number 64512
[R5-bgp]peer 172.16.0.2 ebgp-max-hop 2
[R5-bgp]peer 172.16.0.2 connect-interface LoopBack0
[R5-bgp]peer 172.16.0.6 as-number 64513
[R5-bgp] peer 172.16.0.6 connect-interface LoopBack0
[R6]bgp 64513
[R6-bgp]router-id 6.6.6.6
[R6-bgp]router-id 6.6.6.6
[R6-bgp] confederation id 2
[R6-bgp] peer 172.16.0.5 as-number 64513
[R6-bgp] peer 172.16.0.5 connect-interface LoopBack0
[R6-bgp] peer 172.16.0.7 as-number 64513
[R6-bgp] peer 172.16.0.7 connect-interface LoopBack0
R7与R4同理
[R7]bgp 64513
[R7-bgp]router-id 7.7.7.7
[R7-bgp]confederation id 2
[R7-bgp] confederation peer-as 64512
[R7-bgp] peer 78.1.1.2 as-number 3
[R7-bgp] peer 172.16.0.4 as-number 64512
[R7-bgp] peer 172.16.0.4 ebgp-max-hop 2
[R7-bgp] peer 172.16.0.4 connect-interface LoopBack0
[R7-bgp] peer 172.16.0.6 as-number 64513
[R7-bgp] peer 172.16.0.6 connect-interface LoopBack0
[R8]bgp 3
[R8-bgp]router-id 8.8.8.8
[R8-bgp]peer 78.1.1.1 as-number 2
到这里实验完成一大半。
稍等待一会,查看R2和R7bgp邻居表如下:
bgp宣告
为了让R1和R8互相能够有彼此的路由最后相通,需要在R1 R8里面分别宣告
注意:宣告的网段和掩码必需是与自己路由表里面一样的。不然会报错
本实验涉及到ibgp水平分割:大概是一个路由在ibgp邻居处学习到的路由不会再传递给其他的ibgp邻居,可以用全部两两建邻或者路由反射器解决这个问题。
[R1]bgp 1
[R1-bgp]network 1.1.1.0 24
[R8]bgp 3
[R8-bgp]network 8.8.8.0 24
宣告完成后可以到R2和R7上面查看bgp路由表,发现 R2 没有到R8的路由,R7没有到R1的路由,一步一步排查原来是R1路由传递到R5和R3时不优,R8路由传递到R4和R6的路由也不优了。
解决办法:更改下一跳
[R2]bgp 64512
[R2-bgp]peer 172.16.0.3 next-hop-local 到R3的下一跳改为本地
[R2-bgp] peer 172.16.0.5 enable
[R2-bgp] peer 172.16.0.5 next-hop-local 到R5的下一跳改为本地
再查看bgp表发现R3和R6优秀了,但是发现他们2个路由器不再传递路由表导致R4没有R1传来的路由,R5没有R8传来的路由。原因是R3是R2和R4是ibgp邻居,不会将在ibgp邻居处学习到的路由传递给另外的ibgp邻居,R6也是同样的原因。
解决方法:bgp两两建邻或者路由反射器,这里用路由反射器。
将R3和R6作为反射器
[R3]bgp 64512
[R3-bgp]peer 172.16.0.4 reflect-client R4 作为自己的客户端,自己作为反射器
[R6]bgp 64513
[R6-bgp]peer 172.16.0.5 reflect-client 同理
这时查看R2和R7上的bgp路由表,发现所有学到的路由都优秀了
R1的环回ping通R8环回测试成功
接下来解决最后一个问题:R1和 R8 与 R2,3,4,5,6,7 用户环回ping通
as1(R1) 和 as3(R8) 只是宣告了自己的环回让整个网络都有到自己的环回路由了,但是as2中的那些环回却没有宣告,所以R1 R8得不到去到R2,3,4,5,6,7的路由。
因为最开始整个as2 的网络ip都是由172.16.0.0/16 这个网段来分配的,所以只需要在R2和R7上面写一个172.16.0.0/16网段的空接口,然后再到R2 R7上面宣告就 可以了。于是R1和R8得到了去往172.16.0.0/16网段的路由了
[R2]ip route-static 172.16.0.0 16 NULL 0
[R2]bgp 64512
[R2-bgp]network 172.16.0.0 16
[R7]ip route-static 172.16.0.0 16 NULL 0
[R7]bgp 64513
[R7-bgp]network 172.16.0.0 16
最后查看R1和R8bgp路由发现有去往172.16.0.0/16网段的路由了
最后任意用R1 R8测试R2,3,4,5,6,7环回都是通的
到此实验结束