




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 1DHCPDHCP規(guī)范和現(xiàn)網(wǎng)案例分析規(guī)范和現(xiàn)網(wǎng)案例分析陳曦2012年6月Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 2本次課題lDHCP簡(jiǎn)介簡(jiǎn)介l中國(guó)電信中國(guó)電信DHCP擴(kuò)展規(guī)范擴(kuò)展規(guī)范l現(xiàn)網(wǎng)現(xiàn)網(wǎng)DHCP案例分析案例分析Copyright 2012 Shanghai DareGlobal Technologies Co., L
2、td. All rights reserved. 3DHCP簡(jiǎn)介 協(xié)議概述 報(bào)文格式 報(bào)文類(lèi)型 常用option DHCP報(bào)文交互過(guò)程 DHCP客戶(hù)端更新租約 DHCP client狀態(tài)機(jī) DHCP中繼工作過(guò)程 處理DHCP中繼報(bào)文 Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 4協(xié)議概述DHCP動(dòng)態(tài)主機(jī)配置協(xié)議(Dynamic Host Configuration Protocol)為網(wǎng)絡(luò)客戶(hù)機(jī)分配動(dòng)態(tài)的IP地址提供安全、可靠的TCP/IP網(wǎng)絡(luò)配置保證IP地址不發(fā)生沖突,減少了在T
3、CP/IP網(wǎng)絡(luò)上增添、移動(dòng)和配置計(jì)算機(jī)的管理負(fù)擔(dān),使IP地址管理自動(dòng)化。動(dòng)態(tài)分配IP地址在某些情況下還可以解決IP不夠用的問(wèn)題。 Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 5報(bào)文格式OP(1)Htype(1)Hlen(1)Hops(1)Transaction ID(4)Seconds(2)Flags(2)Ciaddr(4)Yiaddr(4)Siaddr(4)Giaddr(4)Chaddr(16)Sname(64)File(128)Options(variable)Copyrigh
4、t 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 6報(bào)文字段含義最左邊的bit位,0代表廣播,1代表單播。其余bit尚未使用flags由DHCP Client填充,從DHCP Client開(kāi)始獲得地址或地址續(xù)借后所使用了的秒數(shù)。Seconds由DHCP Client選擇的一個(gè)隨機(jī)數(shù),被DHCP Server和DHCP Client用來(lái)在它們之間交流messages和responses。由客戶(hù)設(shè)置并由DHCP Server返回的32 bit整數(shù)??蛻?hù)用它對(duì)請(qǐng)求和應(yīng)答進(jìn)行匹配。Transaction IDD
5、HCP Client設(shè)置為0,也能被一個(gè)代理服務(wù)器設(shè)置hopshardware address length,6字節(jié)。hlenhardware address type,1表示以太網(wǎng),這和ARP請(qǐng)求或應(yīng)答中同名字段表示的含義相同。htypemessage op code / message type“1“代表BOOTREQUEST ”2“代表 BOOTREPLYop含義字段Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 7報(bào)文字段含義(續(xù))包含報(bào)文的類(lèi)型、有效租期、DNS(Domain
6、 Name System,域名系統(tǒng))服務(wù)器的 IP 地址等配置信息,RFC 2132中介紹了全部的option的定義optionsBoot file name,是一個(gè)空值終止串。DISCOVER中是“generic”名字或空字符, OFFER提供有效的目錄路徑全名。file“服務(wù)器主機(jī)名”字段是一個(gè)空值終止串,由服務(wù)器填寫(xiě)。snameClient hardware addresschaddrDHCP Relay代理的IP地址。giaddrbootstrap中,下一個(gè)Server的IP地址。siaddryour(Client)IP addressyiaddrClient IP address,只
7、有DHCP Client已經(jīng)獲得IP地址,并且能響應(yīng)ARP requests時(shí),才能被填充。ciaddr含義字段Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 8報(bào)文類(lèi)型報(bào)文類(lèi)型主要功能DHCP-DISCOVERDHCP客戶(hù)端廣播發(fā)送的,用來(lái)查找網(wǎng)絡(luò)中可用的DHCP服務(wù)器DHCP-OFFERDHCP服務(wù)器用來(lái)響應(yīng)客戶(hù)端的DHCP-DISCOVER請(qǐng)求,并為客戶(hù)端指定相應(yīng)配置參數(shù)DHCP-REQUESTDHCP客戶(hù)端廣播發(fā)送給DHCP服務(wù)器,用來(lái)請(qǐng)求配置參數(shù)或者續(xù)借租期DHCP-ACKD
8、HCP服務(wù)器通知客戶(hù)端可以使用分配的IP地址和配置參數(shù)DHCP-NAKDHCP服務(wù)器通知客戶(hù)端地址請(qǐng)求不正確或者租期已過(guò)期DHCP-RELEASEDHCP客戶(hù)端主動(dòng)向DHCP服務(wù)器發(fā)送,告知服務(wù)器該客戶(hù)端不再需要分配的IP地址DHCP-DECLINEDHCP客戶(hù)端發(fā)現(xiàn)地址沖突或由于其它原因?qū)е碌刂凡荒苁褂?,則發(fā)送DHCP-DECLINE報(bào)文,通知服務(wù)器所分配的IP地址不可用Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 9常用optionOptionNameDescription1Su
9、bnet maskSpecifies subnet mask for the client3GatewaysA list of routers, in preferential order, for the client to use.6Domain Name serversA list of Domain Name servers in preferential order. A Domain Name server enables the client to locate other computers on the network by name.50Requested IP Addre
10、ssThis option is used in a client request (DHCP-DISCOVER) to allow the client to request that a particular IP address be assigned. 53DHCP Message TypeUsed to convey the type of the DHCP message.55Parameter Request ListUsed by a DHCP client to request values for specified configuration parameters.60V
11、endor class identifierUsed by DHCP clients to optionally identify the type and configuration of DHCP client.82DHCP Relay Agent Information OptionThe option is inserted by the DHCP relay agent when forwarding client-originated DHCP packets to a DHCP server, it include a circuit ID and a remote ID .12
12、5Vendor-Identifying Vendor OptionsDHCP clients and servers may use this option to exchange vendor- specific information. Either party may send this option, as needed.Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 10DHCP報(bào)文交互過(guò)程Copyright 2012 Shanghai DareGlobal Technolo
13、gies Co., Ltd. All rights reserved. 11DHCP客戶(hù)端更新租約 l DHCP服務(wù)器分配給客戶(hù)端的服務(wù)器分配給客戶(hù)端的IP地址有一定地址有一定的租借期限,當(dāng)租借期滿(mǎn)后服務(wù)器會(huì)收回該的租借期限,當(dāng)租借期滿(mǎn)后服務(wù)器會(huì)收回該IP地址。地址。l 為了延長(zhǎng)為了延長(zhǎng)DHCP客戶(hù)端使用該地址的期限,客戶(hù)端使用該地址的期限,需要更新需要更新IP地址租約。地址租約。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 12DHCP客戶(hù)端更新租約包交互Copyright 201
14、2 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 13DHCP client狀態(tài)機(jī)Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 14DHCP中繼工作過(guò)程 由于DHCP請(qǐng)求報(bào)文采用廣播方式發(fā)送報(bào)文,因此當(dāng)DHCP客戶(hù)端和DHCP服務(wù)器處于不同子網(wǎng)時(shí),必須要通過(guò)DHCP中繼進(jìn)行通信,最終獲取到IP地址。這樣,多個(gè)網(wǎng)絡(luò)上的DHCP客戶(hù)端可以使用同一個(gè)DHCP服務(wù)器,既節(jié)省了成本,又便于進(jìn)行集中管理。Copyr
15、ight 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 15處理DHCP中繼報(bào)文 DHCP中繼代理收到DHCP報(bào)文后首先識(shí)別該報(bào)文,再進(jìn)行相應(yīng)處理。 如果DHCP報(bào)文的UDP目的端口號(hào)為67,且BOOTP報(bào)文頭中的“op”字段是BOOTREQUEST(1),即表示該報(bào)文是DHCP客戶(hù)機(jī)發(fā)給服務(wù)器的請(qǐng)求報(bào)文。DHCP中繼代理會(huì)檢查報(bào)文的“giaddr”字段,如果其值為0.0.0.0,則DHCP中繼代理設(shè)備用接受該報(bào)文的接口的IP地址填充此字段后,發(fā)送報(bào)文到指定的DHCP服務(wù)器組內(nèi)的所有DHCP服務(wù)器。 如
16、果DHCP報(bào)文的UDP目的端口號(hào)為67,且BOOTP報(bào)文頭中的“op”字段是BOOTREPLY(2),即表示該報(bào)文是DHCP服務(wù)器希望通過(guò)中繼代理轉(zhuǎn)發(fā)給DHCP客戶(hù)端的回應(yīng)報(bào)文。DHCP中繼代理會(huì)將該報(bào)文從“giaddr”字段所屬的接口發(fā)送到指定的DHCP客戶(hù)端。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 16中國(guó)電信DHCP擴(kuò)展規(guī)范 發(fā)送discover報(bào)文的時(shí)間間隔 續(xù)租機(jī)制 終端ARP探測(cè)流程(福建電信地方規(guī)范) Option 60擴(kuò)展 Option 125擴(kuò)展Copyrig
17、ht 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 17發(fā)送discover報(bào)文的時(shí)間間隔 如第一次 DHCP 的請(qǐng)求,未收到來(lái)自DHCP 服務(wù)器的響應(yīng)后,需按照協(xié)議棧的要求在第 4 秒、第 8 秒、第 16 秒、第 32 秒、第 64 秒、第124秒、第184秒第304秒分別發(fā)起地址請(qǐng)求,且每次只發(fā)送一個(gè)請(qǐng)求報(bào)文。如第秒仍未收到服務(wù)器響應(yīng),則重啟會(huì)話(huà),重復(fù)上述過(guò)程。其中福建電信要求: seconds elapse字段需記錄本次流程中所發(fā)送的累計(jì)時(shí)間,以秒為單位。 設(shè)備上電后,第一個(gè)DHCP Disco
18、ver包要在060秒之間隨機(jī)時(shí)延一段后發(fā)出。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 18discover報(bào)文的時(shí)間間隔實(shí)例Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 19續(xù)租機(jī)制 上圖中T1.5(68.75%, 5.5/8, 11/16)和T2.5(93.75%,7.5/8, 15/16)是中國(guó)電信的對(duì)標(biāo)準(zhǔn)規(guī)范的擴(kuò)展。Copyright 2012 Shanghai
19、DareGlobal Technologies Co., Ltd. All rights reserved. 20續(xù)租未響應(yīng)的抓包Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 21在T1期間總是得到響應(yīng)的抓包Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 22在T2期間才得到響應(yīng)的抓包Copyright 2012 Shanghai DareGlobal Technologie
20、s Co., Ltd. All rights reserved. 23終端ARP探測(cè) (福建電信規(guī)范)Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 24ARP探測(cè)流程 1)家庭網(wǎng)關(guān)正常獲取后,ARP探測(cè)機(jī)制開(kāi)始探測(cè)。探測(cè)周期為每四分鐘一次,探測(cè)包為全廣播包,探測(cè)三層地址為本接口網(wǎng)關(guān)地址。2)探測(cè)包發(fā)送后,等待超時(shí)時(shí)間為五秒。若五秒內(nèi)收到ARP回復(fù),本次探測(cè)結(jié)束。若五秒超時(shí)未收到ARP回復(fù),則:發(fā)送以廣播形式發(fā)送Request發(fā)(包中攜帶本接口之前正常獲取的地址)續(xù)租。3)若未收到 s
21、erver回應(yīng)的ACK報(bào)文。重復(fù)本過(guò)程發(fā)送Request報(bào)文(重復(fù)發(fā)送間隔為)。任何一次收到ACK報(bào)文后,本次探測(cè)結(jié)束。若)中三次Request續(xù)租報(bào)文均無(wú)回應(yīng),則重啟會(huì)話(huà)。(如同重新開(kāi)機(jī)流程)Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 25ARP鏈路檢測(cè)總是正常的抓包Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 26ARP探測(cè)異常發(fā)request抓包Copyright
22、2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 27ARP探測(cè)異常且無(wú)法恢復(fù)抓包Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 28Option 60字段名長(zhǎng)度內(nèi)容Code8固定值,60Length8整個(gè)報(bào)文長(zhǎng)度Enterprise Code16企業(yè)代碼(參照e8規(guī)范)Field type8擴(kuò)展屬性,固定值31Field Length8擴(kuò)展域的長(zhǎng)度Field Value認(rèn)證加密信息 0 1 2 3
23、 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | code (60) | Length | Enterprise Code | +-+-+-+-+ | Field type | Field Length | Field Value | +-+-+Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights
24、reserved. 29Option 60 Option60字段鑒權(quán)規(guī)劃參照中國(guó)電信“我的e家”技術(shù)規(guī)范e家終端(e8)文中標(biāo)準(zhǔn)設(shè)計(jì)。 擴(kuò)充Filed Type 31 - 60 為 IPTV 機(jī)頂盒專(zhuān)用,其中Field Type 31定義為IPTV機(jī)頂盒DHCP認(rèn)證的鑒權(quán)信息(具體為:接入層用戶(hù)名、密碼等信息加密后的密文,加密算法見(jiàn)本文相關(guān)內(nèi)容)。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 30Option 60加密算法 在家庭網(wǎng)關(guān)啟動(dòng)后,如果FLASH中沒(méi)有儲(chǔ)存VOIP用戶(hù)名和密
25、碼信息,則OPTION 60相關(guān)信息如下:Type為34;Value為24位家庭網(wǎng)關(guān)序列號(hào)+默認(rèn)VOIP賬號(hào)字符串(固定為”admin/admin”)。如果VOIP賬號(hào)已保存到家庭網(wǎng)關(guān)的FLASH中, Option 60字段相關(guān)信息如下:Type值為34,Value值為24位家庭網(wǎng)關(guān)序列號(hào)+VoIP賬號(hào)的加密字符串 DHCP平臺(tái)對(duì)網(wǎng)關(guān)OPTION 60字段進(jìn)行驗(yàn)證,對(duì)驗(yàn)證通過(guò)的返回OFFER報(bào)文,沒(méi)有通過(guò)的丟棄該報(bào)文不做任何處理。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 31Op
26、tion 60加密算法家庭網(wǎng)關(guān)從FLASH中讀取出VoIP/IPTV賬號(hào)信息:用戶(hù)名(UserID)、密碼(Password)家庭網(wǎng)關(guān)生成隨機(jī)數(shù)R,R長(zhǎng)度為64bit ,8字節(jié)。家庭網(wǎng)關(guān)生成時(shí)間戳TS,TS定義為距離格林威志時(shí)間1970年0點(diǎn)秒數(shù)的64bit 整型,強(qiáng)制轉(zhuǎn)換8字節(jié)長(zhǎng)整型,如位數(shù)不夠高位補(bǔ)0。家庭網(wǎng)關(guān)生成密文C = EnCry(R+TS+64Bit, UserID), 例如C的長(zhǎng)度為128bit,UserID為120bit(15字符),EnCry為3DES對(duì)稱(chēng)加密算法,密鑰為R+TS后用64位0補(bǔ)足192bit。家庭網(wǎng)關(guān)生成密鑰Key = Hash(R+Password+TS),
27、其中Key為128bit,Hash()為哈希算法,這里定義為MD5;R+Password+TS就是Byte的直接拼接。家庭網(wǎng)關(guān)生成發(fā)送消息Message = O+R+TS+Key+C,其中O描述使用的對(duì)稱(chēng)加密算法8bit,O=1:表示為上述描述的加密算法,O=其他數(shù)字:保留。 Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 32Option 60字段舉例CT option 60 全字段(UserIdad66133512iptv Password123456)3C 35 00 00 1F
28、 31 01 0A DA A1 3C 13 0D 33 6A 0E00 00 00 00 00 00 00 53 BE 31 31 0F 1F 5F C8 538E 67 70 77 32 19 DE A4 ED BA BF 98 50 1E D1 6CBF DE 0D 0E A5 0F F9 Type. . . . . . : 60(0 x3C) Length. . . . . : 53(0 x35) Enterprise Code : 0(0 x00 0 x00) Field type. . . : 31(0 x1F) Field Length. . : 49(0 x31) 加密方式. .
29、 . . : 1(0 x01)加密計(jì)算:隨機(jī)數(shù):0A DA A1 3C 13 0D 33 6A時(shí)間戳:0E 00 00 00 00 00 00 00密鑰Key:53 BE 31 31 0F 1F 5F C8 53 8E 67 70 77 32 19 DE密文C:A4 ED BA BF 98 50 1E D1 6C BF DE 0D 0E A5 0F F9Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 33Option 125 OPTION 125 功能是對(duì)標(biāo)準(zhǔn)DHCP協(xié)議一個(gè)補(bǔ)充標(biāo)準(zhǔn),
30、該功能的標(biāo)準(zhǔn)定義在RFC 3925中。 DHCP服務(wù)器在完成驗(yàn)證將客戶(hù)端的IP地址等信息封裝成DHCP OFFER包的時(shí)候,將OPTION 125信息封裝進(jìn)DHCP OFFER包中再發(fā)送給客戶(hù)端。 DHCP 服務(wù)器在收到Request包后,同樣也會(huì)在回給機(jī)頂盒的ACK包中添加OPTION125的信息。 客戶(hù)端收到OFFER/ACK包以后,首先查看該OFFER/ACK包中OPTION 125中的約定的信息,并與預(yù)先存儲(chǔ)的信息進(jìn)行比對(duì)。比對(duì)結(jié)果為相同則使用此OFFER/ACK,如果比對(duì)信息不同則將此OFFER/ACK丟棄。Copyright 2012 Shanghai DareGlobal Tec
31、hnologies Co., Ltd. All rights reserved. 34Option 125 格式 Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 35Option 125舉例舉例: Option-code=125 Option-len=DHCP 服務(wù)器廠商自定義 Enterprise-number1=DHCP 服務(wù)器廠商自定義 data-len1=16 vendor-class-data1=SHCTCIPTVDHCPAAACopyright 2012 Shanghai
32、DareGlobal Technologies Co., Ltd. All rights reserved. 36中國(guó)電信Option 125擴(kuò)展功能Option125特定字段內(nèi)容定義 enterprise-number1:待定,暫用0。 option-data1:DHCP SERVER特定信息(根據(jù)需要添加,總字節(jié)數(shù)不可超過(guò)250) Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 37Option125 擴(kuò)展字段定義 subopt-codesubopt-lensub-option-d
33、ataDescription of sub-option-data11-32設(shè)備的生產(chǎn)廠商名稱(chēng)字符串格式,建議使用英文或拼音21-32DHCP server的設(shè)備種類(lèi)或分類(lèi)字符串格式,如: HGW-CT STB DHCP SERVER DHCP SERVER No.531-32DHCP server 的設(shè)備型號(hào)字符串格式,如DS-8000102上網(wǎng)類(lèi)業(yè)務(wù)的VLAN ID2個(gè)字節(jié)十六進(jìn)制數(shù)(高字節(jié)在前),值0 x2000表示untag112IPTV業(yè)務(wù)的VLAN ID2個(gè)字節(jié)十六進(jìn)制數(shù)(高字節(jié)在前),值0 x2000表示untag122IMS業(yè)務(wù)的VLAN ID2個(gè)字節(jié)十六進(jìn)制數(shù)(高字節(jié)在前),
34、值0 x2000表示untag132VOICE業(yè)務(wù)的VLAN ID2個(gè)字節(jié)十六進(jìn)制數(shù)(高字節(jié)在前),值0 x2000表示untag1360(預(yù)留)83保留原有IPTV通道DHCP server專(zhuān)用其它(待定)Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 38Option125 舉例說(shuō)明0000 7d 1c 00 00 00 00 17 02 06 48 47 57 2d 43 54 03 .HGW-CT.0010 09 44 50 36 30 37 2d 47 56 39 0b 02
35、 00 64 .DP607-GV9.d7d (option 125)1c (length 28)00 00 00 00 (enterprise-number1:待定,暫用0)17 (data-len1 = 23)02 (subopt-code 2) 06 (subopt-len) 48 47 57 2d 43 54 (HGW-CT)03 (subopt-code 3) 09 (subopt-len) 44 50 36 30 37 2d 47 56 39 (DP607-GV9)0b (subopt-code 11) 02 (subopt-len) 00 64 (IPTV業(yè)務(wù)的VLAN ID=10
36、0)Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 39現(xiàn)網(wǎng)DHCP案例分析福州語(yǔ)音問(wèn)題通過(guò)option 60實(shí)現(xiàn)對(duì)A/B業(yè)務(wù)平面的訪問(wèn) Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 40福州語(yǔ)音問(wèn)題現(xiàn)網(wǎng)現(xiàn)象描述 接福建大亞現(xiàn)場(chǎng)技術(shù)支持工程師(FAE)黃紅慈報(bào)道,SVN:5571的軟件版本,在福州幾個(gè)本地網(wǎng)多出現(xiàn)語(yǔ)音不能使用,到現(xiàn)場(chǎng)看了一下,發(fā)現(xiàn)PING SBC地址無(wú)法通,查
37、看路由表有IP存在,局方數(shù)據(jù)查詢(xún)說(shuō)該ONU無(wú)發(fā)續(xù)約包過(guò)來(lái),導(dǎo)致半個(gè)小時(shí)后語(yǔ)音不能正常使用,但在現(xiàn)場(chǎng)發(fā)現(xiàn)是有IP地址的。另外只要重新設(shè)置一下WAN口連接(就是點(diǎn)擊一下VLAN:45 按確認(rèn)后)設(shè)備在上報(bào)IP請(qǐng)求,IP就可以通了。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 41現(xiàn)網(wǎng)現(xiàn)象初步分析和定位 初步分析:可能是續(xù)租包沒(méi)有發(fā)出來(lái),目前網(wǎng)關(guān)在續(xù)租到期未續(xù)租成功的情況下,IP地址可繼續(xù)使用(符合前面的“查看路由表有IP存在”),但無(wú)法ping通SBC(因?yàn)榈刂芬呀?jīng)被回收)。另外重新設(shè)置
38、一下WAN口連接,這是會(huì)重新開(kāi)始DISCOVER的過(guò)程,就又能拿到server分配的IP了(符合前面的“IP就可以通了”)。 通過(guò)大亞FAE在現(xiàn)場(chǎng)的抓包,確實(shí)沒(méi)有發(fā)現(xiàn)發(fā)續(xù)租包,包括單播和廣播續(xù)租包。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 42在公司內(nèi)的驗(yàn)證 升級(jí)為同樣的版本,同樣的組網(wǎng)環(huán)境,在公司內(nèi)驗(yàn)證,發(fā)現(xiàn)DHCP所有過(guò)程一切正常,包括續(xù)租過(guò)程。DHCP續(xù)租包總是在租約期的一半時(shí)間向DHCP server準(zhǔn)時(shí)發(fā)出。Copyright 2012 Shanghai DareGlo
39、bal Technologies Co., Ltd. All rights reserved. 43初步懷疑方向 因?yàn)槭窃赩OIP WAN連接上發(fā)生了DHCP無(wú)法續(xù)租成功,而VOIP WAN連接是使用的獨(dú)立的路由表(與INTERNET路由表不一樣)。根據(jù)以往的經(jīng)驗(yàn),DHCP 單播續(xù)租包無(wú)法發(fā)出的一種可能是路由表不正確,導(dǎo)致單播包無(wú)法找到路由而發(fā)送失敗。根據(jù)負(fù)責(zé)組網(wǎng)模塊的工程師說(shuō)法,福建那邊有一個(gè)特殊需求,從offer包提供的網(wǎng)關(guān)地址和網(wǎng)段掩碼,無(wú)論掩碼長(zhǎng)度為多少,都加一個(gè)8位地址的掩碼的路由。根據(jù)為福建電信定制功能而寫(xiě)的代碼,例如會(huì)添加了一條以下的路由:ip route add to 10.8
40、.0.0/8 dev eth4.46_1 table t31實(shí)際上這條路由添加是不會(huì)成功的,經(jīng)過(guò)路由表查看,這樣的路由沒(méi)有添加成功的,因?yàn)樽泳W(wǎng)和掩碼長(zhǎng)度不匹配,需要修改成以下這樣的路由才能添加成功。ip route add to 10.0.0.0/8 dev eth4.46_1 table t31因此懷疑路由沒(méi)有添加成功導(dǎo)致單播DHCP續(xù)租包未能成功發(fā)出,經(jīng)過(guò)修改代碼,修正了以上的bug,發(fā)送版本給前方驗(yàn)證。 Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 44對(duì)初步懷疑的驗(yàn)證 經(jīng)過(guò)前
41、方驗(yàn)證,故障依舊,雖然前面bug得到了修正,但DHCP的問(wèn)題與此bug無(wú)關(guān)。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 45再次分析驗(yàn)證(1) 因?yàn)樵诠经h(huán)境里測(cè)試一切正常,在福建現(xiàn)網(wǎng)環(huán)境不正常,因此懷疑與網(wǎng)絡(luò)環(huán)境是有很大關(guān)系的。查看DHCP模塊代碼的歷史修訂記錄,在今年2月份時(shí)未福建電信增加了DHCP ARP 探測(cè)的功能,是否與此有關(guān)? 因?yàn)锳RP探測(cè)功能可以單獨(dú)關(guān)閉,不啟用ARP探測(cè)功能,經(jīng)前方驗(yàn)證,問(wèn)題依舊。 把DHCP模塊的代碼倒退到2月份之前的版本,重新編譯,發(fā)給前方驗(yàn)證
42、,問(wèn)題消失。 看來(lái)是ARP探測(cè)功能加入后引入的bug。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 46再次分析驗(yàn)證(2) 為了證明推論,關(guān)掉NTP服務(wù),重啟設(shè)備,續(xù)租包能夠正常發(fā)出,證明確實(shí)與NTP服務(wù)有關(guān)。并進(jìn)一步分析出以下過(guò)程:1) 開(kāi)機(jī)DHCP首先拿到地址,根據(jù)當(dāng)前的系統(tǒng)時(shí)間+租期/2得到開(kāi)始發(fā)續(xù)租包的時(shí)間(在2000年)2) NTP在WAN口得到地址后開(kāi)始啟動(dòng),更新系統(tǒng)時(shí)間到2012年3) DHCP進(jìn)程檢查發(fā)續(xù)租包的時(shí)間永遠(yuǎn)無(wú)法滿(mǎn)足,由于時(shí)間坐標(biāo)系不一致,續(xù)租時(shí)間是按200
43、0年為基準(zhǔn),當(dāng)前時(shí)間按NTP更新后的時(shí)間2012年為基準(zhǔn),導(dǎo)致發(fā)續(xù)租包的時(shí)間條件不滿(mǎn)足,永遠(yuǎn)發(fā)不出續(xù)租包。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 47再次分析驗(yàn)證(3) 需要在代碼中加入debug信息,看為何到了租期的一半時(shí)間DHCP續(xù)租為何不能發(fā)出。根據(jù)實(shí)現(xiàn)的原理,需要有兩個(gè)定時(shí)器,一個(gè)定時(shí)器檢查租期是否過(guò)半,一個(gè)檢查ARP探測(cè)定時(shí)器是否到時(shí)間,這兩個(gè)定時(shí)器每秒鐘分別檢查一次。 定時(shí)器的檢查是基于系統(tǒng)時(shí)間秒數(shù),以1970年1月1日0時(shí)0秒為基準(zhǔn)點(diǎn),取當(dāng)前時(shí)間距基準(zhǔn)點(diǎn)的秒數(shù),與
44、預(yù)計(jì)租期到一半的時(shí)間點(diǎn)進(jìn)行比較,如果等于這個(gè)時(shí)間點(diǎn),續(xù)租包就發(fā)出。 經(jīng)過(guò)分析debug信息,發(fā)現(xiàn)續(xù)租時(shí)間和當(dāng)前時(shí)間差別巨大,差值在12年左右。因?yàn)槔m(xù)租時(shí)間是在當(dāng)前時(shí)間+租期/2上得出的,不會(huì)差別這么大,推測(cè)與NTP服務(wù)開(kāi)啟有關(guān),系統(tǒng)默認(rèn)時(shí)間是2000年,NTP更新后在2012年,正好差別12年。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 48再次分析驗(yàn)證(4) 通過(guò)以上分析,需要在NTP更新時(shí)間后,調(diào)整以前續(xù)租時(shí)間的坐標(biāo)系才能校準(zhǔn)時(shí)間,滿(mǎn)足發(fā)續(xù)租包的時(shí)間條件。 修改代碼,在檢查到續(xù)
45、租時(shí)間和當(dāng)前時(shí)間差值大于一個(gè)租期時(shí)(這種情況只有NTP修改時(shí)間才可能發(fā)生),立刻調(diào)整續(xù)租時(shí)間為當(dāng)前時(shí)間。通過(guò)驗(yàn)證,能夠解決此問(wèn)題。 根據(jù)代碼修改記錄,同樣可以解釋SVN 5399的版本無(wú)問(wèn)題, SVN 5711版本存在此問(wèn)題。在此兩個(gè)版本之間,增加了DHCP模塊每4分鐘ARP檢查的功能,修 改了有關(guān)定時(shí)器的機(jī)制,以同時(shí)滿(mǎn)足定時(shí)器對(duì)續(xù)租和ARP檢查兩個(gè)功能的同時(shí)支持,定時(shí)器在正常情況下本身無(wú)問(wèn)題,但沒(méi)有考慮到NTP服務(wù)刷新系統(tǒng)時(shí)間帶來(lái)的影響,導(dǎo)致 了這個(gè)差別。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights
46、reserved. 49再次分析驗(yàn)證(5) 根據(jù)代碼修改記錄,同樣可以解釋SVN 5399的版本無(wú)問(wèn)題, SVN 5711版本存在此問(wèn)題。 在此兩個(gè)版本之間,增加了DHCP模塊每4分鐘ARP檢查的功能,修 改了有關(guān)定時(shí)器的機(jī)制,以同時(shí)滿(mǎn)足定時(shí)器對(duì)續(xù)租和ARP檢查兩個(gè)功能的同時(shí)支持 定時(shí)器在正常情況下本身無(wú)問(wèn)題,但沒(méi)有考慮到NTP服務(wù)刷新系統(tǒng)時(shí)間帶來(lái)的影響,導(dǎo)致 了這個(gè)差別。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 50多定時(shí)器實(shí)現(xiàn)機(jī)制Copyright 2012 Shanghai
47、 DareGlobal Technologies Co., Ltd. All rights reserved. 51現(xiàn)網(wǎng)問(wèn)題的解決方法 針對(duì)前面出現(xiàn)的問(wèn)題,解決現(xiàn)網(wǎng)存在問(wèn)題的方法有如下幾種: 1) 升級(jí)到最新版本2) 退回到版本5399,但此版本無(wú)ARP檢查的功能3) 關(guān)閉NTP的功能,重啟設(shè)備?;蛘咦岆娦抨P(guān)掉NTP服務(wù)器Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 52更優(yōu)化的解決方案 經(jīng)過(guò)前面的分析,此問(wèn)題的實(shí)質(zhì)是因?yàn)橄到y(tǒng)時(shí)間發(fā)生漂移,導(dǎo)致定時(shí)器無(wú)法按預(yù)期時(shí)間點(diǎn)觸發(fā)原定任務(wù)的處理
48、,雖然前面的解決辦法可以在偵測(cè)到故障發(fā)生時(shí)能夠自行恢復(fù),但畢竟屬于事后補(bǔ)救的方法,能否做到徹底解決呢? 考慮到系統(tǒng)啟動(dòng)后先設(shè)置系統(tǒng)默認(rèn)時(shí)間(例如2010年1月1日0時(shí)0分),然后DHCP獲得地址后,再通過(guò)SNTP服務(wù)取得當(dāng)前的實(shí)際時(shí)間,實(shí)際時(shí)間與系統(tǒng)默認(rèn)時(shí)間肯定是不同的。這幾個(gè)過(guò)程的時(shí)序都是固定的,無(wú)法在此基礎(chǔ)上做任何改進(jìn)。 后來(lái)想到了取系統(tǒng)自上電以來(lái)的秒數(shù)(uptime),這個(gè)應(yīng)該與系統(tǒng)時(shí)間無(wú)直接關(guān)系,并且在修改系統(tǒng)時(shí)間后,理論上也不會(huì)發(fā)生任何突變。經(jīng)過(guò)驗(yàn)證,的確如此。 以系統(tǒng)上電的時(shí)間作為參考點(diǎn),取當(dāng)前的uptime作為時(shí)間比較點(diǎn),經(jīng)過(guò)驗(yàn)證,可以徹底解決此問(wèn)題。Copyright 2012
49、 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 53更優(yōu)化的解決方案之關(guān)鍵代碼在系統(tǒng)頭文件中的定義struct sysinfo long uptime;/* Seconds since boot */*封裝了一個(gè)函數(shù),能夠返回系統(tǒng)自啟動(dòng)以來(lái)的秒數(shù)*/long get_uptime()struct sysinfo s_info;int error;error = sysinfo(&s_info);if(error != 0) printf(get_uptime code error = %dn, error
50、);return 0;return s_info.uptime; Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 54一些經(jīng)驗(yàn)教訓(xùn) 研發(fā)寫(xiě)代碼時(shí)需要仔細(xì)考慮各種情況下代碼的邏輯是否正確。本案例中因?yàn)楹雎粤讼到y(tǒng)時(shí)間可能變化,導(dǎo)致基準(zhǔn)時(shí)間變化,導(dǎo)致定時(shí)器不準(zhǔn)。概率雖然看似很小,但一旦條件滿(mǎn)足,就百分之百地出現(xiàn)故障。不完整的測(cè)試會(huì)放過(guò)一些bug在本案例中,因?yàn)橐郧暗拿看螠y(cè)試(包括自測(cè),測(cè)試人員測(cè)試,現(xiàn)網(wǎng)測(cè)試,發(fā)行測(cè)試),都未能開(kāi)啟SNTP服務(wù),導(dǎo)致無(wú)法測(cè)試出此bug。而且即使開(kāi)啟SNTP服務(wù)
51、,普通的測(cè)試無(wú)法測(cè)試出此bug。要測(cè)試出此bug,還需要滿(mǎn)足以下條件: 1)測(cè)試時(shí)間足夠長(zhǎng),要大于租期的一半時(shí)間以上 2)局端設(shè)備(OLT,DHCP server等)要對(duì)未續(xù)租成功的設(shè)備回收IP地址,取消到此設(shè)備的路由因此,需要包括研發(fā),測(cè)試,F(xiàn)AE在內(nèi)的人都需要提高警覺(jué),每個(gè)環(huán)節(jié)都不能放松。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 55一些技巧總結(jié) 為了快速測(cè)試,可以把DHCP租期時(shí)間盡量設(shè)置短一些,以便盡早完成整個(gè)測(cè)試過(guò)程。在現(xiàn)網(wǎng)中,由于無(wú)法修改局端的DHCP server的
52、租期,可以在代碼中修改,例如在現(xiàn)網(wǎng)中DHCP租期時(shí)間是30分鐘,在代碼中把租期時(shí)間直接修改為100秒,不影響此問(wèn)題的本質(zhì)。在過(guò)50秒沒(méi)有發(fā)出續(xù)租包,即可認(rèn)為存在問(wèn)題。 可以通過(guò)使用更改系統(tǒng)時(shí)間的命令來(lái)模擬SNTP服務(wù)的效果,這樣可以簡(jiǎn)化和加快自測(cè)的效果。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 56通過(guò)DHCP實(shí)現(xiàn)對(duì)A/B平面的訪問(wèn) 應(yīng)用背景 方案設(shè)計(jì) 方案驗(yàn)證結(jié)果 個(gè)別現(xiàn)網(wǎng)問(wèn)題的解決 方案進(jìn)一步優(yōu)化LAN側(cè)VLAN綁定Copyright 2012 Shanghai DareGl
53、obal Technologies Co., Ltd. All rights reserved. 57應(yīng)用背景 在2009年底,上海電信欲推出一種新集上網(wǎng),看IPTV業(yè)務(wù)于一體的無(wú)線(xiàn)終端設(shè)備-魔屏,此設(shè)備的特點(diǎn)是能夠同時(shí)訪問(wèn)A/B平面。所謂的A平面是指INTERNET網(wǎng)絡(luò),B平面是IPTV平面,B平面與A平面不能互相訪問(wèn),完全由中國(guó)電信經(jīng)營(yíng)維護(hù),完全獨(dú)立的IP地址空間。 以往通過(guò)家庭網(wǎng)關(guān)接入的設(shè)備,由端口綁定決定這個(gè)設(shè)備要么只能訪問(wèn)A平面,要么只能訪問(wèn)B平面,無(wú)法同時(shí)訪問(wèn)A/B平面。訪問(wèn)A平面相當(dāng)于PC的行為,訪問(wèn)B平面相當(dāng)于IPTV機(jī)頂盒的行為。Copyright 2012 Shanghai
54、 DareGlobal Technologies Co., Ltd. All rights reserved. 58A/B平面組網(wǎng)示意圖Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 59方案設(shè)計(jì)(初步)為了使魔屏使用簡(jiǎn)單,魔屏是使用DHCP方式獲得地址。研究了B平面DHCP的電信規(guī)范,發(fā)現(xiàn)B平面對(duì)DHCP有特殊要求,其中一個(gè)要求是在option 60中可以識(shí)別IPTV機(jī)頂盒,即在option 60中有IPTV機(jī)頂盒的特征字段。因?yàn)锳/B平面IP地址空間是獨(dú)立的,要同時(shí)訪問(wèn)這兩個(gè)平面一
55、定需要兩個(gè)獨(dú)立的IP地址,對(duì)于魔屏而言,需要在兩個(gè)平面分別DHCP獲取IP。由于端口綁定的原因,在正常情況下,哪怕發(fā)出兩次不同的DHCP請(qǐng)求,只能獲得一個(gè)平面的地址。按常規(guī)的做法是,網(wǎng)關(guān)開(kāi)啟兩個(gè)SSID, 一個(gè)綁定在A平面,另外一個(gè)綁定在B平面。魔屏分別連接兩個(gè)SSID,這樣就可以同時(shí)訪問(wèn)A/B平面了。這種做法在理論上可行,但從成本上和管理維護(hù)上是不可行的,因?yàn)橐B接上兩個(gè)SSID,魔屏或許需要兩個(gè)WiFi芯片,成本要增加,而且兩個(gè)SSID的連接即使從用戶(hù)使用角度看也是非常麻煩的。最好能從一個(gè)SSID連接上就能同時(shí)訪問(wèn)A/B平面。Copyright 2012 Shanghai DareGlobal Technologies Co., Ltd. All rights reserved. 60方案設(shè)計(jì)(優(yōu)化) 使用一個(gè)SSID同時(shí)訪問(wèn)A/B平面 默認(rèn)訪問(wèn)A平面,默認(rèn)從
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 社會(huì)群體與個(gè)體之間的互動(dòng)模式試題及答案
- 2025年金融工具對(duì)工程經(jīng)濟(jì)影響試題及答案
- 2025至2030年中國(guó)鋼制管型衛(wèi)浴片行業(yè)投資前景及策略咨詢(xún)研究報(bào)告
- 2025年多式聯(lián)運(yùn)信息平臺(tái)智能化改造與產(chǎn)業(yè)鏈協(xié)同發(fā)展研究報(bào)告
- 2025年中級(jí)會(huì)計(jì)實(shí)務(wù)考試資料匯編試題及答案
- 2025年面包防腐保鮮劑項(xiàng)目可行性研究報(bào)告
- 2025年新零售背景下實(shí)體書(shū)店書(shū)店+書(shū)店+書(shū)店+書(shū)店+社區(qū)文化中心合作策略報(bào)告
- 2025年草莓油香精項(xiàng)目可行性研究報(bào)告
- 2025年新型食品冷鏈溫控技術(shù)在質(zhì)量保障中的應(yīng)用研究
- 財(cái)務(wù)管理領(lǐng)域的職業(yè)認(rèn)證試題及答案
- 2025年中小學(xué)科學(xué)素養(yǎng)測(cè)評(píng)考試題及答案
- 2024年延安通和電業(yè)有限責(zé)任公司招聘筆試真題
- 液壓油供應(yīng)合同協(xié)議
- 2025-2030煤油產(chǎn)業(yè)規(guī)劃專(zhuān)項(xiàng)研究報(bào)告
- 香港勞務(wù)服務(wù)合同協(xié)議
- 園林噴灑器企業(yè)數(shù)字化轉(zhuǎn)型與智慧升級(jí)戰(zhàn)略研究報(bào)告
- GB/T 9065.2-2025液壓傳動(dòng)連接軟管接頭第2部分:24°錐形
- 建設(shè)工程質(zhì)量安全管理獎(jiǎng)罰制度匯編
- 小學(xué)語(yǔ)文四年級(jí)上冊(cè)作業(yè)設(shè)計(jì)《21.古詩(shī)三首》(附答案)部編版
- 清遠(yuǎn)樂(lè)排河水質(zhì)達(dá)標(biāo)方案
- 生活垃圾焚燒發(fā)電廠爐渣綜合利用項(xiàng)目建議書(shū)模板
評(píng)論
0/150
提交評(píng)論