BGP实验二
1.AS1存在两个环回,一个地址为192.168.1.0/24该地址不能在任何协议中宣告AS3存在两个环回,一个地址为192.168.2.0/24该地址不能在任何协议中宣告最绦要求这两个环回可以互相通讯;
AS1的另一个环回为10.1.1.0/24,AS3的另一个环回为10.1.2.0/24
2、整个AS2的ip地址为172.16.0.0.请合理划分
3、AS间的骨干链路ip地址随意定制
4、使用BGP协议让整个网络所有设备的环回可以相互访问5、减少条目数量,避免环路出现
逻辑上:
物理上:
根据题目要求:
分配地址:
AS2地址分配:
骨干:
172.16.0.0/30
如果数量很多:172.16.0.0/29
172.16.0.1/30 172.16.0.2/30 23
172.16.0.5/30 172.16.0.6/30 34
172.16.0.9/30 172.16.0.10/30 25
172.16.0.13/30 172.16.0.14/30 56
172.16.0.17/30 172.16.0.18/30 67
172.16.0.21/30 172.16.0.22/30 47
环回:
172.16.2.0 24
172.16.3.0 24
172.16.4.0 24
172.16.5.0 24
172.16.6.0 24
172.16.7.0 24
R1R2
12.1.1.1/24 12.1.1.2/24
R7R8
78.1.1.1/24 78.1.1.2/24
R1环回:
192.168.1.0/24 10.1.1.0/24
R8环回:
192.168.2.0/24 10.1.2.0/24
运行IGP协议:
R2:
ospf 1 router-id 2.2.2.2
area 0.0.0.0
network 172.16.0.0 0.0.255.255
R3:
ospf 1 router-id 3.3.3.3
area 0.0.0.0
network 172.16.0.0 0.0.255.255
R4:
ospf 1 router-id 4.4.4.4
area 0.0.0.0
network 172.16.0.0 0.0.255.255
R5:
ospf 1 router-id 5.5.5.5
area 0.0.0.0
network 172.16.0.0 0.0.255.255
R6:
ospf 1 router-id 6.6.6.6
area 0.0.0.0
network 172.16.0.0 0.0.255.255
R7:
ospf 1 router-id 7.7.7.7
area 0.0.0.0
network 172.16.0.0 0.0.255.255
运行BGP协议:
R1:
bgp 1
router-id 1.1.1.1
peer 12.1.1.2 as-number 2
R2:
bgp 64512
router-id 2.2.2.2
confederation id 2 先声明自己的大号
peer 172.16.3.1 as-number 64512 邻居和我在一个小S
confederation peer-as 64513 如果有连接其他小S
peer 172.16.3.1 connect-interface LoopBack 0 2和3建邻,更改更新源
peer 172.16.5.1 as-number 64513
peer 172.16.5.1 connect-interface LoopBack 0
peer 172.16.5.1 ebgp-max-hop 2 更改TTL值,因为2和5用环回建邻
peer 12.1.1.1 as-number 1
R3:
bgp 64512
router-id 3.3.3.3
confederation id 2
peer 172.16.2.1 as-number 64512
peer 172.16.2.1 connect-interface LoopBack0
peer 172.16.4.1 as-number 64512
peer 172.16.4.1 connect-interface LoopBack0
R4:
bgp 64512
router-id 4.4.4.4
confederation id 2 声明自己的大号
confederation peer-as 64513 自己在联邦当中是有小S的
peer 172.16.3.1 as-number 64512 建邻
peer 172.16.3.1 connect-interface LoopBack0 我和他用环回建邻
peer 172.16.7.1 as-number 64513
peer 172.16.7.1 ebgp-max-hop 2 EBGP建邻要修改TTL值
peer 172.16.7.1 connect-interface LoopBack0
R5:
bgp 64513
router-id 5.5.5.5
confederation id 2
confederation peer-as 64512
peer 172.16.2.1 as-number 64512
peer 172.16.2.1 ebgp-max-hop 2
peer 172.16.2.1 connect-interface LoopBack0
peer 172.16.6.1 as-number 64513
peer 172.16.6.1 connect-interface LoopBack0
R6:
bgp 64513
router-id 6.6.6.6
confederation id 2
peer 172.16.5.1 as-number 64513
peer 172.16.5.1 connect-interface LoopBack0
peer 172.16.7.1 as-number 64513
peer 172.16.7.1 connect-interface LoopBack0
R7:
bgp 64513
router-id 7.7.7.7
confederation id 2
confederation peer-as 64512
peer 172.16.4.1 as-number 64512
peer 172.16.4.1 ebgp-max-hop 2
peer 172.16.4.1 connect-interface LoopBack0
peer 172.16.6.1 as-number 64513
peer 172.16.6.1 connect-interface LoopBack0
R8:
bgp 3
router-id 8.8.8.8
peer 78.1.1.1 as-number 2
宣告
宣告R1的环回:
[r1]bgp 1
[r1-bgp]net
[r1-bgp]network 10.1.1.0 24
查看R1的BGP路由表
R2正常学到应该是要传给R3R5的,但是R3R5不优,那我们来到R2上针对邻居修改下一跳
R2:
[r2]bgp 64512
[r2-bgp]peer 172.16.3.1 next-hop-local
[r2-bgp]peer 172.16.5.1 next-hop-local
R3优了会传给R4吗,不会。因为IBGP水平分割,所以要在3上调一个反射器
R3:
[r3]bgp 64512
[r3-bgp]peer 172.16.2.1 reflect-client 把2作为他的客户端
R6:
[r6]bgp 64513
[r6-bgp]peer 172.16.5.1 reflect-client
宣告R8的环回:
R8:
[r8]bgp 3
[r8-bgp]ne
[r8-bgp]network 10.1.2.0 24
R7正常学到应该是要传给R4R6的,但是R4R6不优,那我们来到R7上针对邻居修改下一跳
[r7]bgp 64513
[r7-bgp]peer 172.16.4.1 next-hop-local
[r7-bgp]peer 172.16.6.1 next-hop-local
测试:
但是如果直接去ping10.1.2.1的话有过去的路由但是回不来。
宣告2、7空接口路由:
两边都要宣告,如果宣告一边,另一边要去访问黑洞中的路由时,因为ospf表是没有这条路由的,它会去找BGP表,发现有,流量就会到那一边才会被丢掉,这么想那不行,必须两边都得设置。
[r2]ip route-static 172.16.0.0 21 NULL 0
[r2]bgp 64512
[r2-bgp]network 172.16.0.0 21
[r7]ip route-static 172.16.0.0 21 NULL 0
[r7]bgp 64513
[r7-bgp]network 172.16.0.0 21
要求192.168.1.0和192.168.2.0能通,那我们就打GRE就可以了
打GRE前提是两边要有一条链路能通
ping -a 10.1.1.1 10.1.2.1能通
R1:
interface Tunnel0/0/0
ip address 10.1.3.1 255.255.255.0
tunnel-protocol gre
source 10.1.1.1
destination 10.1.2.1
R8:
interface Tunnel0/0/0
ip address 10.1.3.2 255.255.255.0
tunnel-protocol gre
source 10.1.2.1
destination 10.1.1.1
R8 ping 10.1.3.1 能通说明tunnelkou已经通了
现在去R1R8写一条静态
[r1]ip route-static 192.168.2.0 24 10.1.3.2
[r8]ip route-static 192.168.1.0 24 Tunnel 0/0/0
测试:
实验完成!