OSPF配置實驗(一)


單區域OSPF

命令:

R1(config)#router ospf 1        //啟動OSPF進程

R1(config-router)#router-id 1.1.1.1        //配置路由器ID

R1(config-router)#network 172.16.1.0 0.0.0.255 area 0        //通告直連網絡

R1(config-router)#network 172.16.1.0 255.255.255.0 area 0        //通告直連網絡

說明:網絡地址的后面即可以跟通配符掩碼,在高版本IOS中也可以跟網絡掩碼,IOS會自動轉換成通配符掩碼。

 

R1(config)#router ospf 1

R1(config-router)#router-id 1.1.1.1

R1(config-router)#network 172.16.1.0 0.0.0.255 area 0

R1(config-router)#network 172.16.12.0 0.0.0.255 area 0

R2(config)#router ospf 1

R2(config-router)#router-id 2.2.2.2

R2(config-router)#network 172.16.2.0 0.0.0.255 area 0

R2(config-router)#network 172.16.12.0 0.0.0.255 area 0

R2(config-router)#network 172.16.23.0 0.0.0.255 area 0

R3(config)#router ospf 1

R3(config-router)#router-id 3.3.3.3

R3(config-router)#network 172.16.3.0 0.0.0.255 area 0

R3(config-router)#network 172.16.23.0 0.0.0.255 area 0

R3(config-router)#network 172.16.34.0 0.0.0.255 area 0

R4(config)#router ospf 1

R4(config-router)#router-id 4.4.4.4

R4(config-router)#network 172.16.4.0 0.0.0.255 area 0

R4(config-router)#network 172.16.34.0 0.0.0.255 area 0

 

說明:

1.OSPF路由進程ID的范圍在1-65535之間,而且只有本地含義,不同路由器的路由進程ID可以不同。如果要想啟

  動OSPF路由進程,至少確保有一個接口是up的。同一台路由器上可以啟動多個OSPF進程,但會消耗更多的CPU

  和內存等資源。

2.區域ID是0-4294967295的數,也可以是IP地址的格式A.B.C.D。當網絡區域為0或0.0.0.0時稱為主干區域。

3.Router ID選擇遵循如下順序:

  1>最優先的是在OSPF進程中使用“router-id”指定了RID;

  2>如果沒有在OSPF進程中指定RID,則選擇IP地址最大的環回接口的IP地址為RID;

  3>如果沒有環回接口,則選擇活動的IP地址最大的物理接口的IP地址為RID。

     ①如果使用“secondary”配置IP地址時,該地址不起作用,即不參與RID競選;

     ②使用“router-id”后,應使用命令“clear ip ospf process”重置ospf進程,新配置的RID才能生效;

     ③2、3步只有在下次重啟路由器時才會生效,即后來加入大的IP地址也不能選舉為RID直到路由器重啟。

4.Router ID重新選舉規則:

  1>使用“router-id”和“clear ip ospf process”命令;

  2>重啟路由器(不一定)。

 

實驗調試

R1#show ip route ospf 1        //查看OSPF路由表

以上輸出結果表明在同一個區域內,通過OSPF路由協議學習到的路由條目用代碼“O”表示。

OSPF度量值cost計算公式 = 所有鏈路入接口的cost之和;

接口cost計算公式 = 108/帶寬(bps)取整;環回接口的cost值為1。

說明:

1.環回接口所在網絡的OSPF路由條目的掩碼長度都是32位,這是環回接口的特性,盡管通告了24位,解決的辦法

  是在環回接口下修改網絡類型為“Point-to-Point”這樣收到的路由條目的掩碼長度和通告的就能一致:

  R1(config-if)#ip ospf network point-to-point        //設置網絡類型為點到點網絡

  

  OSPF定義了6種網絡類型,分別為:點對點、廣播多路訪問(BMA)、非廣播多路訪問(NBMA)、點對多點、環回接

  口、虛擬鏈路(Virtual Links)。
2.路由條目“172.16.4.4/32”的度量值為“193”,到路由器R1經過的入接口包括:R4的loopback0、R3的

  S0/0、R2的S0/1及R1的S0/0,所以計算如下:1+108/1544000+108/1544000+108/1544000=193。也可以直接通過

  命令“ip ospf cost”配置接口的cost值,並且它是優先計算的cost值的,命令如下:
  R1(config-if)#ip ospf cost 64        //設置接口cost為64

  
R1#show ip protocols        //查看啟用的路由協議


R1#show ip ospf 1        //可查看OSPF進程ID、RID、OSPF區域信息以及上次計算SPF算法的時間

R1#show ip ospf interface        //查看運行OSPF接口的信息


R1#show ip ospf neighbor        //查看OSPF鄰居表的基本信息

 

 

OSPF鄰居關系不能建立的常見原因:

