DHCP中繼原理及配置
應用場合:
當一個網路中的主機數目較大時,手工分配IP不僅麻煩而且容易出錯。DHCP服務的出現大大方便了主機IP地址的分配。現在的企業組網時,根據實際需要來劃分vlan,成了必不可少的一個步驟。如何讓一個DHCP伺服器同時為多個網段提供服務,就是我們所要討論的問題。
DHCP中繼原理:
DHCP客戶使用IP廣播來尋找同一網段上的DHCP伺服器。當伺服器和客戶段處在不同網段,即被路由器分割開來時,路由器是不會轉寄這樣廣播包的。因此可能需要在每個網段上設定一個DHCP伺服器,雖然DHCP只消耗很小的一部分資源的,但多個 DHCP伺服器,畢竟要帶來管理上的不方便。DHCP中繼的使用使得一個DHCP伺服器同時為多個網段服務成為可能。
為了讓路由器可以協助轉寄廣播請求資料包,使用ip help-address命令。通過使用該命令,路由器可以配置為接受廣播請求,然後將其以單播方式轉寄個指定IP地址。預設情況下ip help-address轉寄以下8種UDP服務:
1.Time 2.Tacacs 3.DNS 4.BOOTP/DHCP伺服器
5. BOOTP/DHCP客戶 6.TFTP 7.NetBios名稱服務 8. NetBios資料報服務
在DHCP廣播情況下,客戶在本地網段廣播一個 DHCP發現分組。網關獲得這個分組,如果配置了協助地址,就將DHCP分組轉寄到特定地址。
DCHP中繼配置
第一步:查看裝置是否支援IOS DHCP Server功能
一般的Cisco路由器或訪問伺服器,以及少部分安裝有路由交換模組或多層交換功能卡的交換器都具有IOS DHCP Server功能。如果還沒有確認你的裝置是否具備這一功能,那麼,你可以按如下方法在命令列介面(CLI)下進行快速檢測,步驟如下:
router>enable
Password:
router#conf t
router(config)#ip dhcp ?
如果出現的是下面的資訊,那麼很遺憾,你的裝置不支援IOS DHCP Server功能: % Unrecognized command
否則,恭喜你,你的設定支援DHCP功能。
第二步:DHCP伺服器端配置(此處用路由器來當DHCPserver.PC機上配置類似):
route(config)#ip dhcp pool vlan10 //配置一個位址集區,vlan10是位址集區的名稱,
route(dhcp-config)#network 192.168.10.0 255.255.255.0 //動態分配的位址區段
route(dhcp-config)#default-router 192.168.10.254 //網關地址
route(dhcp-config)#dns-server x.x.x.x //為客戶機配置DNS伺服器
route(dhcp-config)#lease 1 //地址租用期為1天
route(dhcp-config)#exit
route(config)#ip dhcp excluded-address 192.168.10.1 //該地址不被分配
route(config)#ip dhcp excluded-address 192.168.10.254 //該地址不被分配
route(config)#ip dhcp pool vlan20 //配置位址集區vlan20,vlan30位址集區配置類似
route(dhcp-config)#network 192.168.20.0 255.255.255.0//動態分配的位址區段
route(dhcp-config)#default-router 192.168.20.254 //網關地址
route(dhcp-config)#dns-server x.x.x.x //為客戶機配置DNS伺服器
route(dhcp-config)#lease 1 //地址租用期為1天
route(dhcp-config)#exit
route(config)#ip dhcp excluded-address 192.168.20.254 //該地址不被分配
Tips:DHCP是根據源位址區段進行地址分配的。
第三步:使用路由器5300做單臂路由時的DHCP配置:
int f0
no ip address
no shut
exit
int f0.10 //vlan10
ip address 192.168.10.254 255.255.255.0 //vlan網關
ip help-address 192.168.10.1 //DHCP伺服器位址
no shut
exit
int f0.20 //vlan20,多個網段類似
ip address 192.168.20.254 //vlan網關
ip help-address 192.168.10.1 //以單播的形式發往該DHCP伺服器位址
no shut
exit
使用多層交換器(3550)的DHCP配置
int vlan 10
ip address 192.168.10.254 255.255.255.0 //vlan10網關
ip help-address 192.168.10.1 //DHCP伺服器位址
no shut
exit
int vlan 20
ip address 192.168.20.254 255.255.255.0 //vlan10網關
ip help-address 192.168.10.1 //DHCP伺服器位址
no shut
exit
題外話:
除了IOS DHCP Server外,DHCP伺服器還有很多種。例如Windows 2000或LINUX的DHCP伺服器。但不論你採用何種DHCP伺服器,在VLAN上的設定都是一樣的,唯一的區別就在於一個是在路由器上設定,一個是在PC伺服器上設定。在PC伺服器上設定DHCP伺服器比較容易,從這一點上看好像用PC伺服器作DHCP伺服器更具優越性,但如果從穩定性和功能上看,這些DHCP伺服器是沒辦法和路由器相比的。畢竟,確保每天24小時的穩定運行才是大型網路重要的任務,因此,在大型網路中還是採用路由器作DHCP伺服器較為穩妥。
跨子網使用DHCP伺服器(PC版本)
為了提高網路的安全性,規模稍大的區域網路通常要劃分為多個子網。但DHCP伺服器只能為本子網的機器提供服務,每個子網都配置DHCP伺服器又會造成浪費。如何讓一台DHCP伺服器能同時為多個子網提供TCP/IP佈建服務呢?
筆者以所管理的兩個子網A、B為例,子網A中配置了一台DHCP伺服器,子網B中沒有DHCP伺服器,下面在子網B進行如下配置操作:
1. 配置路由
在子網B中選擇一台Windows 2003機器,將其配置成路由器,用來串連A、B兩個子網(此時該伺服器同時屬於兩個子網)。進入“控制台→管理工具”,運行“路由和遠端存取”工具,右鍵點擊本機伺服器,選擇“配置並啟用路由及遠端存取”,彈出安裝嚮導對話方塊,選擇“自訂配置”,點擊“下一步”後,選擇“LAN路由”,最後點擊“完成”。
2. 配置中繼代理
在路由和遠端存取視窗中,展開“本機伺服器→IP路由選擇→常規”,右鍵點擊“常規”,選擇“新增路由協議”,接著在新路由協議視窗中選擇“DHCP中繼代理程式”,點擊“確定”按鈕。
右鍵點擊DHCP中繼代理程式,選擇“屬性”,彈出“DHCP中繼代理程式屬性”對話方塊,在“常規”標籤頁的“伺服器位址”欄中輸入子網A的DHCP伺服器的IP地址,然後點擊“添加”按鈕,最後點擊“確定”即可。
右鍵再次點擊DHCP中繼代理程式,選擇“新增介面”,彈出DHCP中繼代理程式的新介面對話方塊,在“介面”框中選中可以訪問子網A的那個介面,也就是串連子網A的網卡,點擊“確定”按鈕。接著在彈出的“DHCP中繼站屬性”對話方塊中,確保選中“中繼DHCP資料包”後,就啟用了它的中繼功能,最後點擊“確定”按鈕。完成以上配置,子網B的客戶機就可以使用子網A的DHCP伺服器了。
提示:中繼代理是為不在同一子網中的DHCP客戶機和DHCP伺服器之間中轉DHCP/BOOTP訊息的小程式,下面把這台Windows 2003機器配置成DHCP中繼Proxy 伺服器。這樣當子網B的客戶機發出請求時,中繼代理就把這個請求轉寄給子網A的DHCP伺服器,接著再把DHCP伺服器返回的TCP/IP配置資訊轉寄給子網B的客戶機。