021B-BGP状态机,路由通告原则,路由提高

BGP邻居

EBGP邻居

1、用直连建立EBGP邻居
2、用环回口建立eBGP邻居

  • EBGP多跳和指定更新源
    EBGP可以采用直连建立,也可以采用环回口作为更新源建立EBGP邻居用以备份。但是需要修改TTL值
IBGP邻居

1、用直连建立IBGP邻居
2、用环回口建立IBGP邻居

基于TCP连接的邻居关系

BGP邻居关系建立在TCP连接的基础之上
可以通过IGP或静态路由来提供TCP连接的IP可达性

BGP状态机

  • Idle:BGP连接的第一个状态。在空闲状态,BGP在等待一个启动事件。启动事件出现以后,BGP初始化资源,复位连接重试计时器(Connect-Retry),发起一条TCP连接,同时转入Connect(连接)状态。
  • Connect:在此状态,BGP发起第一个TCP连接,如果连接重试计时器超时,就重新发起TCP连接,并继续保持在Connect状态,如果TCP连接成功,就转入OpenSent状态,如果TCP连接失败,就转入Active状态。
  • Active:在此状态,BGP总是在试图建立TCP连接,如果连接重试计时器(Connect-Retry)超时,就退回到Connect状态,如果TCP连接成功,就转入OpenSent状态,如果TCP连接失败,就继续保持在Active状态,并继续发起TCP连接。
  • OpenSent:在此状态,TCP连接已经建立,BGP也已经发送了第一个Open报文,剩下的工作,BGP就在等待其对等体发送Open报文。并对收到的Open报文进行正确性检查,如果有错误,系统就会发送一条出错通知消息并退回到Idle状态,如果没有错误,BGP就开始发送Keepalive报文,并复位Keepalive计时器,开始计时。同时转入OpenConfirm状态。
  • OpenConfirm:在OpenConfirm状态,BGP等待一个Keepalive报文,同时复位保持计时器,如果收到了一个Keepalive报文,就转入Established阶段,BGP邻居关系就建立起来了。
  • Established:在Established状态,BGP邻居关系已经建立,这时,BGP将和它的邻居们交换Update报文,同时复位保持计时器。

另外,在除Idle状态以外的其它五个状态出现任何Error的时候,BGP状态机就会退回到Idle状态。

在BGP对等体建立的过程中,通常可见的三个状态是:Idle、Active、Established。

Idle状态下,BGP拒绝任何进入的连接请求,是BGP初始状态。

Active状态下,BGP将尝试进行TCP连接的建立,是BGP的中间状态。

Established状态下,BGP对等体间可以交换Update报文、Route-refresh报文、Keepalive报文和Notification报文。

BGP对等体双方的状态必须都为Established,BGP邻居关系才能成立,双方通过Update报文交换路由信息。

路由表

IP路由表 (IP-RIB)
全局路由信息库,包括所有IP路由信息。
BGP路由表 (Loc-RIB)
BGP路由信息库,包括本地BGP Speaker选择的路由信息。
邻居表
对等体邻居清单列表
Adj-RIB-In
对等体宣告给本地Speaker的未处理的路由信息库
Adj-RIB-Out
本地Speaker宣告给指定对等体

EBGP多跳和指定更新源

EBGP可以采用直连建立,也可以采用环回口作为更新源建立EBGP邻居用以备份。但是需要修改TTL值

BGP通告原则

BGP通告原则1

  • 连接建立时,BGP Speaker只把本身用的最优路由通告给对等体
  • 多条路径时,BGP Speaker只选最优的路由放入路由表

即对于bgp来说,BGP Speaker只选最优的路由放入路由表,但是在全局的ip routing-table关于bgp的此条路由可以有多条(手动配置)

BGP通告原则2

  • BGP Speaker从EBGP获得的路由会向它所有BGP对等体通告(包括EBGP和IBGP)

保证IBGP下一跳可达
BGP的下一跳行为:BGP是AS by AS的协议,不同于IGP中的下一跳是一个路由器地址,BGP中的下一跳为如何去往其他AS的一个设备(即ebgp到ebgp的下一跳会变);而且在不同AS之间将保持不变(ibgp下一跳不变,需要用peer ** next-hop-local)

