DHCP即動態(tài)主機(jī)配置協(xié)議,它是一個局域網(wǎng)的網(wǎng)絡(luò)協(xié)議,使用UDP協(xié)議工作。在日常網(wǎng)絡(luò)應(yīng)用中最常見的用途是給內(nèi)部網(wǎng)絡(luò)或網(wǎng)絡(luò)服務(wù)供應(yīng)商自動分配IP地址,給用戶或者內(nèi)部網(wǎng)絡(luò)管理員作為對所有計(jì)算機(jī)作中央管理的手段,通常被應(yīng)用在大型的局域網(wǎng)絡(luò)環(huán)境中。筆者單位的網(wǎng)絡(luò)點(diǎn)播用戶獲取IP地址方式就是采用的DHCP,從而來滿足用戶進(jìn)行點(diǎn)播視頻的需求。但是近期出現(xiàn)個別點(diǎn)播用戶獲取不到IP地址的情況,經(jīng)過對機(jī)房參照點(diǎn)播環(huán)境的測試,并按照網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)逐級排查,大量使用show命令,最終將故障定位在了點(diǎn)播用戶異常下線,DHCP租約時間未到,所以引起個別用戶點(diǎn)播獲取不到IP地址的故障。
近日,有互聯(lián)網(wǎng)用戶報(bào)修,反映不能正常使用點(diǎn)播業(yè)務(wù),得知這一故障現(xiàn)象后,我們首先從兩方面著手處理。
首先需要登錄到BRAS上查看用戶在線數(shù)量,目的是宏觀上查看一下點(diǎn)播用戶的狀態(tài),看一下報(bào)修用戶所屬BRAS的點(diǎn)播用戶是否正常。我們使用命令show subscriber statistics domain dhcp查看用戶的在線數(shù)量是否穩(wěn)定,查看點(diǎn)播用戶數(shù)上線具體情況:
show subscriber statistics domain dhcp
session: total up down
IPv4 3616 3616 0
IPv6 0 0 0
通過多次使用show命令查看,均沒有發(fā)現(xiàn)點(diǎn)播用戶數(shù)量明顯下降的趨勢。接下來使用機(jī)房參照測試環(huán)境,這里所說的機(jī)房參照測試環(huán)境就是在機(jī)房模擬搭建用戶點(diǎn)播環(huán)境,這樣做的好處是易于發(fā)現(xiàn)問題,并容易定位故障節(jié)點(diǎn)。經(jīng)過模擬環(huán)境測試,點(diǎn)播獲取IP地址也沒有問題。
通過在BRAS上查看點(diǎn)播用戶數(shù)量以及模擬環(huán)境的測試均沒有發(fā)現(xiàn)問題,這就說明在機(jī)房至點(diǎn)播DHCP服務(wù)器是正常的。
這里簡單介紹一下點(diǎn)播獲取IP地址的流程。BRAS上使用DHCP中繼,BRAS上游連接核心路由器,然后DHCP點(diǎn)播服務(wù)器通過匯聚交換機(jī)連接在核心路由器上,其中BRAS、核心路由器、匯聚交換機(jī)和DHCP服務(wù)器使用路由互通。
了解完DHCP工作的過程,接下來我們回到故障排查中,既然BRAS和DHCP服務(wù)器都沒有問題,接下來我們開始排查BRAS以下的設(shè)備。BRAS以下的設(shè)備主要是OLT,因?yàn)镺LT是直連BRAS的,我們在OLT上主要的操作是查看下PON口以及ONU的配置。首先需要查看的是PON口的配置,使用命令show running-config interface epon-olt 3/4可以查看到PON口的配置命令即:
interface epon-olt 3/4
//進(jìn)入端口
vlan-mapping ingress outer from 1000 to 1999 translate outer 1811 inner copy-from-outer
//定義點(diǎn)播業(yè)務(wù)VLAN的QINQ規(guī)則
vlan-mapping ingress outer from 2000 to 2999 translate outer 2811 inner copy-from-outer
switchport trunk allowed vlan 1811,2811
//定義PON口允許通過的VLAN
switchport trunk untagged vlan 1811,2811
//定義PON口下行方向剝離標(biāo)簽的VLAN
switchport mode trunk
//定義端口模式為TRUNK
通過對PON口配置的查看沒有發(fā)現(xiàn)問題,緊接著使用命令show runningconfig epon-onu 3/4/11查看下ONU的配置,命令如下:
epon-onu uni ethernet 1/5/11/1
適用于IEC61850標(biāo)準(zhǔn)的以太網(wǎng)無源光網(wǎng)絡(luò)DBA算法//劉柱揆,曹敏,胡凡君,董濤//(10):150
//進(jìn)入ONU的端口
vlan mode tagged
//定義ONU端口的模式
native vlan 2011
//定義ONU端口的VLAN
epon-onu uni ethernet 1/5/11/2
//進(jìn)入ONU的端口
vlan mode tagged
//定義ONU端口的模式
native vlan 1011
//定義ONU端口的VLAN
通過對PON口和ONU配置查看均沒有發(fā)現(xiàn)問題,那么問題出在什么地方呢?整個流程梳理下來也沒有發(fā)現(xiàn)端倪。剛才我們在OLT上查看的是設(shè)備配置,接下來再核實(shí)一下MAC地址的學(xué)習(xí)情況,這就需要知道點(diǎn)播終端的MAC地址。根據(jù)運(yùn)維人員提供的MAC地址,從ONU端口、PON口以及整臺OLT學(xué)習(xí)點(diǎn)播終端的MAC都沒有問題,那么BRAS上能學(xué)習(xí)到用戶點(diǎn)播終端的MAC地址嗎?
在BRAS上使用命令show subscriber user-mac ac4a.fe6b.1340,發(fā)現(xiàn)該MAC已經(jīng)拿到IP地址,既然BRAS上顯示點(diǎn)播終端可以獲取到地址,那么為什么用戶側(cè)的點(diǎn)播終端獲取不到地址呢?這里就涉及到DHCP的IP地址沒有同步的問題,當(dāng)DHCP客戶端獲取到一個IP地址后,并不代表可以永久使用這個地址,而是有一個使用期限,在DHCP中我們稱之為租約期限。一般情況下,DHCP服務(wù)器租約是8天,除了這個8天的時間外,在有效的租約期限內(nèi),還包含兩個時間點(diǎn),第四天和第七天,也就是租約的一半和租約的7/8。當(dāng)由于某些網(wǎng)絡(luò)原因?qū)е翴P地址沒能及時同步時,BRAS上ARP表項(xiàng)還在,我們可以先用ipconfig /release命令將當(dāng)前的IP地址和其他配置信息釋放掉。此時客戶端會利用單播的方式向DHCP服務(wù)器發(fā)送 DHCP Release數(shù)據(jù)包,目的是告訴DHCP服務(wù)器客戶端要釋放這個IP。當(dāng)然這個IP地址釋放的命令可以在電腦上執(zhí)行,點(diǎn)播終端是無法執(zhí)行的ipconfig/release命令,通知服務(wù)器端釋放地址。這樣就需要在BRAS上執(zhí)行clear subscriber ipv4-address 10.107.2.251,清理 BRAS上的IP地址信息。然后點(diǎn)播終端就會正常獲取到IP地址,并且能正常觀看點(diǎn)播節(jié)目,這樣網(wǎng)絡(luò)故障就得以排除。
上面我們從得知故障后,首先在BRAS上和模擬測試環(huán)境進(jìn)行了排查和測試,進(jìn)一步排除了宏觀上的網(wǎng)絡(luò)故障的可能性。然后又仔細(xì)排查了OLT以及ONU的配置,最后使用show命令查看ARP表項(xiàng)的時候發(fā)現(xiàn)了故障原因,即BRAS上存在點(diǎn)播終端的MAC地址和IP地址的對應(yīng)關(guān)系。此類故障通常由于點(diǎn)播終端異常關(guān)閉或者PON口數(shù)據(jù)異常刪除又重新添加配置等原因造成IP地址沒有釋放,解決問題的方法是在BRAS上強(qiáng)制該點(diǎn)播終端下線,重新進(jìn)行一次DHCP報(bào)文的交互,就可以實(shí)現(xiàn)了故障的排除。