可支持ipv4和ipv6单播,也支持v6等。
当允许数据包穿越As号去访问其他AS号的时候
对于一个用户的AS号,如果他需要同时连接到多个AS号时。
当需要对数据进入或离开AS,进行人为控制/操纵的时候
与isp只有单连接,没有同时连接到多个ISP
如果链路带宽不足,或者硬件设备的档次不够
对BGP路由操纵理解有限,无法预计BGP后的结果
从EBGP学习到的路由会传递给所有的IBGP邻居
从IBGP学习到的路由不会传递给任何IBGP邻居(在AS内部避免环路)
从IBGP学习到的路由会不会传递给EBGP邻居,看是否开启了同步功能
6.1 IGP中的network
6.2 IBGP
IBGP使用环回口建立邻居,TTL=255。使用环回口建邻居时,注意BGP报文的源IP地址,通常采用路由更新源update-source(可以只写一边)。使得环回口间互相通信时,默认路由无效,必须使用明细;
router bgp 100
neighbors 2.2.2.2 remote-as 100
neighbors 2.2.2.2 update-source loopback0
从EBGP学习到的路由传递给IBGP时,由于默认不更改下一跳,会导致IBGP邻居对该路由的下一跳不可达,需要更改为当前设置。因此, 解决下一跳不可达的办法 可以采用两种方式:
EBGP一般使用直连口建立,也可使用多跳方式(注意update-source和multihop)。BGP建立邻居的TCP连接时随机的,邻居间都会建立两条TCP连接,但会随机DOWN一条。
router bgp 100
neighbors 12.1.1.1 remote-as 200
router bgp 100
neighbor 2.2.2.2 remote-as 200
neighbor 2.2.2.2 ebgp-multihop 2
#ebgp-multihop 2 这个是重点
手工写静态路由NULL 0
network 汇总路由
ip route 172.16.0.0 255.255.248.0 Null 0
outer bgp 1
network 172.16.0.0 mask 255.255.248.0
聚合属性仅在本地使用,通常用在RR上。
BGP在汇总路由时,默认会发出汇总和明细路由,如果想阻止明细发出,可在后面添加summary-only;
aggregate-address 3.3.0.0 255.255.252.0 summary-only
聚合后,AS-PATH信息会丢失,可能导致路由环路,可加入as-set将其还原;
aggregate-address 3.3.0.0 255.255.252.0 summary-only as-set
//该配置是在RR机器上配置,neighbor为各个需要反射的客户端设备IP
router bgp 123
neighbor 1.1.1.1 route-reflecctor-client
router bgp 65060
bgp confederation identifier 100 //bgp联盟为100
bgp confederation peers 65050 //bgp联盟内的EBGP邻居AS
neighbor 20.0.0.1 remote-as 65050 //指定联盟内部的EBGP邻居
neighbor x.x.x.x remote-as 65060 //指定联盟内部的IBGP邻居
用途:
1.简化配置,适用于EBGP或者IBGP
2.减少buffer(缓冲)
配置BGP:
router bgp 200
neighbor IBGP1 peer-group
neighbor IBGP1 remote-as 200
neighbor IBGP1 update-source Loopback0
neighbor IBGP1 router-reflector-client
neighbor 2.2.2.2 peer-group IBGP1
neighbor 4.4.4.4 peer-group IBGP1
neighbor 5.5.5.5 peer-group IBGP1
通常配置完BGP后,需要软清理进行刷新,do clear ip bgp * soft
BGP默认开启synchronization,关闭可以执行命令
no synchronization
从IBGP学到的路由必须在IGP中有对应的条目才会发送给EBGP,防止路由黑洞的出现。
解决路由黑洞:MPLS等
作用:在本AS中决定离开本AS的流量出口是谁;默认本地优先为100,越大越优。通常不在in方向上做策略,一般通过本地优先级。
//该条范围较大,较少使用
router bgp 100
bgp default local-preference 200
//通常采用某路由设置本地优先级
access-list 1 permit 1.1.1.1
route-map LP per 10
match ip add 1
set local-preference 300
neighbor 4.4.4.4 route-map LP in
作用:其他AS进入本AS的流量的入口是谁,值越小越优。可以在本AS内的neighbor设置时挂载routermap,配置metric属性。
access-list 1 permit 1.1.2.1
route-map ASPATH per 10
match ip add 1
set as-path prepend 800 700 600
//set as-path last-as 3 添加最后的AS号三次,增长路径属性
route-map ASPATH per 20 //放行其他
1.控制路由传递范围。
2.对路由做标记打tag。
注意:团体属性 必须调neighbor A.B.C.D send-community使能发送,默认不带community。
公有community----实现<1>
<1>no-advertise 存在本地。
<2>local-as 无法传递到下一个联邦AS。
<3>no-export 无法传递到下一个AS。
<4>internet 可以全局传递。
私有community----实现<2>
标准格式:(0x00000000-0Xffff0000)
ip community-list standard Word {deny|permit} AA:NN
扩展格式:(正则表达式,可以范围)
ip community-list expanded Word {deny|permit} Word