路由反射器的概念,像是内部IBGP会话的集中路由器或焦点。与路由反射器对等的路由器称为路由反射器客户。这些客户与rf相匹配并交换路由信息。rf接着交换或者反射这一信息给所有客户,从而消除了对全互连环境的需要。路由反射器让被配置为路由反射器的路由器向其他IBGP对等体传输由IBGP所学到的路由来修改BGP的横向隔离规则。
配置了BGP路由反射器,就不再需要全互连的IBGP对等体。路由反射器被允许向其它IBGP对等体传输IBGP路由。当内部邻居命令语句数量过多时,I SP就会采用路由反射器技术。路由反射器通过让主要路由器给它们的路由反射器客户复制路由更新来减少AS内BGP邻居关系的数量(这样可以减少T CP连接)。
路由反射器不影响IP数据包所要经过的路径;只有发布路由信息的那条路径受影响。如果路由反射器没有被正确配置,那么将可能产生路由环路。
路由反射器:是被配置为允许它把通过IBGP所学到的路由通告(或反射)到其他IBGP对等体的路由器。
集群:路由反射器出其它客户的组合;
客户:路由反射器和其他路由有部分IBGP对等关系的这些路由器
非客户:不是路由反射器的客户的其他IBGP的对等体;
originator(始发者) ID:是任选的、非传递BGP属性,它被路由反射器创建。这个属性带有本能AS内部由始发者的路由ID;
路由反射器集群表:路由报经过的集群ID序列。
originator(始发者) ID、集群ID和集群表有助于在路由反射器配置中防止产生路由环路。
//// router a ////
int lo0
ip addr 1.1.1.1 255.255.255.0
int s0
ip addr 192.1.1.1 255.255.255.0
router bgp 100
neighbor 192.1.1.2 remote-as 200
netw 1.0.0.0
//// router b ////
int lo0
ip addr 2.2.2.2 255.255.255.0
int s0
ip addr 192.1.1.2 255.255.255.0
int s1
ip addr 193.1.1.2 255.255.255.0
router ospf 64
netw 0.0.0.0 255.255.255.255.0 area 0
router bgp 200
neighbor 192.1.1.1 remote-as 100
neighbor 193.1.1.1 remote-as 200
//// router c ////
int lo0
ip addr 3.3.3.3 255.255.255.0
int s0
ip addr 193.1.1.1 255.255.255.0
int s1
ip addr 194.1.1.1 255.255.255.0
router ospf 64
netw 0.0.0.0 255.255.255.255 area 0
router bgp 200
neighbor 193.1.1.2 remote-as 200
neighbor 194.1.1.2 remote-as 200
//// router d ////
int lo0
ip addr 4.4.4.4 255.255.255.0
int s0
ip addr 194.1.1.2 255.255.255.0
router ospf 64
netw 0.0.0.0 255.255.255.255 area 0
router bgp 200
neighbor 194.1.1.1 remote-as 200
//// 监视和测试配置 ////
C# sh ip route
只显示出ospf路由,没有BGP路由,因为此时没有将B上BGP获知的路由重分发布至OSPF中。而此时由于必须同步,所以没有BGP路由。为了取消同步,在BGP进程中打入
c# router bgp 200
no synchronization
执行clear ip bgp *
在D上显示BGP路由表,仍然没有内容,因为C不能通过IBGP通告从其他IBGP邻居那里获得路由。有两种方法可解决这个问题:
1、通过neighbor指令建立一个路由器D到B的IBGP连接
2、或者使C成为一个路由反射器。
c# router bgp 200
neighbor 193.1.1.2 route-reflector-client
neighbor 194.1.1.2 route-reflector-client
clear ip bgi *
sh ip bgp neighbors 194.1.1.2
route-reflector client
show ip bgp
*>i1.0.0.0 192.1.1.1 0 100 0 100 i