Jun 27, 2007

'bgp always-compare-med' vs 'bgp deterministic-med'

這兩個指令看似大同小異,分開使用有不同的結果,合併使用也有不同結果,著實讓人摸不清楚,就算是很有經驗的BGP網管人員可能也無法完全說明白這兩個指令共同運作的來龍去脈,因此我希望可以留下一些個人的見解留在網路上給大家參考:


bgp always-compare-med

Enabling the bgp always-compare-med command ensures the comparison of the MED for paths from neighbors in different autonomous systems.

在預設情況下,MED只用於比較來自相同來源AS路由的優劣;透過這個"bgp always-compare-med"指令的啟用,MED也可以被用來在不同來源的AS之間加以比較路由的好壞。如果使用這個指令的話,同一個AS裏面所有的路由器都應該要啟用這個特色,不然的話,有可能會發生loop的情況。


bgp deterministic-med

Enabling the bgp deterministic-med command ensures the comparison of the MED variable when choosing routes advertised by different peers in the same autonomous system. The bgp always-compare-med command is useful when multiple service providers or enterprises agree on a uniform policy for setting MED.

如果使用了"bgp deterministic-med"這個指令,路由器將會先將BGP路由根據來源AS加以分組之後,分別選出best route然後再將這些各分組選出的best route依序兩兩比較,依此原則選出最終的best route。


Note: The bgp deterministic-med and bgp always-compare-med commands are not enabled by default. Also, the two commands are separate; enabling one does not automatically enable the other.


我們拿下列的路由表來當成範例加以比較,依照不同的情況來選出best route

entry 1 : AS 65500, med 150, external, rid 192.168.13.1
entry 2 : AS 65100, med 200, external, rid 1.1.1.1
entry 3 : AS 65500, med 100, internal, rid 192.168.8.4

Note: BGP是利用兩個兩個路由一組的方式來比較單一目的地位址,由最新的entry開始再依序跟次新的entry加以比較(也就是由上而下的方式)。比方說entry 1跟entry 2先比較,選出較好的路由之後再跟entry 3加以比較,依此類推。

我們緊接著來看這兩個指令共同運作的幾種情況:

1)bgp always-compare-med DISABLED, bgp deterministic-med DISABLED

=> BGP先比較entry 1和entry 2。Entry 2被選出為較好的路由,因為它擁有較低的router-ID。因為來自於不同的AS,因此沒有檢查MED。接著entry 2跟entry 3一起比較。BGP最後選擇entry 2當成best path因為它是external route。


2)bgp always-compare-med ENABLED, bgp deterministic-med DISABLED

=>BGP先比較entry 1和entry 2。雖然分別屬於不同的AS,但是因為bgp always-compare-med指令的啟用,因此會針對MED加以比較。因為entry 1有較低的MED數值,因此entry 1被選成較好的路由。接著,BGP針對entry 1和entry 3加以比較。因為entry 1和entry 3都來自於相同的AS因此再次比較MED。最後BGP選出entry 3成為best path。


3)bgp always-compare-med DISABLED, bgp deterministic-med ENABLED

=>BGP根據來自相同AS的路由加以分組並且在每一組中選出最好的路由。BGP Table就會像是以下的情況:

entry 1 : AS 65100, med 200, external, rid 1.1.1.1
entry 2 : AS 65500, med 100, internal, rid 192.168.8.4
entry 3 : AS 65500, med 150, external, rid 192.168.13.1

以上例來說,BGP將路由依據來源AS分為兩組AS65100和AS65500。BGP在每組中選出最佳路由。Entry 1是AS65100這一組中唯的路由,因此成為AS65100的最佳路由。Entry 2是AS65500這一組中的最佳路由,因為entry 2的MED小於entry 3。接著BGP比較entry 1和entry 2,因為這兩個entries來自於不同的AS,因此在比較路由時不考慮MED。最後EBGP路由勝過IBGP路由,因此entry 1成為最佳路由。


