DHCP即動(dòng)態(tài)主機(jī)配置協(xié)議,它是一個(gè)局域網(wǎng)的網(wǎng)絡(luò)協(xié)議,使用UDP協(xié)議工作。在日常網(wǎng)絡(luò)應(yīng)用中最常見(jiàn)的用途是給內(nèi)部網(wǎng)絡(luò)或網(wǎng)絡(luò)服務(wù)供應(yīng)商自動(dòng)分配IP地址,給用戶或者內(nèi)部網(wǎng)絡(luò)管理員作為對(duì)所有計(jì)算機(jī)作中央管理的手段,通常被應(yīng)用在大型的局域網(wǎng)絡(luò)環(huán)境中。筆者單位的網(wǎng)絡(luò)點(diǎn)播用戶獲取IP地址方式就是采用的DHCP,從而來(lái)滿足用戶進(jìn)行點(diǎn)播視頻的需求。但是近期出現(xiàn)個(gè)別點(diǎn)播用戶獲取不到IP地址的情況,經(jīng)過(guò)對(duì)機(jī)房參照點(diǎn)播環(huán)境的測(cè)試,并按照網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)逐級(jí)排查,大量使用show命令,最終將故障定位在了點(diǎn)播用戶異常下線,DHCP租約時(shí)間未到,所以引起個(gè)別用戶點(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
通過(guò)多次使用show命令查看,均沒(méi)有發(fā)現(xiàn)點(diǎn)播用戶數(shù)量明顯下降的趨勢(shì)。接下來(lái)使用機(jī)房參照測(cè)試環(huán)境,這里所說(shuō)的機(jī)房參照測(cè)試環(huán)境就是在機(jī)房模擬搭建用戶點(diǎn)播環(huán)境,這樣做的好處是易于發(fā)現(xiàn)問(wèn)題,并容易定位故障節(jié)點(diǎn)。經(jīng)過(guò)模擬環(huán)境測(cè)試,點(diǎn)播獲取IP地址也沒(méi)有問(wèn)題。
通過(guò)在BRAS上查看點(diǎn)播用戶數(shù)量以及模擬環(huán)境的測(cè)試均沒(méi)有發(fā)現(xiàn)問(wèn)題,這就說(shuō)明在機(jī)房至點(diǎn)播DHCP服務(wù)器是正常的。
這里簡(jiǎn)單介紹一下點(diǎn)播獲取IP地址的流程。BRAS上使用DHCP中繼,BRAS上游連接核心路由器,然后DHCP點(diǎn)播服務(wù)器通過(guò)匯聚交換機(jī)連接在核心路由器上,其中BRAS、核心路由器、匯聚交換機(jī)和DHCP服務(wù)器使用路由互通。
了解完DHCP工作的過(guò)程,接下來(lái)我們回到故障排查中,既然BRAS和DHCP服務(wù)器都沒(méi)有問(wèn)題,接下來(lái)我們開(kāi)始排查BRAS以下的設(shè)備。BRAS以下的設(shè)備主要是OLT,因?yàn)镺LT是直連BRAS的,我們?cè)贠LT上主要的操作是查看下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口允許通過(guò)的VLAN
switchport trunk untagged vlan 1811,2811
//定義PON口下行方向剝離標(biāo)簽的VLAN
switchport mode trunk
//定義端口模式為T(mén)RUNK
通過(guò)對(duì)PON口配置的查看沒(méi)有發(fā)現(xiàn)問(wè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ú)源光網(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
通過(guò)對(duì)PON口和ONU配置查看均沒(méi)有發(fā)現(xiàn)問(wèn)題,那么問(wèn)題出在什么地方呢?整個(gè)流程梳理下來(lái)也沒(méi)有發(fā)現(xiàn)端倪。剛才我們?cè)贠LT上查看的是設(shè)備配置,接下來(lái)再核實(shí)一下MAC地址的學(xué)習(xí)情況,這就需要知道點(diǎn)播終端的MAC地址。根據(jù)運(yùn)維人員提供的MAC地址,從ONU端口、PON口以及整臺(tái)OLT學(xué)習(xí)點(diǎn)播終端的MAC都沒(méi)有問(wèn)題,那么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地址沒(méi)有同步的問(wèn)題,當(dāng)DHCP客戶端獲取到一個(gè)IP地址后,并不代表可以永久使用這個(gè)地址,而是有一個(gè)使用期限,在DHCP中我們稱之為租約期限。一般情況下,DHCP服務(wù)器租約是8天,除了這個(gè)8天的時(shí)間外,在有效的租約期限內(nèi),還包含兩個(gè)時(shí)間點(diǎn),第四天和第七天,也就是租約的一半和租約的7/8。當(dāng)由于某些網(wǎng)絡(luò)原因?qū)е翴P地址沒(méi)能及時(shí)同步時(shí),BRAS上ARP表項(xiàng)還在,我們可以先用ipconfig /release命令將當(dāng)前的IP地址和其他配置信息釋放掉。此時(shí)客戶端會(huì)利用單播的方式向DHCP服務(wù)器發(fā)送 DHCP Release數(shù)據(jù)包,目的是告訴DHCP服務(wù)器客戶端要釋放這個(gè)IP。當(dāng)然這個(gè)IP地址釋放的命令可以在電腦上執(zhí)行,點(diǎn)播終端是無(wú)法執(zhí)行的ipconfig/release命令,通知服務(wù)器端釋放地址。這樣就需要在BRAS上執(zhí)行clear subscriber ipv4-address 10.107.2.251,清理 BRAS上的IP地址信息。然后點(diǎn)播終端就會(huì)正常獲取到IP地址,并且能正常觀看點(diǎn)播節(jié)目,這樣網(wǎng)絡(luò)故障就得以排除。
上面我們從得知故障后,首先在BRAS上和模擬測(cè)試環(huán)境進(jìn)行了排查和測(cè)試,進(jìn)一步排除了宏觀上的網(wǎng)絡(luò)故障的可能性。然后又仔細(xì)排查了OLT以及ONU的配置,最后使用show命令查看ARP表項(xiàng)的時(shí)候發(fā)現(xiàn)了故障原因,即BRAS上存在點(diǎn)播終端的MAC地址和IP地址的對(duì)應(yīng)關(guān)系。此類故障通常由于點(diǎn)播終端異常關(guān)閉或者PON口數(shù)據(jù)異常刪除又重新添加配置等原因造成IP地址沒(méi)有釋放,解決問(wèn)題的方法是在BRAS上強(qiáng)制該點(diǎn)播終端下線,重新進(jìn)行一次DHCP報(bào)文的交互,就可以實(shí)現(xiàn)了故障的排除。