1.Hello間隔和Dead間隔不同;

  1>同一鏈路上的Hello間隔和Dead間隔必須相同才能建立鄰居關系;

    

  2>默認時,Dead間隔是Hello間隔的4倍。可以在接口下通過如下命令調整:

    R1(config-if)#ip ospf hello-intrval 10        //設置Hello包發送間隔為10s

    R1(config-if)#ip ospf dead-interval 40        //設置Dead時間為40s

    

2.區域ID不一樣;

3.特殊區域(如stub、nssa等)區域類型不匹配;

4.認證類型或密碼不一致;

5.路由器ID相同;

6.Hello包被ACL拒絕;

7.鏈路上的MTU不匹配;

8.接口下OSPF網絡類型不匹配。
R1#show ip ospf database        //查看OSPF鏈路狀態數據庫的信息



廣播多路訪問鏈路上的OSPF

命令:

R1(config-router)#auto-cost reference-bandwidth 1000 //修改OSPF計算度量值的參考帶寬,單位MB/s


R1(config)#router ospf 1

R1(config-router)#auto-cost reference-bandwidth 1000

R2(config)#router ospf 1

R2(config-router)#auto-cost reference-bandwidth 1000
R3(config)#router ospf 1

R3(config-router)#auto-cost reference-bandwidth 1000
R4(config)#router ospf 1

R4(config-router)#auto-cost reference-bandwidth 1000
說明:“auto-cost reference-bandwidth”命令是修改計算OSPF度量值參考帶寬的。如果以太口帶寬為千兆,而采用默認的百兆參考帶寬,計算出來的cost是0.1,這顯然是不太合理的。修改參考帶寬要在路由器內所有的OSPF路由器上配置,目的是確保參考標准是相同的。

另外,當執行命令“auto-cost reference-bandwidth”時,系統也會提示如下信息:

OSPF配置實驗(一)
實驗調試
R4#show ip ospf neighbor        //分別在路由器R4和R1上執行該命令

OSPF配置實驗(一)
以上輸出表明在該廣播多路訪問網絡中,路由器R4是DR,路由器R3是BDR,路由器R1和路由器R2是DROTHER。

說明:

1.DR和BDR有自己的組播地址224.0.0.6;

2.DR和BDR的選舉是以各網絡為基礎的,也就是說DR和BDR選舉是路由器的接口特性,而不是整個路由器的特性;

3.DR選舉是非搶占的,除非人為地重新選舉。

4.DR選舉的原則:

  ①首要因素是時間,最先啟動的路由器會啟動一個Waite Timer計時器(Cisco規定是40s),在計時器超時前如

    果沒有新的OSPF路由器啟動,它就被選舉為DR,如果有新的路由器啟動那么它們將按照②、③進行選舉;
  ②如果同時啟動,或者重新選舉,則看接口優先級(范圍為0-255),優先級最高的被選舉成DR,默認情況下,

    多路訪問網絡的接口優先級為1,點到點網絡接口優先級為0,如果接口優先級被設置為0,那么該接口將不

    參與DR選舉,修改接口優先級命令是“ip ospf priority”:

  R1(config-if)#ip ospf priority 150        //修改端口優先級為150

  OSPF配置實驗(一)

  ③如果同時啟動,而優先級相同,則最后看RID,RID最高的被選舉成DR。

5.重新選舉DR/BDR的方法:

  ①重啟路由器(不一定);

  ②“clear ip ospf process”(不一定)。

R4#show ip ospf int f0/0        //分別在路由器R4和R1上執行該命令

OSPF配置實驗(一)
從上面的路由器R1和路由器R4的輸出得知,鄰居關系和鄰接關系是不能混為一談的,鄰居關系是指達到2-Way狀態的兩台路由器,而鄰接關系是指達到FULL狀態的兩台路由器。

 

OSPF區域認證

命令

區域簡單口令認證:

R1(config-router)#area 0 authentication        //區域0啟用簡單口令認證

R1(config-if)#ip ospf authentication-key cisco        //配置認證密碼

區域MD5認證:

R1(config-router)#area 0 authentication message-digest        //區域0啟用MD5認證

R1(config-if)#ip ospf message-digest-key 1 md5 cisco        //配置認證Key ID及密匙

OSPF配置實驗(一)

區域簡單口令認證

R1(config)#router ospf 1

R1(config-router)#area 0 authentication

R1(config)#int s0/0

R1(config-if)#ip ospf authentication-key cisco

R2(config)#router ospf 1

R2(config-router)#area 0 authentication

R2(config)#int s0/0

R2(config-if)#ip ospf authentication-key cisco

實驗調試

R1#show ip ospf
OSPF配置實驗(一)
以上輸出表明區域0采用了簡單口令認證。

R1#show ip ospf int s0/0
OSPF配置實驗(一)
以上輸出最后一行信息表明該接口啟用了簡單口令認證。

R1#debug ip ospf packet
OSPF配置實驗(一)
以上輸出表明接收到認證類型為1的Hello數據包。

認證:

1.如果R1區域0沒有啟用認證,而R2區域0啟用簡單口令認證,則R2會出現下面的信息:

