这篇文章将会简单的介绍如何从BGP系统中过滤掉私有自治系统编号以下简称AS编号在配置BGP系统的时候我们经常使用私有的AS编号来将一个大型的自治系统划分成多个通过eBGP连接的小自治系统另外当你和一个单一的ISP进行连接的时候这个ISP可能使用私有AS编号来进行系统互连为了保证路由在INTERNET中传递的正确性所以在BGP的路由更新报文发送到整个BGP的全连接中之前我们需要将这些私有的AS编号从我们的系统中屏蔽掉私有AS编号范围从64512到65535下面我们将结合具体的配置实例来说明如何去除BGP系统中的私有AS编号。

参考上图各路由器具体配置如下
Router 3
Current configuration:
interface Ethernet0 ip address 3.3.3.3 255.255.255.0 ! interface Serial0 ip address 140.4.4.5 255.255.255.0
router bgp 65000
network 3.3.3.0 mask 255.255.255.0 neighbor 140.4.4.4 remote-as 5 end
Router 2
Current configuration: interface Serial0 ip address 140.4.4.4 255.255.255.0 ! interface Ethernet1 ip address 191.10.10.1 255.255.255.0 interface Serial1 ip address 141.108.8.3 255.255.255.0 ! router bgp 5 network 191.10.10.0 mask 255.255.255.0 neighbor 140.4.4.5 remote-as 65000 neighbor 141.108.8.2 remote-as 1
neighbor 141.108.8.2 remove-private-AS
end
Router 1
Current configuration: interface Serial0
ip address 141.108.8.2 255.255.255.0 ! router bgp 1
neighbor 141.108.8.3 remote-as 5 end
使用Show命令来观察各个路由器的路由表中的路由状况
R2#show ip bgp BGP table version is 3, local router ID is 140.4.3.3 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop metric LocPrf Weight Path
*> 3.3.3.0/24 140.4.4.5 0 0 65000 i *> 191.10.10.0/24 0.0.0.0 0 32768 i
R1#show ip bgp BGP table version is 8, local router ID is 141.108.8.2 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop metric LocPrf Weight Path *> 3.3.3.0/24 141.108.8.3 0 5 i *> 191.10.10.0/24 141.108.8.3 0 0 5 i
Router2的BGP路由表显示network 3.3.3.0起源自AS65000 Router1的BGP路由表显示相同的网段却起源自AS5 这是因为在Router2上使用了remove-private-as 命令这条命令过滤了私有的AS编号从而阻止了私有的AS编号向INTERNET中扩散在使用了remove-private-as命令过滤掉私有AS编号以后AS1(router 1) 认为network 3.3.3.0/24这个网络起源自编号为5的自治系统使用neighbor x.x.x.x remove-private-as 命令可以强制BGP丢弃私有AS编号通常这个命令配置在外部的BGP邻居上当向外发布的更新路由中含有私有AS编号的时候这个私有的AS编号将被过滤当配置这条命令的时候需要注意以下的几个注意事项
A 这条命令只能使用在EBGP的邻居上 B 如果更新路由中只含有私有的AS编号那么BGP会过滤掉这些私有编号 C 如果在AS_PATH路径中既包含私有的又包含公有的AS编号那么BGP将不会对私有的AS编号进行过滤 D 如果在AS_PATH中包含有EBGP邻居的AS编号那么BGP也不会将私有的 AS编号进行过滤 E 如果AS_PATH 包含联盟那么只有当私有AS编号出现在联盟后面的时候BGP才会将私有的AS编号清除
|