通H12-831題庫(kù)判斷題:OSPF/IS-IS/BGP機(jī)制邊界解析)
簡(jiǎn)介面向備考華為HCIP-DatacomH12-831認(rèn)證的考生這份2024年數(shù)通新題庫(kù)以PDF形式整理重點(diǎn)解決考試題目變動(dòng)后舊資料覆蓋不足、復(fù)習(xí)方向不清的問(wèn)題。壓縮包僅含1個(gè)PDF文件大小約327KB輕量便于在電腦或移動(dòng)設(shè)備上隨時(shí)查閱。內(nèi)容圍繞OSPF鄰居主從關(guān)系、OSPFv3接口通告、BGP路由策略與Update屬性、端口隔離、IS-IS鏈路限制及進(jìn)程隔離、filter-policy過(guò)濾對(duì)象、IS-IS引入OSPF默認(rèn)開(kāi)銷(xiāo)、鏈路聚合與堆疊可靠性、RSTP TC-BPDU、ACL與MQC等考點(diǎn)以判斷題和選擇題配合答案解析呈現(xiàn)便于對(duì)照錯(cuò)題回查概念。已有902人學(xué)習(xí)適合需要快速梳理831高頻知識(shí)點(diǎn)、檢驗(yàn)掌握程度并調(diào)整備考計(jì)劃的考生使用。1. 題庫(kù)的錯(cuò)題率為什么集中在「一個(gè)詞」上2024 數(shù)通 H12-831 題庫(kù)里最讓人頭疼的不是多選題而是判斷題。一道題只改一個(gè)詞——「所有」換成「部分」、「默認(rèn) 100」換成「默認(rèn) 0」、「只能」換成「可以」——答案就從 A 換成 B。很多人把這類(lèi)失分歸因于「背得不夠」但在教育考試的語(yǔ)境里題庫(kù)真正的價(jià)值不是提供標(biāo)準(zhǔn)答案而是迫使人把每個(gè)結(jié)論背后的作用點(diǎn)和邊界重新問(wèn)一遍這條命令在哪一層生效這個(gè)字段缺席會(huì)不會(huì)直接斷連這個(gè)機(jī)制在哪種鏈路上根本不成立。搞懂這三件事同一份題庫(kù)的復(fù)習(xí)效率遠(yuǎn)高于刷三遍搞不懂換一版新題庫(kù)照樣翻車(chē)。下面從幾個(gè)最典型的機(jī)制開(kāi)始拆。2. OSPF 主從選舉Router ID 大的一方憑什么拿走序列號(hào)控制權(quán)2.1 ExStart 狀態(tài)里的 MS-bit一次比較定勝負(fù)鄰居從 2-Way 走到 ExStart雙方都會(huì)發(fā) DD 報(bào)文而且都把 MS 位置 1都宣稱(chēng)自己是 Master。此時(shí)兩個(gè) DD 報(bào)文里的 DD Sequence Number 是各自隨機(jī)生成的兩者之間沒(méi)有任何關(guān)系。設(shè)備收到對(duì)端的 DD 后拿報(bào)文里攜帶的 Router ID 和自己的比大的一方勝出成為 Master之后才開(kāi)始正式交換 LSDB 摘要。這里有兩個(gè)容易記錯(cuò)的細(xì)節(jié)。第一比的是 DD 報(bào)文里的 Router ID 字段不是接口 IP、不是鏈路開(kāi)銷(xiāo)、更不是字符串字典序而是按無(wú)符號(hào) 32 位整數(shù)比較。第二Router ID 相等時(shí)沒(méi)有「平局」處理方案雙方都會(huì)認(rèn)為對(duì)方應(yīng)該讓步鄰居會(huì)卡在 ExStart 反復(fù)重傳 DD最終超時(shí)?,F(xiàn)場(chǎng)遇到「鄰居一直在 ExStart 轉(zhuǎn)圈」第一件事就該去看兩端的 Router ID 是不是配成了同一個(gè)值。這套判定邏輯短到可以幾行寫(xiě)完但正是這幾行決定了后面所有序列號(hào)行為def negotiate_master(local_rid: int, remote_rid: int) - bool: 模擬 ExStart 階段的主從判定。 Router ID 按無(wú)符號(hào) 32 位整數(shù)比較返回 True 表示本端成為 Master。 if local_rid remote_rid: return True # 本端大搶到 Master掌握序列號(hào)遞增權(quán) if local_rid remote_rid: return False # 對(duì)端大本端轉(zhuǎn) Slave只能回顯對(duì)端的序列號(hào) # 相等時(shí)沒(méi)有任何合法分支實(shí)際設(shè)備會(huì)持續(xù)重傳 DD 直至鄰居超時(shí) raise ValueError(Router ID 沖突鄰居無(wú)法完成 ExStart 協(xié)商)local_rid與remote_rid都是點(diǎn)分十進(jìn)制轉(zhuǎn)換后的 32 位整數(shù)比較開(kāi)銷(xiāo)可以忽略——這也是它能被放在報(bào)文處理熱路徑上的原因。真實(shí)實(shí)現(xiàn)里這個(gè)判斷在收到 DD 的第一個(gè)瞬間就完成不需要額外的握手往返。2.2 為什么必須分主從OSPF 沒(méi)有 TCP序列號(hào)只能自己造DD 報(bào)文交換的本質(zhì)是把整個(gè) LSDB 的目錄分頁(yè)傳一遍頁(yè)與頁(yè)之間必須有序、不重、不漏。麻煩在于 OSPF 直接封裝在 IP 之上協(xié)議號(hào) 89沒(méi)有端口、沒(méi)有滑動(dòng)窗口、沒(méi)有重傳定時(shí)器。想在這樣一條「裸鏈路」上做出有序傳輸最省事的辦法就是讓一端說(shuō)了算Master 單方面遞增序列號(hào)Slave 只能原樣回顯。這個(gè)回顯同時(shí)干了兩件事既是對(duì)上一頁(yè)的隱式確認(rèn)又順帶攜帶了自己那一頁(yè)的 LSA 頭。一次發(fā)送換回一次確認(rèn)加一份數(shù)據(jù)握手成本被壓到最低。如果換成顯式 ACKDD 報(bào)文數(shù)量會(huì)直接翻倍而 LSDB 摘要在大網(wǎng)絡(luò)上動(dòng)輒幾百頁(yè)。class DDExchange: def __init__(self, is_master: bool, seq: int): self.is_master is_master self.seq seq # 初始值兩端各自隨機(jī)生成互不相關(guān) self.ack_pending False def send(self, headers): if self.is_master: self.seq 1 # 只有 Master 有權(quán)遞增這就是「控制權(quán)」的含義 self.ack_pending True return {ms: int(self.is_master), dd_seq: self.seq, lsa: headers} def recv(self, pkt): if self.is_master: # Master 收到的回顯序列號(hào)必須與剛發(fā)出的一致MS 位必須是 0 if pkt[dd_seq] ! self.seq or pkt[ms] ! 0: raise OSError(DD 序列號(hào)不匹配重傳上一頁(yè)) self.ack_pending False else: # Slave 不遞增只把 Master 的序列號(hào)抄下來(lái)回顯即確認(rèn) self.seq pkt[dd_seq] return {ms: 0, dd_seq: self.seq, lsa: []}ms字段就是報(bào)文頭里的 MS-bitdd_seq是 32 位序列號(hào)。真實(shí)設(shè)備還會(huì)處理一個(gè)邊界Master 在等待回顯期間收到新的 DD說(shuō)明對(duì)端重傳了此時(shí)要按序列號(hào)去重而不是報(bào)錯(cuò)。為什么不干脆用接口地址大小、MAC 地址或者隨機(jī)數(shù)來(lái)定主從Router ID 的優(yōu)勢(shì)在于三點(diǎn)全網(wǎng)唯一手工規(guī)劃或自動(dòng)選舉保證、穩(wěn)定不隨接口 up/down 抖動(dòng)、全序任意兩個(gè)值必然分出大小。用接口地址鏈路一抖主從關(guān)系就翻轉(zhuǎn)正在傳輸?shù)?LSDB 摘要要重來(lái)用隨機(jī)數(shù)雙方有可能同時(shí)宣布自己贏還得再加一輪協(xié)商。一次比較定勝負(fù)沒(méi)有平局、沒(méi)有回退、沒(méi)有額外報(bào)文這種設(shè)計(jì)取舍在控制平面協(xié)議里很常見(jiàn)。2.3 OSPFv3 把宣告挪到接口下地址語(yǔ)義變了LSA 也得拆v2 的宣告方式是在區(qū)域視圖里network 10.0.0.0 0.0.0.255靠「網(wǎng)絡(luò)號(hào) 反掩碼」去匹配接口地址命中的接口就被劃進(jìn)該區(qū)域。到了 v3這個(gè)做法整條鏈路都走不通了命令變成在接口下使能ospfv3 1 area 0。題庫(kù)里那道「OSPFv3 在區(qū)域視圖通過(guò) network 命令通告」的判斷題答案是錯(cuò)誤原因不只是命令換了位置而是背后的地址模型變了。第一個(gè)原因v3 的報(bào)文源地址是鏈路本地地址fe80::/10。鏈路本地地址不屬于任何規(guī)劃網(wǎng)段用反掩碼去匹配它沒(méi)有意義只能按接口指定。第二個(gè)原因一條鏈路上可以同時(shí)跑多個(gè) OSPFv3 實(shí)例靠報(bào)文頭里的 Instance ID 區(qū)分而 Instance ID 是接口級(jí)配置區(qū)域?qū)傩砸脖仨毟湓诮涌谏?。第三個(gè)原因同一個(gè)物理接口在不同實(shí)例下可以屬于不同區(qū)域區(qū)域不再是「地址段的屬性」而是「接口的屬性」。LSA 結(jié)構(gòu)也隨之重排。v2 的 Router-LSA 里直接掛 stub 網(wǎng)絡(luò)拓?fù)浜颓熬Y混在一起v3 把它拆成兩層Link-LSAType 8在鏈路上泛洪攜帶鏈路本地地址和鏈路前綴Intra-Area-Prefix-LSAType 9負(fù)責(zé)把前綴關(guān)聯(lián)到 Router-LSA 或 Network-LSA 上。這樣拆的直接收益是解耦——改前綴只觸發(fā)前綴重算PRC不觸發(fā)整棵 SPF 樹(shù)重算。在一個(gè)前綴數(shù)量遠(yuǎn)大于節(jié)點(diǎn)數(shù)量的網(wǎng)絡(luò)里這個(gè)差別相當(dāng)可觀。提示記 v3 的宣告方式別死記「接口下配」。記「鏈路本地地址無(wú)法用反掩碼匹配」這條因果命令形式自然就推出來(lái)了。3. 鏈路狀態(tài)協(xié)議的過(guò)濾邊界filter-policy 動(dòng)的是路由表不是 LSDB3.1 LSDB 與 RIB 之間的那道閘門(mén)鏈路狀態(tài)協(xié)議的計(jì)算是一條流水線LSA 泛洪 → LSDB → SPF 計(jì)算最短路徑樹(shù) → 得到候選路由 → 裝入路由表RIB→ 下發(fā) FIB。filter-policy import這道命令卡在「候選路由 → RIB」這個(gè)位置也就是 SPF 算完之后、裝表之前。這個(gè)位置決定了它的全部行為。過(guò)濾掉的路由不會(huì)進(jìn)本機(jī)路由表但 LSA 早就泛洪完了本機(jī) LSDB 里那條 LSA 還在鄰居的 LSDB 里更是在。所以現(xiàn)場(chǎng)會(huì)看到一個(gè)很典型的組合display ip routing-table里查不到某條明細(xì)路由但display ospf lsdb能查到對(duì)應(yīng)的 LSA鄰居那邊也照常算出了這條路由。題庫(kù)里那道「用 filter-policy 在入方向過(guò)濾可以阻斷鏈路狀態(tài)信息傳遞」判定為錯(cuò)誤根子就在這里。它攔的是「我用不用這條路由」不是「我知不知道這個(gè)拓?fù)洹埂?duì)比距離矢量協(xié)議就清楚了。RIP 傳的是路由本身「我把路由表告訴鄰居」所以在出方向做 filter-policy過(guò)濾掉的路由鄰居根本收不到確實(shí)能阻斷傳播。OSPF、IS-IS 傳的是拓?fù)洹肝野焰溌窢顟B(tài)告訴鄰居鄰居自己算」你沒(méi)有權(quán)力替鄰居決定它算出什么。這個(gè)差異是 LS 與 DV 最本質(zhì)的分野也是這類(lèi)判斷題反復(fù)出現(xiàn)的動(dòng)機(jī)。# 在 ASBR 上做入方向過(guò)濾只允許 10.10.0.0/16 進(jìn)入本機(jī)路由表 acl number 2000 rule 5 permit source 10.10.0.0 0.0.255.255 rule 10 deny source any quit ospf 1 router-id 10.0.0.1 import-route static cost 100 type 2 filter-policy 2000 import # 作用點(diǎn)SPF 結(jié)果 - RIB不是 LSDB quit # 驗(yàn)證兩步走LSDB 里 LSA 應(yīng)該還在路由表里應(yīng)該沒(méi)有 display ospf lsdb ase 10.20.0.0 display ip routing-table 10.20.0.0cost 100 type 2是引入時(shí)的種子度量不寫(xiě)就按協(xié)議默認(rèn)值走OSPF 默認(rèn) cost 1、type 2這一點(diǎn)在下一章的坑里還會(huì)遇到。filter-policy 2000 import里的2000是基本 ACL 編號(hào)規(guī)則匹配的是路由的目的地址前綴不是報(bào)文的五元組。如果確實(shí)要讓某個(gè)網(wǎng)段的信息根本不進(jìn)入某個(gè)區(qū)域手段是區(qū)域劃分而不是 filter-policyStub 區(qū)域靠 ABR 不下發(fā) Type 5 LSATotally Stub 再進(jìn)一步連 Type 3 明細(xì)也不下發(fā)NSSA 則相反允許外部路由以 Type 7 在本區(qū)域引入。這些機(jī)制動(dòng)的是泛洪范圍才是真正意義上的「阻斷」。3.2 IS-IS 的網(wǎng)絡(luò)類(lèi)型與三次握手為什么 P2MP 跑不了IS-IS 只認(rèn)兩種網(wǎng)絡(luò)類(lèi)型廣播鏈路以太網(wǎng)、令牌環(huán)和點(diǎn)到點(diǎn)鏈路PPP、HDLC。NBMA 網(wǎng)絡(luò)如 ATM、幀中繼必須把物理接口拆成子接口并把子接口類(lèi)型配成 P2P 才能跑。至于點(diǎn)到多點(diǎn)P2MP協(xié)議里壓根沒(méi)有為它預(yù)留位置。原因在 Hello PDU 的設(shè)計(jì)前提里。IS-IS 的 IIH 假定鏈路要么是廣播域——一個(gè) IIH 發(fā)出去所有人都能收到靠 DIS 周期發(fā) CSNP 同步數(shù)據(jù)庫(kù)要么是嚴(yán)格點(diǎn)對(duì)點(diǎn)——一個(gè) IIH 只有一個(gè)確定的接收者靠 3-way 握手確認(rèn)雙向可達(dá)。P2MP 是第三種形態(tài)一個(gè)物理接口、多個(gè)邏輯鄰居、但又不構(gòu)成廣播域。它既選不出有意義的 DIS也沒(méi)法用一條單播 IIH 一一對(duì)應(yīng)多個(gè)鄰居狀態(tài)機(jī)里沒(méi)有這個(gè)中間態(tài)。OSPF 能支持 P2MP是因?yàn)樗?Hello 支持單播與組播切換且在 P2MP 網(wǎng)絡(luò)類(lèi)型下干脆不選 DR兩者前提不同。廣播網(wǎng)和 P2P 網(wǎng)保證鄰居可靠性的手段也不一樣。P2P 鏈路上用的是 3-way 握手IIH 里帶 TLV 240P2P Three-Way Adjacency把本端看到的鄰居 System ID 和 Circuit ID 填進(jìn)去只有雙方都在對(duì)方的 IIH 里看到自己鄰居才真正 Up。這個(gè)機(jī)制專(zhuān)門(mén)治單向鏈路——只有一端能收到 Hello 時(shí)兩次握手會(huì)建出一個(gè)「半開(kāi)」鄰居路由算出來(lái)全是黑洞3-way 直接把它擋在 Init。廣播網(wǎng)上的雙向確認(rèn)則靠 IIH 里攜帶的鄰居 SNPA 列表收到對(duì)方的 IIH檢查里面有沒(méi)有自己的 MAC。題庫(kù)里「廣播網(wǎng)絡(luò)中 IS-IS 通過(guò)什么機(jī)制保證鄰居關(guān)系建立的可靠性」給的標(biāo)準(zhǔn)答案是三次握手考試按這個(gè)選但從機(jī)制上分TLV 240 的 3-way 是三四二點(diǎn)對(duì)點(diǎn)鏈路的原語(yǔ)廣播網(wǎng)用的是 LAN IIH 加 CSNP 的組合。把這兩層分清楚遇到變形題才不會(huì)被繞進(jìn)去。順帶記一組高頻默認(rèn)值差異IS-IS 的 DIS 沒(méi)有備份、默認(rèn)搶占、廣播網(wǎng) Hello 間隔約 3.3 秒、CSNP 周期 10 秒OSPF 的 DR 有 BDR、默認(rèn)不搶占、廣播網(wǎng) Hello 10 秒。判斷題最喜歡在這幾個(gè)數(shù)字上做手腳。3.3 多進(jìn)程隔離與進(jìn)程號(hào)的本地語(yǔ)義同一臺(tái)路由器上跑兩個(gè) IS-IS 進(jìn)程兩個(gè)進(jìn)程的 LSDB 默認(rèn)完全隔離一個(gè)進(jìn)程里的鏈路狀態(tài)信息不會(huì)流到另一個(gè)進(jìn)程。這個(gè)「默認(rèn)隔離」不是實(shí)現(xiàn)偷懶而是語(yǔ)義決定的進(jìn)程號(hào)本地有效根本不進(jìn)報(bào)文一個(gè)進(jìn)程在拓?fù)渖暇偷扔谝慌_(tái)獨(dú)立的路由器。隔離帶來(lái)的能力是「一臺(tái)設(shè)備扮演多臺(tái)」。遷移期兩套地址規(guī)劃并存、把某塊網(wǎng)絡(luò)從 Level-1 整體挪到 Level-2、或者做區(qū)域邊界而又不想多加一臺(tái)設(shè)備都靠這個(gè)特性。反過(guò)來(lái)如果進(jìn)程間自動(dòng)互通區(qū)域邊界就形同虛設(shè)Level-1 的路由會(huì)從一條意料之外的路徑串到另一個(gè)進(jìn)程里去。要讓兩個(gè)進(jìn)程交換路由必須顯式操作做 route leaking 把 Level-2 路由泄漏到 Level-1或者在進(jìn)程間做路由引入。默認(rèn)不通、需要時(shí)顯式打通這個(gè)設(shè)計(jì)思路和「Router ID 一次比較定主從」是一脈相承的——把不確定性關(guān)在門(mén)外讓每一條跨邊界的路徑都是人主動(dòng)打開(kāi)的。4. BGP Update 的屬性四象限哪些字段缺席就是協(xié)議錯(cuò)誤4.1 公認(rèn)必遵、公認(rèn)可選與兩條可選通道Update 報(bào)文的結(jié)構(gòu)是撤銷(xiāo)路由長(zhǎng)度、撤銷(xiāo)路由、路徑屬性總長(zhǎng)度、路徑屬性、NLRI。屬性區(qū)里放的就是各種路徑屬性它們按兩個(gè)維度分類(lèi)公認(rèn)還是可選每個(gè) BGP 實(shí)現(xiàn)是否必須認(rèn)識(shí)傳遞還是非傳遞能不能穿過(guò) AS 邊界繼續(xù)往下傳。兩個(gè)維度交叉出四類(lèi)構(gòu)成了整個(gè) BGP 策略體系的地基。屬性類(lèi)別傳播范圍缺省值 / 說(shuō)明ORIGIN公認(rèn)必遵全程必須存在取值 i / e / ?AS_PATH公認(rèn)必遵全程必須存在eBGP 逐跳追加NEXT_HOP公認(rèn)必遵全程必須存在LOCAL_PREF公認(rèn)可選僅 IBGP默認(rèn) 100越大越優(yōu)ATOMIC_AGGREGATE公認(rèn)可選全程聚合時(shí)打標(biāo)記MED可選非傳遞相鄰 AS默認(rèn) 0越小越優(yōu)COMMUNITY可選傳遞全程給路由打標(biāo)簽ORIGINATOR_ID / CLUSTER_LIST可選非傳遞反射器內(nèi)路由反射防環(huán)「Update 中可不包含哪些屬性」這類(lèi)題的答案就藏在「必遵」二字里。ORIGIN 和 AS_PATH 是公認(rèn)必遵缺了就是協(xié)議錯(cuò)誤對(duì)端直接回 Notification錯(cuò)誤碼 3UPDATE Message Error子碼 3Missing Well-known Attribute會(huì)話當(dāng)場(chǎng)斷掉。LOCAL_PREF 是公認(rèn)可選且只在 IBGP 內(nèi)有效eBGP 發(fā)出去時(shí)會(huì)被剝掉MED 是可選非傳遞本來(lái)就不保證攜帶。所以正確選項(xiàng)是這兩個(gè)。# BGP-4 路徑屬性四象限按屬性碼歸類(lèi) WELL_KNOWN_MANDATORY {1: ORIGIN, 2: AS_PATH, 3: NEXT_HOP} WELL_KNOWN_DISCRETIONARY {4: LOCAL_PREF, 6: ATOMIC_AGGREGATE} OPTIONAL_TRANSITIVE {7: AGGREGATOR, 8: COMMUNITY} OPTIONAL_NON_TRANSITIVE {5: MED, 9: ORIGINATOR_ID, 10: CLUSTER_LIST} def check_update(attrs: dict) - str: 校驗(yàn)一條 Update 的屬性集合是否合規(guī)attrs 的 key 是屬性碼 missing [name for code, name in WELL_KNOWN_MANDATORY.items() if code not in attrs] if missing: # 缺公認(rèn)必遵屬性回 Notification(3,3) 并中斷會(huì)話不是忽略 return fNOTIFICATION 3/3 Missing Well-known Attribute: {missing} return OK這段校驗(yàn)的關(guān)鍵在最后那個(gè)return缺必遵屬性不是「這條路由不要了」而是「你這個(gè)鄰居有問(wèn)題」處理級(jí)別完全不同。理解這一點(diǎn)才能解釋為什么某些異常路由會(huì)導(dǎo)致 BGP 會(huì)話反復(fù)重建而不是簡(jiǎn)單丟棄。4.2 Origin 的 IGP EGP Incomplete 是怎么排出來(lái)的ORIGIN 有三個(gè)取值i 表示用network命令把本 AS 內(nèi)的網(wǎng)段宣告進(jìn)來(lái)路由源自 AS 內(nèi)部e 表示從 EGP 學(xué)來(lái)早期協(xié)議現(xiàn)在基本絕跡? 表示用import-route引入來(lái)源不確定可能是直連、靜態(tài)或者別的協(xié)議。優(yōu)先級(jí)是 i e ?。理由很直白越「原生」的路由越可信。network宣告的是我自己知道確切出處的網(wǎng)段import-route引入的是別人給我的、經(jīng)過(guò)一次轉(zhuǎn)換的信息中間可能丟過(guò)屬性、改過(guò)度量。讓原生路由贏可以避免一條從外部引入的聚合路由把內(nèi)部的明細(xì)路由頂?shù)簟@類(lèi)故障現(xiàn)場(chǎng)排查起來(lái)相當(dāng)費(fèi)勁因?yàn)槁酚杀砜雌饋?lái)「有路」但流量走的是另一條。注意Origin 不是選路的第一順位。完整的比較順序里它排在 Weight、Local_Pref、本地始發(fā)、AS_PATH 長(zhǎng)度之后??吹健窸rigin 優(yōu)先級(jí)最高」這種表述要警惕那是把「三個(gè) Origin 取值之間的相對(duì)順序」偷換成了「所有屬性之間的絕對(duì)順序」。4.3 Local_Pref 與 MED一個(gè)向內(nèi)看一個(gè)向外看這兩個(gè)屬性最容易混因?yàn)樗鼈兊娜≈捣较蚝蛡鞑シ秶孟喾?。LOCAL_PREF 回答的是「本 AS 內(nèi)部我更愿意從哪個(gè)出口出去」。它是純粹的 AS 內(nèi)部策略傳給 eBGP 鄰居毫無(wú)意義——人家不關(guān)心你內(nèi)部喜歡走哪條路。所以它只在 IBGP 內(nèi)傳播eBGP 發(fā)出去時(shí)清空。默認(rèn)值 100越大越優(yōu)。MED 回答的是「我希望你從哪個(gè)入口進(jìn)來(lái)」。它是給外部鄰居看的所以能跨 eBGP 傳遞但默認(rèn)只影響相鄰的那一個(gè) AS不會(huì)再往下傳。默認(rèn)值 0越小越優(yōu)。一對(duì)數(shù)字一正一反、一個(gè) 100 一個(gè) 0判斷題在這里設(shè)置陷阱的成功率極高。記憶錨點(diǎn)可以設(shè)成「本地優(yōu)先一百起度量開(kāi)銷(xiāo)零開(kāi)始」。COMMUNITY 是另一條線。它不影響選路作用是給一批具有共同特征的路由打上同一個(gè)標(biāo)記再配合 community-filter 做批量策略。題庫(kù)里問(wèn)「用哪種屬性對(duì)具有共同特征的路由進(jìn)行標(biāo)記以便其他路由器識(shí)別」答案只能是它——AS_PATH 會(huì)影響選路和防環(huán)MED 表達(dá)入口偏好Origin 表達(dá)來(lái)源都不是干標(biāo)記這活的。5. 排查與避坑把「看起來(lái)對(duì)」的選項(xiàng)做錯(cuò)的六個(gè)現(xiàn)場(chǎng)5.1 作用點(diǎn)錯(cuò)位控制平面與轉(zhuǎn)發(fā)平面坑一以為 filter-policy 能擋住 LSA 泛洪?,F(xiàn)象是配了入方向過(guò)濾后本機(jī)路由表干凈了但display ospf lsdb里那條 LSA 依然在鄰居也照常算出路由。原因是命令作用在 SPF 之后、入 RIB 之前壓根沒(méi)碰泛洪。解決辦法是改用區(qū)域機(jī)制Stub 靠 ABR 不下發(fā) Type 5Totally Stub 連 Type 3 明細(xì)也攔掉NSSA 允許外部路由以 Type 7 在本區(qū)域引入真要按前綴裁剪就在 ABR 的 summary 上做而不是指望 filter-policy??佣崖酚刹呗院筒呗月酚僧?dāng)成一回事?,F(xiàn)象是配了policy-based-route路由表紋絲不動(dòng)以為命令沒(méi)生效。原因是策略路由作用在轉(zhuǎn)發(fā)平面逐跳匹配報(bào)文、直接改下一跳不進(jìn)路由表路由策略作用在控制平面改的是路由屬性的可達(dá)性。前者要每臺(tái)設(shè)備都配后者靠協(xié)議擴(kuò)散。分不清這兩個(gè)配置寫(xiě)完看不出效果還算輕的嚴(yán)重的情況是策略路由漏配一跳流量在半路被送回原路。5.2 默認(rèn)值幻覺(jué)引入開(kāi)銷(xiāo)、Local_Pref 與 ACL 編號(hào)段坑三以為路由引入不指定 cost 就會(huì)失敗?,F(xiàn)象是import-route之后路由確實(shí)進(jìn)來(lái)了但度量值是個(gè)很小的數(shù)字導(dǎo)致路徑次優(yōu)。原因是每個(gè)協(xié)議都有自己的默認(rèn)種子度量OSPF 引入默認(rèn) cost 1、type 2不是 20。這個(gè)「1」在有多條外部路徑時(shí)會(huì)直接把流量拉到自己身上。解決辦法是引入時(shí)顯式寫(xiě)cost和type并且和對(duì)端 ASBR 的規(guī)劃對(duì)齊——兩側(cè)不一致會(huì)產(chǎn)生非對(duì)稱(chēng)路徑??铀陌?Local_Pref 的默認(rèn)值記成 0?,F(xiàn)象是改優(yōu)先級(jí)時(shí)按 0 基準(zhǔn)去加配了個(gè) 50 以為提升了實(shí)際是降到了默認(rèn)值以下。原因是把 LOCAL_PREF 和 MED 的默認(rèn)值混了前者默認(rèn) 100后者默認(rèn) 0。解決很簡(jiǎn)單配置前先display bgp peer verbose看一眼當(dāng)前生效值別憑記憶改??游錋CL 編號(hào)段記混?,F(xiàn)象是配了個(gè) 4000 的 ACL 想做三層流量過(guò)濾結(jié)果匹配不上。原因是編號(hào)段本身就帶語(yǔ)義基本 ACL 2000–2999高級(jí) ACL 3000–3999二層 ACL 4000–4999用戶(hù)自定義 ACL 5000–5999用戶(hù) ACL 6000–6031。編號(hào)選錯(cuò)匹配的字段維度就錯(cuò)了。這條沒(méi)有別的辦法把這五行記住或者養(yǎng)成用命名 ACL 的習(xí)慣。5.3 冗余與選舉VRRP 搶占、堆疊分裂與 RSTP 計(jì)時(shí)器坑六以為 VRRP 默認(rèn)不搶占。現(xiàn)象是備份組運(yùn)行一段時(shí)間后明明優(yōu)先級(jí)更高的設(shè)備恢復(fù)了卻沒(méi)有拿回 Master。真實(shí)情況恰好相反缺省是搶占的且搶占延遲為 0。不搶占反而要顯式配置。要讓網(wǎng)絡(luò)穩(wěn)定通常配一個(gè)幾秒的搶占延遲等上聯(lián)鏈路和路由完全收斂再切否則會(huì)出現(xiàn)「搶回來(lái)又切走」的來(lái)回抖動(dòng)。這個(gè)延遲值不是玄學(xué)按 IGP 收斂時(shí)間加余量給就行。同類(lèi)問(wèn)題還有兩個(gè)高頻項(xiàng)。堆疊分裂后兩個(gè)系統(tǒng)擁有完全相同的全局配置IP 和堆疊系統(tǒng) MAC 不會(huì)立即變化正因?yàn)椤缚雌饋?lái)完全一樣」才必須靠 MAD 檢測(cè)打破僵局檢測(cè)失敗的一方關(guān)閉除保留端口外的所有物理端口避免雙主。RSTP 判斷鄰居失效的閾值是連續(xù) 3 個(gè) Hello Time 收不到 BPDU不是 4 個(gè)TC-BPDU 防護(hù)的閾值默認(rèn)是每個(gè) Hello Time 處理 1 個(gè)拓?fù)渥兓瘓?bào)文且配置在全局而非接口下。這幾個(gè)數(shù)字和位置是判斷題最?lèi)?ài)的下手處。6. 從背題到建模三個(gè)提問(wèn)把邊界條件問(wèn)出來(lái)題庫(kù)做多了會(huì)發(fā)現(xiàn)一個(gè)規(guī)律真正拉開(kāi)分?jǐn)?shù)的不是記住了多少結(jié)論而是能不能在看到一句描述時(shí)條件反射地追問(wèn)三件事——作用點(diǎn)在哪、默認(rèn)值是多少、范圍有多大。作用點(diǎn)決定了一條命令改的是數(shù)據(jù)庫(kù)還是路由表、是控制平面還是轉(zhuǎn)發(fā)平面。filter-policy 與區(qū)域劃分的差別、路由策略與策略路由的差別全是這一問(wèn)的產(chǎn)物。默認(rèn)值決定了「不配」和「配了但沒(méi)寫(xiě)參數(shù)」的實(shí)際效果引入開(kāi)銷(xiāo)、Local_Pref、Hello 計(jì)時(shí)器、TC-BPDU 閾值全部落在這里。范圍決定了機(jī)制的適用邊界IS-IS 不支持 P2MP、OSPFv3 不能在區(qū)域視圖宣告、Local_Pref 不跨 AS、MED 只影響相鄰 AS講的都是「到哪里為止」。這三問(wèn)本質(zhì)上是在給每個(gè)知識(shí)點(diǎn)建一個(gè)三維坐標(biāo)而不是存一條扁平的文字。坐標(biāo)建起來(lái)之后題目怎么變形都能落回原位只有文字題干換個(gè)詞就找不到北。驗(yàn)證方法也順著這三問(wèn)走。想看作用點(diǎn)就用display ospf lsdb和display ip routing-table對(duì)照著看——兩邊不一致的地方就是過(guò)濾發(fā)生的位置。想看默認(rèn)值就在配置前先display一遍當(dāng)前生效值改完再display一遍別靠記憶。想看范圍就抓包DD 報(bào)文里的 MS 位和序列號(hào)能直接印證主從關(guān)系IS-IS 的 TLV 240 能直接印證 3-way 握手是否完成BGP 的 Update 里屬性碼的缺席能直接印證「必遵」二字的份量。抓包是把選擇題變成觀察題的最短路徑比反復(fù)讀解析有用得多。有一份持續(xù)更新的題庫(kù)在手邊價(jià)值不在于多刷幾遍而在于它提供了一個(gè)足夠密集的「邊界樣本集」——每一道錯(cuò)題都是一次坐標(biāo)校準(zhǔn)的機(jī)會(huì)。我自己的血淚經(jīng)驗(yàn)是錯(cuò)題不要只記正確答案要順手在邊上寫(xiě)一行「作用點(diǎn) / 默認(rèn)值 / 范圍」的具體內(nèi)容寫(xiě)不出來(lái)說(shuō)明這個(gè)點(diǎn)還沒(méi)建坐標(biāo)那就回去翻機(jī)制別急著做下一題。從那以后我每次遇到判斷題都強(qiáng)制把這三個(gè)問(wèn)題在心里過(guò)一遍正確率的變化比多做兩百道題明顯得多。這份 2024 數(shù)通 H12-831 新題庫(kù)連同解析就在下載包里配合上面這套三問(wèn)自檢法一條條過(guò)比單純背答案走得遠(yuǎn)。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取