應用場合:
當一個網絡中的主機數目較大時,手工分配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中繼代理服務器。這樣當子網B的客戶機發出請求時,中繼代理就把這個請求轉發給子網A的DHCP服務器,接着再把DHCP服務器返回的TCP/IP配置信息轉發給子網B的客戶機。