Objective:R1,R2之间配置BGP的ORF,以便R2不宣告R1所过滤掉的路由。
Step 1、配置各台路由器的IP地址,并且使用Ping命令确认各路由器的直连口的互通性。
Step 2、R1,R2之间运行EBGP,并宣告网络。
Step 3、在R1上配置前缀列表并应用。
ip prefix-list FILTER seq 5 permit 192.168.1.0/24
router bgp 1
neighbor 12.1.1.2 prefix-list FILTER in
Step 4、在R1,R2上配置ORF。
R1(config-router)#neighbor 12.1.1.2 capability orf prefix-list receive
R2(config-router)#neighbor 12.1.1.1 capability orf prefix-list send
Step 5、在R1上查看路由表,测试成功。
R1#sh ip route
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback0
12.0.0.0/24 is subnetted, 1 subnets
C 12.1.1.0 is directly connected, Serial0/0
B 192.168.1.0/24 [20/0] via 12.1.1.2, 00:17:45
结论:通常的BGP路由过滤只是控制那些前缀不加入本地路由表,如R1的in方向过滤了R2发过来的某些路由,过滤成功后,R1的路由表不会出面被过滤的路由,但这些路由R2已经发出了,所以那些前缀仍然会占用着内存,并且在计算BGP路由时仍然会占用CPU时间。
ORF是基于出口路由过滤能力,提供了一种动态的方法,接受者向发送者公布它的入口过滤器,然后发送者把过滤器加载到与接受者之间的出口邻居关系上。只有ORF达成一致时,ORF才可以被使用。ORF是一种可以在远程节点加载在入口前缀列表,主要是节省带宽以及路由器的性能。
R1+++++++++++++++++++++++++++++++++++++++++++++++++
int lo 0
ip add 1.1.1.1 255.255.255.255
int e0/0
no sh
ip add 12.1.1.1 255.255.255.0
router bgp 1
nei 12.1.1.2 remote 2
net 1.1.1.1 mask 255.255.255.255
R2+++++++++++++++++++++++++++++++++++++++++++
int lo 0
ip add 2.2.2.2 255.255.255.255
int e0/0
ip add 12.1.1.2 255.255.255.0
int lo 1
ip add 192.168.1.1 255.255.255.0
int lo 2
ip add 192.168.2.1 255.255.255.0
int lo 3
ip add 192.168.3.1 255.255.255.0
int lo 4
ip add 192.168.4.1 255.255.255.0
int lo 5
ip add 192.168.5.1 255.255.255.0
router bgp 2
nei 12.1.1.1 remote 1
net 192.168.1.0 mask 255.255.255.0
net 192.168.2.0 mask 255.255.255.0
net 192.168.3.0 mask 255.255.255.0
net 192.168.4.0 mask 255.255.255.0
net 192.168.5.0 mask 255.255.255.0