4)bgp always-compare-med ENABLED, bgp deterministic-med ENABLED

=>BGP將路由依據來源AS分為兩組AS65100和AS65500。BGP在每組中選出最佳路由。Entry 1是AS65100這一組中唯一的路由,因此成為AS65100的最佳路由。Entry 2是AS65500這一組中的最佳路由,因為entry 2的MED小於entry 3。BGP接著利用MED來比較entry 1和entry 2,結果entry 2被選成最佳路由。

Jun 26, 2007

BGP Regular Expression

在學習BGP的過程中,在Cisco官網及相關Document CD中最缺乏的就是Regular Expression明確的範例解說,大都只有文字說明,實際的應用及解釋相對來說比較不容易看到,因此我趁此機會將部份的Regular Expression加註中文說明,希望對於我們這種非英語系國家的同學來說可以比較容易了解每個符號的意義。

^436 : 緊接在"^"之後的數字436表示AS-Path中若是以436為起始就會被符合
如: 436 123 456, 436 12, 436 100 100 200

436$ : 在"$"之前的436表示AS-Path中若是以436為結尾就會被符合
如: 100 200 436, 12 436, 120 320 41 436

^$ : 代表Local送出的BGP路由,因為路由在尚未被BGP Boundary Router送出之前,AS-Path是空的,因此可以利用"^$"來代表

_436_ : 表示AS-Path中若是有字串為436(前後有空白),而且可能是以436為起始或是以436為結尾就會被符合(_可代表空白、起始、結尾或是逗號",")
如: 436 100, 100 436, 102 436 200

[1-5] : 表示單一字元的範圍如果是1~5都符合條件,也可以表示成[12345]

(_436)? : 在"?"之前的元素(ATOM),也就是小括弧內的字串包含" "(在這樣的Regular Expression中,通常"_"會用來代表空白)+"436"可以出現0次或1次

(_436)* : 在"*"之前的元素(ATOM),也就是小括弧內的字串包含" "(在這樣的Regular Expression中,通常"_"會用來代表空白)+"436"可以出現0次或連續多次

(_436)+ : 在"+"之前的元素(ATOM),也就是小括弧內的字串包含" "(在這樣的Regular Expression中,通常"_"會用來代表空白)+"436"可以出現1次或連續多次

23.4 : "."可以代表單一字元或是空白,因此AS-Path中包含2304,2314,...,2394等字串都會被符合,甚至像是23 41, 123 456也可以被符合

12|34 : "|"可以代表"or",因此AS-Path中包含12 or 34的字串,都會被符合

.* : 代表所有的AS-Path組合都會被符合(All)

