目錄
- 拓撲圖
- 環境介紹
- 覆盤實驗
- 總結
- 配置
- R3
- R4
- R1
- R2
拓撲圖
環境介紹
- 每臺路由器上都有looback0,比如R4是4.4.4.4/32,直連線口地址為10.1.34.4/24,其他路由器直連和looback口地址類似,R4上還有looback1,地址為44.44.44.44/24。
- R3和R4是EBGP鄰居關係,AS123內路由器是IBGP鄰居關係,並且AS123內啟用了IGP協議(OSPF),宣告直連和lo0.
- R3和R4之間是使用直連線口起鄰居,AS123內路由器是使用lo0起鄰居,即要修該更新源為lo0。
覆盤實驗
在R3和R4上配置EBGP鄰居關係,並且在R4上使用network宣告44.44.44.0/24進BGP,R3上能收到一條best的字首,R3將其傳遞給R1,R1收到的是非最佳化的字首。原因是下一跳不可達[1]。這時候可以使用以下辦法解決:
- 在R1上使用靜態路由,即目的10.1.34.4,下一跳10.1.13.3
- 在R3上將10.1.34.0的路由重分佈進OSPF,這樣執行了OSPF的R1就能學習到目的路由,使其最佳化
- 在R3上使用next-hop-self,更改下一跳為本地
假設我使用方法1,此時R1上字首變得best,但是此時不會將路由傳遞給R2,原因是IBGP的水平分割問題[2]。這時候可以使用下面方法解決:
- 全互聯
- 路由反射器
- 聯邦
假設我使用方法1,此時R2與R3建立了IBGP鄰居關係,此時R2學習到的字首不是best,原因任然是問題1,此時我們使用next-hop-self將下一跳改為R3的更新源地址,即3.3.3.3。這時,R2就會將該字首裝入路由表,即路由表裡有44.44.44.0/24的路由。假設,在R4上配置了預設路由指向R3,此時R2就能ping通44.44.44.44。
總結
字首為best時,才會進行裝[路由]表和傳遞給鄰居
配置
R3
router bgp 123
bgp log-neighbor-changes
neighbor 1.1.1.1 remote-as 123
neighbor 1.1.1.1 update-source Loopback0
neighbor 2.2.2.2 remote-as 123
neighbor 2.2.2.2 update-source Loopback0
neighbor 2.2.2.2 next-hop-self
neighbor 10.1.34.4 remote-as 400
!
router ospf 110
network 3.3.3.3 0.0.0.0 area 0
network 10.1.13.0 0.0.0.255 area 0
!
interface Loopback0
ip address 3.3.3.3 255.255.255.255
!
interface Ethernet0/0
ip address 10.1.13.3 255.255.255.0
duplex auto
!
interface Ethernet0/1
ip address 10.1.34.3 255.255.255.0
duplex auto
R4
interface Loopback0
ip address 4.4.4.4 255.255.255.255
!
interface Loopback1
ip address 44.44.44.44 255.255.255.0
!
interface Ethernet0/0
ip address 10.1.34.4 255.255.255.0
duplex auto
!
router bgp 400
bgp log-neighbor-changes
network 44.44.44.0 mask 255.255.255.0
neighbor 10.1.34.3 remote-as 123
!
ip route 0.0.0.0 0.0.0.0 10.1.34.3
R1
interface Loopback0
ip address 1.1.1.1 255.255.255.255
!
interface Ethernet0/0
ip address 10.1.12.1 255.255.255.0
duplex auto
!
interface Ethernet0/1
ip address 10.1.13.1 255.255.255.0
duplex auto
!
router ospf 110
network 1.1.1.1 0.0.0.0 area 0
network 10.1.12.0 0.0.0.255 area 0
network 10.1.13.0 0.0.0.255 area 0
!
router bgp 123
bgp log-neighbor-changes
neighbor 2.2.2.2 remote-as 123
neighbor 2.2.2.2 update-source Loopback0
neighbor 3.3.3.3 remote-as 123
neighbor 3.3.3.3 update-source Loopback0
!
ip route 10.1.34.0 255.255.255.0 10.1.13.3
R2
interface Loopback0
ip address 2.2.2.2 255.255.255.0
!
interface Ethernet0/0
ip address 10.1.12.2 255.255.255.0
duplex auto
!
router ospf 110
network 2.2.2.2 0.0.0.0 area 0
network 10.1.12.0 0.0.0.255 area 0
!
router bgp 123
bgp log-neighbor-changes
neighbor 1.1.1.1 remote-as 123
neighbor 1.1.1.1 update-source Loopback0
neighbor 3.3.3.3 remote-as 123
neighbor 3.3.3.3 update-source Loopback0
問題1 ↩︎
問題2 ↩︎