冀衛鋒,翟 俊
(1.山西省太原市財政金融學校;2.山西省太原市太鋼自動化公司)
隨著網絡技術的不斷普及,幾乎每個單位都建立了自己的局域網,我校校園網建設于2003 年,經過多次升級改造,目前具有四百六十個信息點。在網絡中進行地址分配時,結合學校實際情況,采用了動態分配和靜態分配相結合的方式,本文主要討論動態地址分配。
動態地址分配IP 地址是指計算機不再由網絡管理員手工配置地址,而是自動從DHCP 服務器獲取一個統一分配的地址。其主要特點是配置和修改工作量小,只需部署一臺DHCP 服務器,在TCP/IP 參數發生變化時,只需在DHCP 服務器上進行簡單配置,其他計算機則無需任何改動。
動態地址分配的弱點在于需要單獨配置一臺DHCP 服務器,而且對于DHCP 服務器的依賴性過大,一旦DHCP 服務器出現故障,則會對網絡形成致命影響;在一些服務器的地址配置上,無法采用動態地址分配;另外,一些機房管理軟件也要求不能采用動態地址分配。
動態地址分配采用DHCP 協議,該協議主要用于給網絡中的計算機自動分配IP 地址并能作為中央管理的手段。
DHCP 的工作過程如下:
發現階段:DHCP 客戶機以廣播方式發送DHCP discover 尋找DHCP 服務器,每一臺安裝了TCP/IP 協議的主機都會收到,但只有DHCP 服務器才會做出響應。
提供階段:網絡中接收到DHCP discover 信息的DHCP 服務器都會做出響應,它從IP 地址池中挑選一個尚未出租的IP 地址分配給DHCP 客戶機,以廣播方式向DHCP 客戶機發送一個DHCP offer。
選擇階段:如果有多臺DHCP 服務器響應DHCP 客戶機發出的DHCP discover,則DHCP 客戶機只接收第一個收到的DHCP offer 提供信息,以廣播方式回答一個DHCP request 信息。
確認階段:當DHCP 服務器收到DHCP 客戶機回答的DHCP request 請求信息之后,如果確認將地址分配給該客戶機,則以廣播方式返回DHCP ack 消息,告訴DHCP 客戶機可以使用它所提供的IP 地址,DHCP 客戶機便將獲取到的IP 地址與網卡綁定。除DHCP 客戶機選中的服務器外,其他的DHCP 服務器都將收回曾提供的IP 地址。
我校在使用動態地址分配的過程中,遇到過兩次故障。
在一次學生上機課中,發生學生機無法獲得IP 地址的情況,提示DHCP 服務器不可用,無法獲得IP 地址,重新啟動計算機故障依舊。
根據DHCP 的工作過程:客戶機啟動后首先以廣播方式發送DHCP discover 信息,以獲得DHCP 服務器的IP 地址;接下來,DHCP 服務器收到DHCP 客戶機廣播的DHCP discover 信息后,以廣播方式DHCP 客戶機發送DHCP offer 信息,其中包括一個可租用的IP 地址。如果DHCP 服務器沒有對客戶機的請求作出反應,即初始化失敗,這時客戶機會自動給自己分配一個IP 地址并且在后臺每隔五分鐘發送四次DHCP discover 信息,直至收到DHCP offer 信息。
通過測線儀及ping 命令對網線進行測試,排除了物理線路造成故障的猜測;同時在學生機上抓包,發現學生機發出了DHCP discover 信息,由此判斷是DHCP 服務器沒有做出正常響應。另外,抓包中發現有大量數據包在網絡中傳輸,根據對應的IP 地址發現通信方是正在進行網絡克隆恢復的幾臺學生機與服務器。當時這些學生機由于系統被破壞而正在進行網絡克隆恢復,服務器需要進行大量的數據傳輸,使得無法及時響應DHCP 請求,造成學生機無法獲得IP 地址。網絡克隆過程結束后,啟動客戶機,很順利地獲得了IP 地址,問題得以解決。這一故障發生在一個老舊機房,目前基本上不會遇到。
故障表現為客戶機能夠獲得IP 地址,但是無法上網。查看客戶機所獲取的IP 地址,發現客戶機獲得的IP 地址不在規劃的校園網地址段內。
同樣根據DHCP 的工作原理,如果當網絡中存在多臺DHCP服務器時,各個DHCP 服務器都會根據自己管理的IP 地址池向客戶機返回一個DHCPoffer,但是客戶機只會選擇接受最先收到的DHCP offer,所以,用戶計算機通常會從最近的DHCP 中獲得IP 地址。
根據客戶機獲得的IP 地址及TCP/IP 參數進行查證,發現有老師為方便使用私自接入了路由器,但是混淆了路由器的LAN 口和WAN 口,將具有與DHCP 功能的LAN 口接入到校園網而導致故障發生。
綜上討論,在局域網中,通常根據網絡的實際情況采用靜態地址與動態地址相結合的方式進行地址分配,少部分客戶端通過靜態地址接入網絡,而大多數客戶DHCP 服務器進行地址分配,DHCP 能夠大大減輕減輕網絡管理員的工作量,但是也會帶來一些問題,作為網絡管理員,要對DHCP 的工作原理深入了解,隨時對配置中可能出現的問題做好準備。