① ospf 的五種網路類型
五種網路類型是:
1.廣播型網路(多路訪問)--必須選dr,bdr;自動確定鄰居
2.點到點網路--不選dr,bdr;自動確定鄰居
3.點到多點廣播--相當於每個點到點線路的集合,不選dr,bdr;自動確定鄰居
4.點到多點非廣播--不用選dr,bdr;但必須手動指定鄰居
5.nbma(非廣播多路訪問)--不用選dr,bdr;必須手動指定鄰居
總之,如果是多路訪問的網路,即廣播型網路,就必須要選舉出dr,bdr,同時鄰居關系通過發送hello包確定。
如果是非廣播型網路,就不用選舉dr,bdr,但由於不能發送hello包,所以必須手動地指定鄰居關系。
② CCNP之OSPF網路類型簡析
關於OSPF網路類型的相關文檔,隨便一搜就可以搜到很多,但是細讀後會發現,有些文檔講解的不夠透徹,有些文檔講解的比較零散,結合眾家之所長,以及自己多年的實戰經驗,最後總結一下,希望對大家有幫助,也希望各位大牛提出寶貴意見。 如果對你有所幫助,有錢的打賞,沒錢的點贊,剩下的自己看著辦。
1.1 OSPF網路類型誕生原因
OSPF協議是工作在三層網路層,其所運行的數據鏈路層對應的有多種物理鏈路類型,為了能夠適應數據鏈路層不同的網路環境,OSPF定義了四種網路類型。
OSPF所運行的數據鏈路層的鏈路類型有三種:點到點(P2P),廣播型,NMBA。
所對應的網路類型為:點到點(P2P),廣播(Broadcast),NBMA,虛鏈路。
(網上所謂的:五種網路類型或者是六種網路類型,這是由於在NBMA網路類型下,RFC和Cisco定義了OSPF在NBMA網路中的運行模式,我們也可以將這些運行模式看作是每一種網路類型。)
1.2 物理鏈路類型
三種主要物理鏈路類型的特點:
(1)點到點(P2P):路由設備的介面通過點對點的方式與另一台路由設備相連,使用HDLC或者PPP封裝。
(2)廣播型:廣播多路訪問,目前而言對應的主要是乙太網鏈路。
(3)NBMA(非廣播多路訪問):目前而言對應的是主要是幀中繼網路鏈路。
小知識點:廣播多路訪問和非廣播多路訪問的區別:
廣播多路訪問是指多台路由器通過一台交換機連接在一起,如果連接在交換機上的一台路由器發送一個廣播包,那麼連接在此交換機上的其他路由器也是可以收到此廣播包的。
NBMA一般是指路由器通過幀中繼網路連接在一起,如果路由器想發送包給其餘N個路由器,那麼就需要發送N個數據包,通過幀中繼網路上的N條PVC傳給對應的路由器,也就是發送數據包沒有廣播的能力。
1.3 OSPF網路類型
四種網路類型的特點:
1:點到點網路(P2P):當鏈路層採用PPP或者是HDLC封裝時,OSPF預設網路類型是P2P。此種網路類型的特點是:OSPF使用組播地址224.0.0.5發送協議報文。無需選舉DR和BDR。
2:廣播型網路(Broadcast):當鏈路層封裝為Ethernet、FDDI時,OSPF預設認為網路類型是廣播型。此種網路類型中,需要進行DR和BDR的選舉。DRothers使用224.0.0.6向DR和BDR發送協議報文,當DR接收到數據包並確認後,使用224.0.0.5泛洪數據包給其他的DRothers。
3:NBMA(Non-Broadcast Multiple Access)網路:當數據鏈路層封裝類型為FR,ATM時,OSPF預設認為網路類型為NBMA。在這種網路類型中,NBMA是不可以發送組播報文。
(請注意:當數據鏈路封裝為FR時,由於此種網路預設情況下路由器不發送廣播消息,那麼OSPF的以組播形式發送的LSA報文無法到達,由此會導致無法生成路由表,針對此問題,RFC以及Cisco均提出了解決方案,即提出了OSPF在幀中繼網路中的運行模式。關於這種解決方案,後續會有專門的文檔進行講解。)
4:虛鏈路:是點到點的一種特殊配置,在虛鏈路上OSPF是以單播的形式發送報文,並不在意鏈路是什麼類型,關鍵是虛鏈路兩段可以實現互通。
以上四種是OSPF基本的網路類型,在NBMA網路中,為了解決OSPF無法傳播組播報文而導致的OSPF無法運行的問題,RFC和Cisco提出了相對應的運行模式,這些運行模式對應的也可以看做是網路類型,在此進行一下簡單介紹,在後續文檔會有結合實驗配置的詳細介紹。
五種運行模式分別為:
non-broadcast,point-to-multipoint,point-to-multipoint
non-broadcast,P2P,Broadcast。
其中前兩種是RFC定義的,Cisco支持以上五種。
將上述五種運行模式看作是網路類型後,那麼除去與基本網路類型重疊的部分,所有的網路類型可以總計如下表格:
1.4 網路類型的修改
網路類型是可以在介面上進行修改的,修改的命令是:
router(config-if)#ip ospf network network_type #將該介面的OSPF網路類型設置為某一個網路類型。
其中network_type為point-to-point,broadcast,non-broadcast,point-to-multipoint,point-to-multipoint non-broadcast中的任意一種。
1.5 實驗驗證
實驗拓撲圖如下:
第一步:對R1和R2做基本的配置:
R1的基本配置為:
R1(config)#int s1/0
R1(config-if)#ip add 192.168.12.1 255.255.255.0
R1(config-if)#no shu
R1(config)#int lo 0
R1(config-if)#ip add 1.1.1.1 255.255.255.0
R1(config-if)#no shu
R1(config-if)#exit
R1(config)#router ospf 1
R1(config-router)#router-id 1.1.1.1
R1(config-router)#network 192.168.12.0 0.0.0.255 area 0
R1(config-router)#network 1.1.1.0 0.0.0.255 area 0
R2的基本配置為:
R2(config)#int s1/0
R2(config-if)#ip add
R2(config-if)#ip address 192.168.12.2 255.255.255.0
R2(config-if)#no shu
R2(config-if)#exit
R2(config)#int lo 0
R2(config-if)#no shutdown
R2(config-if)#ip add 2.2.2.2 255.255.255.0
R2(config-if)#exit
R2(config-router)#router-id 2.2.2.2
R2(config-router)#network 192.168.12.00.0.0.255 area 0
R2(config-router)#network 2.2.2.00.0.0.255 area 0
基本的配置完成之後,查看路由表並進行測試:
R2(config)#do show ip rou
C192.168.12.0/24 is directly connected,Serial1/0
1.0.0.0/32 is subnetted, 1 subnets
O1.1.1.1 [110/65] via 192.168.12.1,00:00:03, Serial1/0
2.0.0.0/24 is subnetted, 1 subnets
C2.2.2.0 is directly connected, Loopback0
R2#ping 1.1.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 1.1.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max =8/25/44 ms
由此基本的配置成功。
第二步:修改網路類型
(1) point-to-point
對上述拓撲圖完成基本的配置之後,不做任何網路類型修改,show相關內容。
R2#show ip ospf int s1/0
Serial1/0 is up, line protocol isup
Internet Address 192.168.12.2/24, Area 0
Process ID 1, Router ID 2.2.2.2, Network Type POINT_TO_POINT , Cost: 64
Transmit Delay is 1 sec, State POINT_TO_POINT
Timer intervals configured, Hello 10, Dead40, Wait 40, Retransmit 5
由此可以看出,當採用路由器的介面為串口時,默認的OSPF介面類型為point-to-point.
R2#show ip ospf neighbor
由此可以看出點到點的網路不進行DR和BDR的選舉。
(2)第二種網路類型:Broadcast
在R1和R2上分別作如下修改:
R1(config-if)#int s1/0
R1(config-if)#ip ospf network broadcast
R2config-if)#int s1/0
R2(config-if)#ip ospf network broadcast
修改後
R1#show ip os int s1/0
Serial1/0 is up, line protocol isup
Internet Address 192.168.12.1/24, Area 0
Process ID 1, Router ID 1.1.1.1, Network Type BROADCAST , Cost: 64
Transmit Delay is 1 sec, State BDR, Priority 1
Designated Router (ID) 2.2.2.2, Interface address 192.168.12.2
Backup Designated router (ID) 1.1.1.1, Interface address 192.168.12.1
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
oob-resync timeout 40
由此看出,介面的網路類型已經發生改變。
R1(config)#do show ip os ne
(3)non-broadcast
在R1和R2上分別作如下修改:
R1(config-if)#int s1/0
R1(config-if)#ip ospf network non-broadcast
R2config-if)#int s1/0
R2(config-if)#ip ospf network non-broadcast
查看R1的s1/0的介面類型,請注意黑體字部分。
R1(config-if)#do show ip os int s1/0
Serial1/0 is up, line protocol isup
Internet Address 192.168.12.1/24, Area 0
Process ID 1, Router ID 1.1.1.1, Network Type NON_BROADCAST , Cost: 64
Transmit Delay is 1 sec, State WAITING, Priority 1
No designated router on this network
No backup designated router on this network
Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5
oob-resync timeout 120
查看NBMA網路鄰居關系:
R1#show ip os neighbor
R1#
可以看出,沒有形成鄰居關系。這是由於NBMA網路不能發送廣播報文,所以需要手動指定鄰居。
R1(config)#router ospf 1
R1(config-router)#neighbor 192.168.12.2////只需要手動指定一端就可以
R1(config)#do show ip os nei
查看鄰居的建立關系:
R1(config)#do show ip os nei
(4)point-to-multipoint
在R1和R2上分別作如下修改:
R1(config-if)#int s1/0
R1(config-if)#ip ospf network point-to-multipoint
R2config-if)#int s1/0
R2(config-if)#ip ospf network point-to-multipoint
查看R1的s1/0的介面類型,請注意黑體字部分。
R1(config-if)#do show ip os int s1/0
Serial1/0 is up, line protocol is up
Internet Address192.168.12.1/24, Area 0
Process ID 1, Router ID1.1.1.1, Network Type POINT_TO_MULTIPOINT , Cost: 64
Transmit Delay is 1 sec,State POINT_TO_MULTIPOINT
Timer intervalsconfigured, Hello 30, Dead 120, Wait 120, Retransmit 5
oob-resync timeout 120
查看point-to-multipoint網路鄰居關系:
R1#show ip os nei
發現形成鄰居關系,但是不進行DR和BDR的選舉。
(5)point-to-multipoint no-broadcast
在R1和R2上分別作如下修改:
R1(config-if)#int s1/0
R1(config-if)#ip ospf network point-to-multipoint non-broadcast
R2config-if)#int s1/0
R2(config-if)#ip ospf network point-to-multipoint non-broadcast
查看R1的s1/0的介面類型,請注意黑體字部分。
R1(config-if)#do show ip os int s1/0
Serial1/0 is up, line protocol is up
Internet Address192.168.12.1/24, Area 0
Process ID 1, Router ID1.1.1.1, Network Type POINT_TO_MULTIPOINT , Cost: 64
Transmit Delay is 1 sec,State POINT_TO_MULTIPOINT
Timer intervalsconfigured, Hello 30, Dead 120, Wait 120, Retransmit 5
oob-resync timeout 120
Hello e in 00:00:28
這里比較特殊請注意,查看到介面類型為POINT_TO_MULTIPOINT,只有通過show run才可以看到真正的網路類型
查看point-to-multipoint non-broadcast網路鄰居關系:
R1#show ip os nei
R1#
可以看出沒有形成鄰居關系,這時候需要手動指定鄰居。
R1(config)#router os 1
R1(config-router)#nei 192.168.12.2
R1(config-router)#do show ip os nei
可以看出通過指定鄰居之後,鄰居形成。但是沒有DR和BDR的選舉。
通過上述實驗, OSPF 協議的網路類型的種類和特點,以及鄰居關系的建立更加清晰,網路類型的不同,那麼 hello 時間有可能不同,直接影響 OSPF 鄰居關系的建立。所以在不同的網路類型中,對於OSPF的配置要特別小心。