R2#debug ip ospf events
OSPF配置實驗(一)
2.如果R1和R2的區域0都啟用簡單口令認證,但R2接口下沒有配置密碼或密碼錯誤,則R2會出現下面的信息:

R2#debug ip ospf events

區域MD5認證

R1(config)#router ospf 1

R1(config-router)#area 0 authentication message-digest

R1(config)#int s0/0

R1(config-if)#ip ospf message-digest-key cisco

R2(config)#router ospf 1

R2(config-router)#area 0 authentication message-digest

R2(config)#int s0/0

R2(config-if)#ip ospf message-digest-key cisco
實驗調試
R1#show ip ospf


以上輸出表明區域0采用了MD5認證。

R1#show ip ospf int s0/0
OSPF配置實驗(一)

以上輸出最后兩行信息表明該接口啟用了MD5認證,而且使用密鑰ID為1進行認證。

R1#debug ip ospf packet

以上輸出表明接收到認證類型為2,Key ID為1,序列號為0x3C7ECCC1的Hello數據包。

認證

1.如果R1的區域0啟用MD5認證,而R2的區域0啟用簡單口令認證,則R2會出現下面的信息:

R2#debug ip ospf events
OSPF配置實驗(一)
2.如果R1和R2的區域0都啟用MD5認證,但R2的接口下沒配置Key ID和密碼或錯誤密碼,則R2會出現下面的信息:
R2#debug ip ospf events

OSPF配置實驗(一)

OSPF接口認證

命令

接口簡單口令認證:

R1(config-if)#ip ospf authentication        //接口啟用簡單口令認證

R1(config-if)#ip ospf authentication-key cisco        //配置認證密碼

接口MD5認證:

R1(config-if)#ip ospf authentication message-digest        //接口啟用MD5認證

R1(config-if)#ip ospf message-digest-key 1 md5 cisco        //配置認證Key ID及密匙

OSPF配置實驗(一)

接口簡單口令認證

R1(config)#int s0/0

R1(config-if)#ip ospf authentication

R1(config-if)#ip ospf authentication-key cisco

R2(config)#int s0/0

R2(config-if)#ip ospf authentication

R2(config-if)#ip ospf authentication-key cisco

實驗調試

R1#show ip ospf int s0/0

OSPF配置實驗(一)

以上輸出最后一行信息表明該接口啟用了簡單口令認證。

R1#debug ip ospf packet

OSPF配置實驗(一)
以上輸出表明接收到認證類型為1的Hello數據包。

認證:

1.如果R1的s0/0沒有啟用認證,而R2的s0/0啟用簡單口令認證,則R2會出現下面的信息:

R2#debug ip ospf eventsOSPF配置實驗(一)

2.如果R1和R2的s0/0都啟用簡單口令認證,但R2的s0/0沒有配置密碼或密碼錯誤,則R2會出現下面的信息:

R2#debug ip ospf events


接口MD5認證

R1(config)#int s0/0

R1(config-if)#ip ospf authentication message-digest

R1(config-if)#ip ospf message-digest-key cisco

R2(config)#int s0/0

R2(config-if)#ip ospf authentication message-digest

R2(config-if)#ip ospf message-digest-key cisco
實驗調試
R1#show ip ospf int s0/0
OSPF配置實驗(一)
以上輸出最后兩行信息表明該接口啟用了MD5認證,而且使用密鑰ID為1進行認證。

R1#debug ip ospf packet
OSPF配置實驗(一)
以上輸出表明接收到認證類型為2,Key ID為1,序列號為0x3C7EC76D的Hello數據包。

認證

1.如果R1的s0/0啟用MD5認證,而R2的s0/0啟用簡單口令認證,則R2會出現下面的信息:

R2#debug ip ospf events


2.如果R1和R2的s0/0都啟用MD5認證,但R2的s0/0沒配置Key ID和密碼或錯誤密碼,則R2會出現下面的信息:
R2#debug ip ospf events
OSPF配置實驗(一)
默認路由再發布(本地:靜態默認路由 S*;其它:通告缺省默認外部路由 O*E2)

OSPF配置實驗(一)

命令:

R1(config)#ip route 0.0.0.0 0.0.0.0 loopback 1        //添加靜態默認路由

R1(config)#router ospf 1

R1(config-router)#default-information originate        //再發布默認路由

說明:“default-information originate”命令后面可以加可選的“always”參數,如果不使用該參數,路由器上必須存在一條默認路由,否則該命令不產生任何效果。如果使用該參數,無論路由器上是否存在默認路由,路由器都會向OSPF區域內注入一條默認路由。

實驗調試

R4#show ip route


以上R4路由表的輸出表明,通過命令“default-information originate”確實可以向OSPF區域注入“O*E2”的默認路由。同樣,R2、R3的路由表中也包含一條“O*E2”的默認路由。

R4#show ip ospf database


通過查看R4的拓撲結構數據庫可以看到,確實從外面注入了一條類型5的LSA。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM