拓扑
拓扑说明
AR1,AR2运行EBGP,网段:12.1.1.0/24
AR1,AR3运行OSPF ,网段:13.1.1.0/24
AR3创建两个环回口,8,9,宣告进OSPF
AR1把AR3的环回口通告进BGP
基础配置
AR1
interface GigabitEthernet0/0/0
ip address 12.1.1.1 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 13.1.1.1 255.255.255.0
#
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
#
ospf 100 router-id 1.1.1.1
area 0.0.0.0
network 1.1.1.1 0.0.0.0
network 13.1.1.1 0.0.0.0
#
bgp 1
router-id 1.1.1.1
peer 12.1.1.2 as-number 2
ipv4-family unicast
undo synchronization
peer 12.1.1.2 enable
AR2
interface GigabitEthernet0/0/0
ip address 12.1.1.2 255.255.255.0
#
interface LoopBack0
ip address 2.2.2.2 255.255.255.255
#
bgp 2
router-id 2.2.2.2
peer 12.1.1.1 as-number 1
ipv4-family unicast
undo synchronization
peer 12.1.1.1 enable
AR3
interface GigabitEthernet0/0/0
ip address 13.1.1.3 255.255.255.0
#
interface LoopBack0
ip address 3.3.3.3 255.255.255.255
#
interface LoopBack8
ip address 172.16.8.1 255.255.255.0
#
interface LoopBack9
ip address 172.16.9.1 255.255.255.0
#
ospf 100 router-id 3.3.3.3
area 0.0.0.0
network 3.3.3.3 0.0.0.0
network 13.1.1.3 0.0.0.0
network 172.16.8.1 0.0.0.0
network 172.16.9.1 0.0.0.0
此时两款协议的邻居都已经建立起来了,并且AR1已经获取到了AR3所宣告的路由
可以看到OSPF路由以及BGP的邻居都已经建立好了
接下来需要把AS1的路由通告给AS2
network宣告
通过network把 AR1 路由表里存在的路由,通告给AR2
bgp 1
router-id 1.1.1.1
peer 12.1.1.2 as-number 2
#
ipv4-family unicast
undo synchronization
network 3.3.3.3 255.255.255.255 //通过network通告
network 172.16.8.1 255.255.255.255
network 172.16.9.1 255.255.255.255
peer 12.1.1.2 enable
此时在AR 2上通过查看bgp表,可以看到通过邻居接受到了哪些路由
可以看到,刚刚所通告的三条路由,都已经接收到了
通过display bgp routing-table peer 12.1.1.1 received-routes 可以查看对等体12.1.1.1给自己发送了哪些路由
import-route通告
通过路由引入的方式,吧路由通告进BGP,先把刚刚通告的路由给undo掉
通过路由引入,把OSPF的路由引入到BGP
bgp 1
router-id 1.1.1.1
peer 12.1.1.2 as-number 2
#
ipv4-family unicast
undo synchronization
import-route ospf 100 //把ospf 100 的路由引入到bgp
peer 12.1.1.2 enable
但是直接引入会把我们不想通告进BGP的OSPF路由也一并引入到BGP
可以看到比起network通告,直接import-route则把其他ospf路由都一并通告进BGP了
如果此时我们只想通告3.3.3.3,172.16.8.1,172.16.9.1这三条路由,可以通过route-policy的方式来过滤掉不需要的路由
//通过前缀列表抓取需要过滤的路由
ip ip-prefix gl index 10 permit 3.3.3.3 32
ip ip-prefix gl index 20 permit 13.1.1.0 24
//通过route-policy绑定前缀列表,deny掉抓取的路由
route-policy gl deny node 10
if-match ip-prefix gl
//创建一个route-policy node 20的permit空语句,放行其他流量
route-policy gl permit node 20
//进入BGP进程。做路由引入的时候调用route-policy
bgp 1
router-id 1.1.1.1
peer 12.1.1.2 as-number 2
ipv4-family unicast
undo synchronization
import-route ospf 100 route-policy gl //引入ospf 100的同时调用route-policy gl
peer 12.1.1.2 enable
此时再看AR2的bgp表,就可以看到我们抓取出来的路由已经被过滤掉了
BGP静态路由下放
我们在AR2 上往AR1下放一条静态默认
// 先在AR2上创建一条指向null 0接口的静态默认
ip route-static 0.0.0.0 0 NULL 0
// 进入BGP ipv4-family unicast 下放静态默认
bgp 2
router-id 2.2.2.2
peer 12.1.1.1 as-number 1
ipv4-family unicast
undo synchronization
default-route imported // 开启允许引入默认路由
import-route static // 引入静态默认
peer 12.1.1.1 enable
此时再AR1上查看BGP路由表 可以看到已经成功接收了