Juniper
來自 Quagga 路由器的瞻博網路 OSPF 子網不匹配
我正在嘗試在 Juniper MX80 和 Quagga 路由器之間設置 OSPF 區域。Quagga 路由器配置了 OSPF,並在 hello 數據包中通告了網路 199.192.100.0/28。但瞻博網路 MX80 拒絕它並出現以下錯誤:
1 月 22 日 04:14:38.371296 OSPF 數據包被忽略:來自 intf ae0.0 區域 0.0.0.0 上 199.192.100.2 的子網不匹配 1 月 22 日 04:14:38.371515 OSPF rcvd Hello 199.192.100.2 -> 224.0.0.5(ae0.0 IFL 336 區域 0.0.0.0) 1 月 22 日 04:14:38.371538 版本 2,長度 44,ID 10.10.90.4,區域 0.0.0.0 1 月 22 日 04:14:38.371559 校驗和 0x0,authtype 0 1 月 22 日 04:14:38.371581 遮罩 255.255.255.240,hello_ivl 10,opts 0x2,prio 1 1 月 22 日 04:14:38.371602 dead_ivl 40,DR 199.192.100.2,BDR 0.0.0.0
配置的相關部分是:
瞻博網路 MX80:
ashinn@mx2# 顯示介面 ae0 聚合乙太選項 { 拉克{ 積極的; } } 單元 0 { 家庭網{ 地址 199.192.100.253/30; } } ashinn@mx2# 顯示協議 ospf 出口重新分配連接; 區域 0.0.0.0 { 區域範圍 199.192.100.0/28; 介面 xe-0/0/1.0; 界面 ae0.0 { 介面型p2p; } }
介面ae0.0是面向Quagga路由器bond0介面的介面:
! 介面鍵0 ip ospf 成本 50 ipv6 nd 抑制-ra ! 路由器ospf 日誌鄰接變化 重新分配核心 重新分配連接 網路 199.192.100.0/28 區域 0.0.0.0 鄰居 199.192.100.253 !
以及bond0的Quagga介面:
[ashinn@lb2 ~]$ ip addr show dev bond0 8:bond0:man 1500 qdisc noqueue state UP 連結/乙太 00:25:90:27:8a:be brd ff:ff:ff:ff:ff:ff inet 199.192.100.254/30 brd 199.192.100.255 範圍全球債券0 inet 199.192.100.2/28 範圍全球債券0 inet6 fe80::225:90ff:fe27:8abe/64 範圍連結 valid_lft 永遠首選_lft 永遠
我試過沒有
neighbor statement
在 Quagga 中,也嘗試過ip ospf network point-to-point
在 Quagga 中設置。兩者似乎都沒有任何區別。我發現這篇文章http://kb.juniper.net/InfoCenter/index?page=content&id=KB23533&cat=T1600_1&actp=LIST&showDraft=false似乎解釋了同樣的問題。但它只建議糾正子網遮罩不匹配。這種不匹配可能在哪裡?如果它與 /30 點對點介面子網衝突,那為什麼?
問題是您在 Quagga 的 OSPF 中配置了錯誤的子網。您需要 /30 作為網路聲明:
network 199.192.100.252/30 area 0.0.0.0
network 語句告訴 Quagga 在哪個介面上啟用 OSPF。每個具有該子網 IP 的介面都將啟用 OSPF。
同樣, 199.192.100.2/28 可能不應該在該 bond0 設備上。嘗試將其放在 lo 介面上,並告訴該介面是被動介面。
像這樣:
! interface bond0 ip ospf cost 50 ipv6 nd suppress-ra ! router ospf log-adjacency-changes redistribute kernel redistribute connected network 199.192.100.252/30 area 0.0.0.0 network 199.192.100.0/28 area 0.0.0.0 passive-interface lo neighbor 199.192.100.253 !
另外我建議將 MX80 和 Quagga 之間的 OSPF 介面模式設置為點對點。這將加快收斂時間。