即EBGP通告给EBGP的路由时,路由的下一跳会自动改变,而EBGP通告给IBGP的路由下一跳不会改变。
如果EBGP和EBGP是直连接口建立,且属于同一个网段,则EBGP发送到EBGP的路由下一跳不会发生改变

BGP路由通告原则(三)

  • BGP Speaker 从IBGP获得的路由不会通告给它的IBGP邻居。

IBGP逻辑全互连,导致AS内部路由器需要维护更多的IBGP会话。可以用路由反射器或者联盟

BGP通告原则 4

  • BGP Speaker 从IBGP获得的路由是否通告给它的EBGP对等体要依IGP和BGP同步的情况来决定
  • BGP与IGP同步的概念:BGP Speaker不将从IBGP对等体获得的路由信息通告给它的EBGP对等体,除非该路由信息也能通过IGP获得

华为默认是关闭同步,无法开启,所以华为不遵循该规则思科可以手工开启或关闭

成为BGP路由的途径之一: network 命令 ,引入或汇总
在这里插入图片描述
配置IGP协议ospf


[AR1]dis ip interface brief
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
The number of interface that is UP in Physical is 6
The number of interface that is DOWN in Physical is 0
The number of interface that is UP in Protocol is 6
The number of interface that is DOWN in Protocol is 0

Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              12.1.1.1/24          up         up        
GigabitEthernet0/0/1              13.1.1.1/24          up         up        
GigabitEthernet0/0/2              16.1.1.1/24          up         up        
LoopBack0                         1.1.1.1/32           up         up(s)     
LoopBack1                         unassigned           up         up(s)     
NULL0                             unassigned           up         up(s)     
[AR1]

[AR2]dis ip interface brief
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              12.1.1.2/24          up         up        
GigabitEthernet0/0/1              24.1.1.2/24          up         up        
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         2.2.2.2/32           up         up(s)     
NULL0                             unassigned           up         up(s)  


[AR3]dis ip interface brief
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              13.1.1.3/24          up         up        
GigabitEthernet0/0/1              35.1.1.3/24          up         up        
GigabitEthernet0/0/2              37.1.1.3/24          up         up        
LoopBack0                         3.3.3.3/32           up         up(s)     
NULL0                             unassigned           up         up(s)  

[AR4]dis ip interface brief
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              45.1.1.4/24          up         up        
GigabitEthernet0/0/1              24.1.1.4/24          up         up        
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         4.4.4.4/32           up         up(s)     
LoopBack10                        44.44.44.44/32       up         up(s)     
NULL0                             unassigned           up         up(s) 


[AR5]dis ip interface brief
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              35.1.1.5/24          up         up        
GigabitEthernet0/0/1              45.1.1.5/24          up         up        
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         5.5.5.5/32           up         up(s)     
NULL0                             unassigned           up         up(s)    


[AR6]dis ip interface brief
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              16.1.1.6/24          up         up        
GigabitEthernet0/0/1              unassigned           down       down      
GigabitEthernet0/0/2              unassigned           down       down      
NULL0                             unassigned           up         up(s)

[AR7]dis ip interface brief
Interface                         IP Address/Mask      Physical   Protocol  
GigabitEthernet0/0/0              37.1.1.7/24          up         up        
GigabitEthernet0/0/1              unassigned           down       down      
GigabitEthernet0/0/2              unassigned           down       down      
LoopBack0                         7.7.7.7/32           up         up(s)     
LoopBack10                        77.77.77.77/32       up         up(s)     
NULL0                             unassigned           up         up(s)  

配置BGP

[AR1]dis current-configuration configuration bgp
[V200R003C00]
#
bgp 100
 router-id 1.1.1.1
 peer 2.2.2.2 as-number 100    //指定邻居为2.2.2.2 区域为100
 peer 2.2.2.2 connect-interface LoopBack0   //配置bgp更新源为环回口
 peer 3.3.3.3 as-number 100 
 peer 16.1.1.6 as-number 300    //bgp直连邻居可以省略配置更新源,有默认配置即可
 #                            
 ipv4-family unicast
  undo synchronization        //bgp路由通告4,华为特有,更改不了,系统默认配置
  peer 2.2.2.2 enable
  peer 3.3.3.3 enable
  peer 3.3.3.3 next-hop-local  //本路由器送往邻居3.3.3.3的bgp路由,下一跳指向本路由器,如AR6上的66.66.66.66/32的路由有AR1送往AR3时,在AR3上关于此路由的下一跳为AR1,如没有配置此命令,则下一跳为AR6
  peer 3.3.3.3 next-hop-local
  peer 16.1.1.6 enable