^\(123 : 代表緊接在"\"之後的字元"("是特殊符號必須完全符合,通常這樣的表示法是特意用來符合BGP Confederation AS-Path(在AS-Path中會使用類似(65001 65002)這樣的格式來代表內部Confederation AS-Path)或是Aggregate w/ AS-SET參數(在AS-Path中會使用類似{1,13}這樣的格式來代表路由合併前的AS-Path Information為AS1 & AS13)時會使用到的( ) or { }特殊字元
如: (123 132) 11, (123) 45, (123 456 321)

^([0-9]+)(_\1)*$ : "\1"代表該Regular Expression中的第1個未明確指定的變數,在本例中可以拆解為"[0-9]+"代表至少有一個或多個字元,而且每個字元範圍可以從0到9不限,因此可以把"([0-9]+)"看成是任意的單一AS-Path;而"\1"就等於是"([0-9]+)"的變數,而"(_\1)*"的組合表示前一個元素之後可以接著重覆出現0次或多次,因此透過這樣的組合可以產生符合各種相同字串重覆出現多次的情況(也就可以用來過濾於各種不同Customer AS使用AS-Path Prepend來調整AS-Path長度)
如:123 123 123, 444 444, 12 12 12 12, 456 456 456 456

Jun 24, 2007

BGP Dual AS Configuration : neighbor local-as 參數釋疑(Part 4)

replace-as

Prepends only the local AS number to the AS-path attribute. The AS number from the local BGP routing process is not prepended.

基本上我覺得這一段話真的很像英文文言文,我看了很久還是看不懂它所要表達的意義…我看我們還是來看看實際實驗結果來檢查AS-Path的變化吧。

網路架構圖:



在R2上直接再加上replace-as這個參數:

R2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#router bgp 100
R2(config-router)# neighbor 192.168.1.10 local-as 200 no-prepend replace-as
00:16:35: %SYS-5-CONFIG_I: Configured from console by console
00:16:35: %BGP-5-ADJCHANGE: neighbor 192.168.1.10 Down Local AS change[OK]
00:17:14: %BGP-5-ADJCHANGE: neighbor 192.168.1.10 Up
R2#

接著我們來看看每個Router上的BGP Table

R1#sh ip bgp
BGP table version is 8, local router ID is 10.3.3.11
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 0.0.0.0 0 32768 i
*>i10.3.3.22/32 192.168.1.2 0 100 0 i
*>i10.3.3.33/32 192.168.1.10 0 100 0 300 i
* i192.168.1.0/30 192.168.1.2 0 100 0 ?
*> 0.0.0.0 0 32768 ?
*>i192.168.1.8/30 192.168.1.2 0 100 0 ?

R2#sh ip bgp
BGP table version is 8, local router ID is 10.3.3.22
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*>i10.3.3.11/32 192.168.1.1 0 100 0 i
*> 10.3.3.22/32 0.0.0.0 0 32768 i
*> 10.3.3.33/32 192.168.1.10 0 0 300 i
* i192.168.1.0/30 192.168.1.1 0 100 0 ?
*> 0.0.0.0 0 32768 ?
* 192.168.1.8/30 192.168.1.10 0 0 300 ?
*> 0.0.0.0 0 32768 ?

R3#sh ip bgp
BGP table version is 12, local router ID is 10.3.3.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 192.168.1.9 0 200 i
*> 10.3.3.22/32 192.168.1.9 0 0 200 i

*> 10.3.3.33/32 0.0.0.0 0 32768 i
*> 192.168.1.0/30 192.168.1.9 0 0 200 ?
* 192.168.1.8/30 192.168.1.9 0 0 200 ?
*> 0.0.0.0 0 32768 ?

各位可以仔細觀察一下這幾個BGP Table中的AS-Path變化,不論是R1, R2 or R3,AS-Path都只有一個AS了,因此各位可以想像成是當R2 advertise BGP routes到R1時,只prepend AS200而不再prepend AS100,也就是只利用AS200直接"replace" AS100,這樣各位會比較容易記起來!



dual-as

Configure the EBGP neighbor to establish a peering session using the real AS number(from the local BGP routing process) or by using the AS number configured with the ip-address argument(local-as)

最後,我們來談到dual-as這個參數,這個參數有沒有使用對於BGP Table沒有太大的差異,事實上這個參數是讓neighbor可以同時接受使用不同的AS來建立bgp session(在本例中,R2可以使用AS100 or AS200來跟R3建立BGP session,也就是R3那端的bgp configure中的neighbor X.X.X.X remote-as後面可接100 or 200);不過就我實驗的結果來看,似乎從idle到established完全的狀態會比一般的設定來得久,超過50秒甚至超過1分鐘以上才完成,各位如果有任何這方面的實務使用心得,歡迎給我一些回饋,讓更多人對這些參數的應用有更深一步的認知。

BGP Dual AS Configuration : neighbor local-as 參數釋疑(Part 3)

no-prepend

Does not prepend the local AS number to any routes recevied from the EBGP neighbor.

網路架構圖:



根據我們Part 2的實驗結果我們可以知道,當我們加上local-as之後,不論是接收到的EBGP或是轉送出去的IBGP都會被prepend上local-as(在本例中為200)。而在local-as之後再接著no-prepend這個參數的話,則是當接收到EBGP路由時不再prpepdn local-as,我想透過我的中文說明大家會比較了解Cisco的文言文在說些什麼,多說無益,直接作Lab來看結果,大家就可以了解了!

以下是我們在R2上設定步驟:

R2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#router bgp 100
R2(config-router)#nei
R2(config-router)#neighbor 192.168.1.10 local-as 200 no-pre
R2(config-router)#neighbor 192.168.1.10 local-as 200 no-prepend
R2(config-router)#00:53:03: %BGP-5-ADJCHANGE: neighbor 192.168.1.10 Down Local A
S change => 即使只是修改local-as之後的參數也會導致BGP session中斷喔,所以請小心!!!

接著我們再來看看各個Router上的BGP Table:

R1#sh ip bgp
BGP table version is 20, local router ID is 10.3.3.11
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 0.0.0.0 0 32768 i
*>i10.3.3.22/32 192.168.1.2 0 100 0 i
*>i10.3.3.33/32 192.168.1.10 0 100 0 300 i
* i192.168.1.0/30 192.168.1.2 0 100 0 ?
*> 0.0.0.0 0 32768 ?
*>i192.168.1.8/30 192.168.1.2 0 100 0 ?

R2#sh ip bgp
BGP table version is 8, local router ID is 10.3.3.22
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*>i10.3.3.11/32 192.168.1.1 0 100 0 i
*> 10.3.3.22/32 0.0.0.0 0 32768 i
*> 10.3.3.33/32 192.168.1.10 0 0 300 i
*> 192.168.1.0/30 0.0.0.0 0 32768 ?
* i 192.168.1.1 0 100 0 ?
* 192.168.1.8/30 192.168.1.10 0 0 300 ?
*> 0.0.0.0 0 32768 ?

R3#sh ip bgp
BGP table version is 24, local router ID is 10.3.3.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 192.168.1.9 0 200 100 i
*> 10.3.3.22/32 192.168.1.9 0 0 200 100 i

*> 10.3.3.33/32 0.0.0.0 0 32768 i
*> 192.168.1.0/30 192.168.1.9 0 0 200 100 ?
* 192.168.1.8/30 192.168.1.9 0 0 200 100 ?
*> 0.0.0.0 0 32768 ?

根據這些BGP Table的內容,我想大家都應該已經了解了吧,跟上一個Lab不同的結果,只有在R1,R2上的BGP routes as-path只剩下了AS300,再也看不到AS200的存在了!

BGP Dual AS Configuration : neighbor local-as 參數釋疑(Part 2)

Neighbor local-as

The neighbor local-as command is used to customize the AS-path attribute by adding and removing AS numbers for routes recevied from EBGP neighbors.

網路架構圖:



現在我們假設ISP A(R1/AS100)併購了ISP B(R2/AS200),因此ISP B(R2)原來的AS200將要改變成為AS100,但是為了不影響客戶的連線及BGP設定,我們必須使用BGP local-as這個參數來使用客戶受影響的層面減到最少的程度,但是Cisco對於R2修改BGP AS number時,跟客戶之間的BGP session至少會中斷40秒至1分鐘左右(假設你copy & paste的速度很快的話)避而不談,所以請各位不要以為可以神不知鬼不覺地轉換BGP AS,事情可是沒有想像中這麼完美的…

因此,我們知道大概在ISP B(R2)上至少有兩個動作要作:
1.修改BGP AS Number(同時ISP A(R1)上也要修改相對應的BGP neighbor config)
2.針對Customer(R3)的BGP neighbor中要加上local-as參數

設定如下:

R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#router bgp 100
R1(config-router)#neighbor 192.168.1.2 remote-as 100


R2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#no router bgp 200
R2(config)#router bgp 100
00:28:43: %BGP-5-ADJCHANGE: neighbor 192.168.1.10 Down BGP protocol initializati
on => 修改BGP AS Number一定會使得BGP session重啟
R2(config-router)# no synchronization
R2(config-router)# bgp log-neighbor-changes
R2(config-router)# network 10.3.3.22 mask 255.255.255.255
R2(config-router)# redistribute connected
R2(config-router)# neighbor 192.168.1.1 remote-as 100
R2(config-router)# neighbor 192.168.1.10 remote-as 300
R2(config-router)# neighbor 192.168.1.10 local-as 200
R2(config-router)# no auto-summary

那麼,我們接著來看看local-as對於BGP AS-Path的變化會是如何呢?

R1#sh ip bgp
BGP table version is 18, local router ID is 10.3.3.11
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 0.0.0.0 0 32768 i
*>i10.3.3.22/32 192.168.1.2 0 100 0 i
*>i10.3.3.33/32 192.168.1.10 0 100 0 200 300 i
* i192.168.1.0/30 192.168.1.2 0 100 0 ?
*> 0.0.0.0 0 32768 ?
*>i192.168.1.8/30 192.168.1.2 0 100 0 ?

R2#sh ip bgp
BGP table version is 6, local router ID is 10.3.3.22
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*>i10.3.3.11/32 192.168.1.1 0 100 0 i
*> 10.3.3.22/32 0.0.0.0 0 32768 i
*> 10.3.3.33/32 192.168.1.10 0 0 200 300 i
*> 192.168.1.0/30 0.0.0.0 0 32768 ?
* i 192.168.1.1 0 100 0 ?
* 192.168.1.8/30 192.168.1.10 0 0 200 300 ?
*> 0.0.0.0 0 32768 ?

R3#sh ip bgp
BGP table version is 18, local router ID is 10.3.3.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 192.168.1.9 0 200 100 i
*> 10.3.3.22/32 192.168.1.9 0 0 200 100 i

*> 10.3.3.33/32 0.0.0.0 0 32768 i
*> 192.168.1.0/30 192.168.1.9 0 0 200 100 ?
* 192.168.1.8/30 192.168.1.9 0 0 200 100 ?
*> 0.0.0.0 0 32768 ?

從以上的結果可以看得出來,不論是從R2送出或是從R2收到的BGP AS-Path都會prepend AS200,這就是只使用local-as時的AS-Path變化,緊接著我們再來看看如果後面再加上no-prepend這個參數會產生什麼樣的變化?

BGP Dual AS Configuration : neighbor local-as 參數釋疑(Part 1)

Cisco現在的教材真的是愈來愈難懂,文字一大堆卻又捨不得多放一些Figure或是每個Router的Routing Table來輔助說明,我花了一個晚上的時間才把neighbor local-as後面的幾個參數搞清楚…希望我的努力可以減少各位在學習上的挫折。

首先我利用了Dynamips來架設一個Virtual Lab來加以說明,各位有興趣的話,可以把以下的內容存成一個.net檔案之後來啟動dynamips(請切記要修改IOS實際的存在絕對目錄位址):
===============================================================
[localhost]

[[7200]]
image = C:\Program Files\Dynamips\images\c7200-k91p-mz.122-25.S9.extracted.bin
idlepc = 0x60843c10
npe = npe-400
ram = 128
ghostios = true # Enable or disable IOS ghosting globally for this lab. Can be overridden at the device defaults sections, or the device sections. Defaults to False.
mmap = false # mmap = true(use disk for ghost memory) or false(use real memory)
disk0 = 0
disk1 = 0
confreg = 0x2102

[[ROUTER R1]]
s1/0 = R2 s1/0
s1/1 = R3 s1/0

[[router R2]]
s1/1 = R3 s1/1

[[ROUTER R3]]
===============================================================

網路架構圖:



以下是R1(AS100), R2(原本屬於AS200後來被併購變成AS100) ,R3(AS300原本為AS200的客戶)的running-config(我只節錄重點的部份,其他的設定不重要);實際的Lab規劃連線是兩兩相連,但是為了簡化架構,因此我只讓R1接至R2,R2接至R3;每個Router上的Loopback interface當成是該AS中的BGP Network,藉此來看看BGP AS-Path在不同的參數之下所產生的變化:

R1(ISP A)
===============================================================
hostname R1
!
ip host R2 10.3.3.22
ip host R3 10.3.3.33
!
interface Loopback0
ip address 10.3.3.11 255.255.255.255
no clns route-cache
!
interface Serial1/0
description R2
ip address 192.168.1.1 255.255.255.252
serial restart-delay 0
clockrate 64000
no clns route-cache
!
router bgp 100
no synchronization
bgp log-neighbor-changes
network 10.3.3.11 mask 255.255.255.255
redistribute connected
neighbor 192.168.1.2 remote-as 200
no auto-summary
===============================================================

R2(ISP B)
===============================================================
hostname R2
!
ip host R1 10.3.3.11
ip host R3 10.3.3.33
!
!
interface Loopback0
ip address 10.3.3.22 255.255.255.255
no clns route-cache
!
interface Serial1/0
description R1
ip address 192.168.1.2 255.255.255.252
no fair-queue
serial restart-delay 0
clockrate 64000
no clns route-cache
!
router bgp 200
no synchronization
bgp log-neighbor-changes
network 10.3.3.22 mask 255.255.255.255
redistribute connected
neighbor 192.168.1.1 remote-as 100
neighbor 192.168.1.10 remote-as 300
no auto-summary
===============================================================

R3(Customer of ISP B)
===============================================================
hostname R3
!
ip host R1 10.3.3.11
ip host R2 10.3.3.22
!
interface Loopback0
ip address 10.3.3.33 255.255.255.255
no clns route-cache
!
interface Serial1/1
description R2
ip address 192.168.1.10 255.255.255.252
serial restart-delay 0
clockrate 64000
no clns route-cache
!
router bgp 300
no synchronization
bgp log-neighbor-changes
network 10.3.3.33 mask 255.255.255.255
redistribute connected
neighbor 192.168.1.9 remote-as 200
no auto-summary
===============================================================

好的,接下來我們來看看這三個Router上的BGP Table:

R1#sh ip bgp
BGP table version is 12, local router ID is 10.3.3.11
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 0.0.0.0 0 32768 i
*> 10.3.3.22/32 192.168.1.2 0 0 200 i
*> 10.3.3.33/32 192.168.1.2 0 200 300 i
* 192.168.1.0/30 192.168.1.2 0 0 200 ?
*> 0.0.0.0 0 32768 ?
*> 192.168.1.8/30 192.168.1.2 0 0 200 ?

R2#sh ip bgp
BGP table version is 6, local router ID is 10.3.3.22
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 192.168.1.1 0 0 100 i
*> 10.3.3.22/32 0.0.0.0 0 32768 i
*> 10.3.3.33/32 192.168.1.10 0 0 300 i
* 192.168.1.0/30 192.168.1.1 0 0 100 ?
*> 0.0.0.0 0 32768 ?
*> 192.168.1.8/30 0.0.0.0 0 32768 ?
* 192.168.1.10 0 0 300 ?

R3#sh ip bgp
BGP table version is 12, local router ID is 10.3.3.33
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
r RIB-failure, S Stale
Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path
*> 10.3.3.11/32 192.168.1.9 0 200 100 i
*> 10.3.3.22/32 192.168.1.9 0 0 200 i

*> 10.3.3.33/32 0.0.0.0 0 32768 i
*> 192.168.1.0/30 192.168.1.9 0 0 200 ?
* 192.168.1.8/30 192.168.1.9 0 0 200 ?
*> 0.0.0.0 0 32768 ?

以上是我們的事前環境準備工作,請各位看倌再緊接著來看看Part 2,如何啟用local-as參數~