1. 程式人生 > >DHCP服務器的搭建及抓包分析DHCP的實現

DHCP服務器的搭建及抓包分析DHCP的實現

並不是 over bsp config 所有 沒有 實的 狀態 流動

原文:http://blog.51cto.com/liwenhui/105129

技術分享圖片

1、環境搭建:
DC&DHCP SERVER
IP:192.168.1.254 ( 這是一臺DC兼DHCP服務器,設靜態IP )
Mask:255.255.255.0
DG:192.168.1.7(DHCP中繼代理“本地連接”的IP)
作用域 (IP地址範圍) : 192.168.2.1~192.168.2.254(在此僅為2.0網段做DHCP)
作用域選項:“003路由器”---添加IP:192.168.1.7,這是為所有2.0網段的客戶機添加默認網關;“006DNS服務器”---添加IP:192.168.1.254,這是客戶機的首選DNS服務器,因為要加入域。
添加排除:192.168.1.7~192.168.1.8(排除DHCP中繼代理“本地連接2”的IP地址)
DHCP中繼代理(用一臺雙網卡的windows2003機器做中繼代理)
本地連接
IP:192.168.1.7(static)
Mask:255.255.255.0
本地連接2
IP:192.168.2.7 (satic)
Mask:255.255.255.0
DHCP CLIENT
設置IP地址自動獲取,若在工作組的狀態,加入域前必須先獲得IP地址和DNS等信息。

2、起路由:管理工具---路由和遠程訪問---VPC2---配置並啟用路由和遠程訪問---自定義配置,下一步---LAN路由,下一步---要開始服務嗎?是。
開中繼:打開管理工具---路由和遠程訪問---VPC2(本地)---IP路由選擇下面的“常規”---新增路由協議---選擇“DHCP中繼代理程序”,確定;
指定服務:右鍵單擊“DHCP中繼代理程序”----屬性----添加DHCP服務器地址:192.168.1.254----點“確定”,定位到DHCP服務器;
指定接口:右鍵單擊“DHCP中繼代理程序”----“新增接口”--選擇“本地連接2”,使該路由協議在“本地連接2”這個接口上運行。

3、在DHCP中繼代理上抓包並分析DHCP實現的過程:
在客戶機上執行ipconfig /release、ipconfig/renew後,在DHCP中繼代理“本地連接2”上抓包(圖1):
技術分享圖片


在 客戶機上執行ipconfig /release、ipconfig/renew後,在DHCP中繼代理“本地連接”上抓包(圖2):
技術分享圖片
看圖說話(註意,由於圖 1和圖2並不是同時抓取生成,所以兩圖的time項沒有直接聯系):
圖1NO.1:由於客戶機此時沒有IP地址,所以執行ipconfig /renew後它發出一個DHCP Discover廣播包以請求IP地址,該包包括源地址(客戶機)0.0.0.0,目標地址255.255.255.255,客戶機的MAC地址和計算機名;
圖2NO.1:DHCP中繼代理與客戶機相連的本地連接2接口收到客戶機的DHCP Discovery廣播包後,直接轉發給DHCP服務器(源地址192.168.2.7,目標地址192.168.1.254),為什麽?因為我們在“DHCP中繼代理程序”裏給“本地連接2”配置了路由協議。
圖2NO.2:DHCP服務器收到192.168.2.7轉發過來的IP請求後,給本地連接2做出DHCP Offer應答,所以圖2NO.2中的Source(源地址)變成了192.168.1.254,Destination(目標地址)變成192.168.2.7;
圖2NO.3:192.168.2.7(本地接口2)轉發DHCP Offer廣播包,因為是廣播,所以,在客戶機收到的同時,本地連接也同樣收到,為什麽本地連接無法直接收到客戶機發送的圖1NO.1廣播包?很簡單,我們的DHCP中繼代理是一個路由器,本地連接和本地連接2屬於不同的廣播域;
圖1NO.2:第一個Discovery包廣播出去後沒有及時得到回應(實際上192.168.2.7正在幫它轉發,也就是圖2NO.1和NO.2的過程),所以它不甘心的發出了第二個。
圖1NO.3:同圖2NO.3,不再廢話;
圖1NO.4:客戶機收到192.168.2.7(本地接口2)轉發DHCP Offer廣播包選擇IP地址後做出DHCP Request回應,同樣采取廣播的形式;
圖2NO.4:192.168.2.7(本地接口2)替客戶機轉發轉發DHCP Request廣播包,目標192.168.1.254;
圖2NO.5:DHCP服務器收到DHCP Request包後確認IP租約,以DHCP ACK消息的形式發送給192.168.2.7,由本地連接2廣播給客戶機(因為此時客戶機還是沒有IP地址),圖2NO.6和圖1NO.5就是便是這個廣播,客戶機收到該包後,將配置IP地址,完成TCP/IP的初始化,從而可以在TCP/IP網絡上通訊了。
有意思的是,IP為192.168.1.7的本地連接似乎從頭到尾都沒參與這個過程,它看著數據從它面前匆忙的來回流動卻不能參與其中,從圖1圖2中,我們看不到它的影子。其實,如果沒有它的存在,也就是說,本地連接沒有IP,所有的一切都將不可能實現。也許這也是一個網絡管理員在公司所處位置真實的寫照吧。

DHCP服務器的搭建及抓包分析DHCP的實現