#
return

[AR2]dis current-configuration configuration bgp
[V200R003C00]
#
bgp 100
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 4.4.4.4 as-number 200 
 peer 4.4.4.4 ebgp-max-hop 255  两个EBGP通过环回口建立,需要指定EBGP多跳
 peer 4.4.4.4 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  peer 1.1.1.1 enable
  peer 1.1.1.1 next-hop-local   //AR2将AR4上的路由44.44.44.44/32送往AR1时,AR1上关于此路由的下一跳指向AR2,若没有配置此命令,则下一跳为AR4
  peer 4.4.4.4 enable
#
return

[AR3]dis current-configuration configuration bgp
[V200R003C00]
#
bgp 100
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 35.1.1.5 as-number 200 
 #
 ipv4-family unicast
  undo synchronization
  peer 1.1.1.1 enable
  peer 1.1.1.1 next-hop-local 
  peer 35.1.1.5 enable
#
return


[AR4]dis current-configuration configuration bgp
[V200R003C00]
#
bgp 200
 peer 2.2.2.2 as-number 100 
 peer 2.2.2.2 ebgp-max-hop 255 
 peer 2.2.2.2 connect-interface LoopBack0
 peer 5.5.5.5 as-number 200 
 peer 5.5.5.5 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  network 44.44.44.44 255.255.255.255 
  peer 2.2.2.2 enable
  peer 5.5.5.5 enable
  peer 5.5.5.5 next-hop-local 
#
return

[AR5]dis current-configuration configuration bgp
[V200R003C00]
#
bgp 200
 peer 4.4.4.4 as-number 200 
 peer 4.4.4.4 connect-interface LoopBack0
 peer 35.1.1.3 as-number 100 
 #
 ipv4-family unicast
  undo synchronization
  peer 4.4.4.4 enable
  peer 4.4.4.4 next-hop-local 
  peer 35.1.1.3 enable
#
return

[AR6]dis current-configuration configuration bgp
[V200R003C00]
#
bgp 300
 peer 16.1.1.1 as-number 100 
 #
 ipv4-family unicast
  undo synchronization
  peer 16.1.1.1 enable
#
return

[AR1]dis bgp  routing-table 

 BGP Local router ID is 1.1.1.1 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 2
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>i  44.44.44.44/32     3.3.3.3                    100        0      200i
 * i                     2.2.2.2         0          100        0      200i


[AR1]dis bgp routing-table 44.44.44.44 32

 BGP local router ID : 1.1.1.1
 Local AS number : 100
 Paths:   2 available, 1 best, 1 select
 BGP routing table entry information of 44.44.44.44/32:
 From: 3.3.3.3 (3.3.3.3)
 Route Duration: 00h39m38s  
 Relay IP Nexthop: 13.1.1.3
 Relay IP Out-Interface: GigabitEthernet0/0/1
 Original nexthop: 3.3.3.3
 Qos information : 0x0
 AS-path 200, origin igp, localpref 100, pref-val 0, valid, internal, best, select, active, pre 255, IGP cost 1
 Advertised to such 1 peers:
    16.1.1.6
 BGP routing table entry information of 44.44.44.44/32:
 From: 2.2.2.2 (24.1.1.2)
 Route Duration: 00h36m52s  
 Relay IP Nexthop: 12.1.1.2
 Relay IP Out-Interface: GigabitEthernet0/0/0
 Original nexthop: 2.2.2.2
 Qos information : 0x0
 AS-path 200, origin igp, MED 0, localpref 100, pref-val 0, valid, internal, pre 255, IGP cost 1, not preferred for router ID
 Not advertised to any peer yet



[AR3]dis bgp routing-table 

 BGP Local router ID is 3.3.3.3 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 1
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   44.44.44.44/32     35.1.1.5                              0      200i



[AR2]dis bgp routing-table peer 3.3.3.3 advertised-routes 44.44.44.44 32
Info: The peer does not exist.
//AR2并没有通告给AR3关于44.44.44.44/32的路由信息

BGP通告原则1
连接建立时,BGP Speaker只把本身用的最优路由通告给对等体,
多条路径时,BGP Speaker只选最优的路由放入路由表
AR1从AR2,AR3分别学到了44.44.44.44/32的路由,但是AR1只把最优的一条放入自身路由表,且把其中一条最优路由通告给对等体

BGP通告原则2
BGP Speaker从EBGP获得的路由会向它所有BGP对等体通告(包括EBGP和IBGP)

BGP的下一跳行为:BGP是AS by AS的协议,不同于IGP中的下一跳是一个路由器地址,BGP中的下一跳为如何去往其他AS的一个设备;而且在不同AS之间将保持不变
AR3从AR7学习到的EBGP路由77.77.77.77/32会通告为AR1,AR5,修改下一跳命令peer 1.1.1.1 next-hop-local
BGP路由通告原则(三)
BGP Speaker 从IBGP获得的路由不会通告给它的IBGP邻居。
AR1从AR2获得的IBGP路由不会通告给IBGP邻居AR3

BGP通告原则 4
BGP Speaker 从IBGP获得的路由是否通告给它的EBGP对等体要依IGP和BGP同步的情况来决定
BGP与IGP同步的概念:BGP Speaker不将从IBGP对等体获得的路由信息通告给它的EBGP对等体,除非该路由信息也能通过IGP获得
华为默认是关闭同步,无法开启,所以华为不遵循该规则,即AR3从AR1获得的IBGP路由会通告给EBGP邻居AR7,而不用看AR3本地IGP路由是否有此路由。思科可以手工开启或关闭,

BGP路由提高

成为BGP路由的途径之一: network 命令

BGP的network命令为通告路由把IGP(比如OSPF)发现的路由信息通过network命令注入到RT2的BGP路由表中
需要严格匹配掩码

成为BGP路由的途径之二: import 命令
[AR3-GigabitEthernet0/0/2]bgp 100
[AR3-bgp]peer 37.1.1.7 as-number 400
[AR3-bgp]
Aug 15 2020 10:19:26-08:00 AR3 %%01BGP/3/STATE_CHG_UPDOWN(l)[0]:The status of the peer 37.1.1.7 changed from OPENCONFIRM to ESTABLISHED. (InstanceName=Public, StateChangeReason=Up)

[AR7]acl 2001
[AR7-acl-basic-2001]rule permit source 77.77.77.77 0 
[AR7-acl-basic-2001]rule permit source any 
[AR7-acl-basic-2001]dis th
[V200R003C00]
#
acl number 2001  
 rule 5 permit source 77.77.77.77 0 
 rule 10 permit 
#
return
[AR7-acl-basic-2001]q
[AR7]route-policy Import-connect permit node 10
Info: New Sequence of this List.
[AR7-route-policy]if-match acl 2001
[AR7-route-policy]
[AR7-route-policy]bgp 400
[AR7-bgp]import-route direct route-policy Import-connect 

[AR7-bgp]dis bgp routing-table 

 BGP Local router ID is 37.1.1.7 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 7
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   7.7.7.7/32         0.0.0.0         0                     0      ?
 *>   37.1.1.0/24        0.0.0.0         0                     0      ?
 *>   37.1.1.7/32        0.0.0.0         0                     0      ?
 *>   44.44.44.44/32     37.1.1.3                              0      100 200i
 *>   77.77.77.77/32     0.0.0.0         0                     0      ?
 *>   127.0.0.0          0.0.0.0         0                     0      ?
 *>   127.0.0.1/32       0.0.0.0         0                     0      ?
[AR7-bgp]


[AR3-bgp]dis bgp routing-table 

 BGP Local router ID is 3.3.3.3 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 4
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   7.7.7.7/32         37.1.1.7        0                     0      400?
      37.1.1.0/24        37.1.1.7        0                     0      400?
 *>   44.44.44.44/32     35.1.1.5                              0      200i
 *>   77.77.77.77/32     37.1.1.7        0                     0      400?
[AR5]dis bgp routing-table 

 BGP Local router ID is 45.1.1.5 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 3
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>   7.7.7.7/32         35.1.1.3                              0      100 400?
 *>i  44.44.44.44/32     4.4.4.4         0          100        0      i
 *>   77.77.77.77/32     35.1.1.3                              0      100 400?
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值