DHCP服務器在企業網上的應用
DHCP(Dynamic Host Configuration Protocol)服務器主要的工作就是在網絡中能夠自動的將網絡參數正確的分配給網絡中的每臺機器,讓客戶機在開機的時候能夠自動的配置好網絡參數,包括IP、netmask、network、getway與DNS等。Dhcp是一個應用層的協議,採用udp,server端口爲67、client端口爲68。
dhcp工作模式:
1.manual 手工
server: mac--->ip
dhcpclient:
特點:管理員工作量大 地址動態分配 地址利用率低
2.automatic 自動
server:地址池 (起始地址 結束地址)
dhcpclient mac--》ip 記錄 永久
特點:可以動態分配 地址利用率低 簡化了管理員工作量
3.dynamic 動態
server:地址池 (起始地址 結束地址)
dhcpclient mac--》ip 記錄 永久
特點:動態分配 地址利用率高 簡化了管理員工作量
現在經常使用的就是第一種和第三種。
DHCP的工作方式
下面我們來介紹一下DHCP協議的工作方式,也就是client獲得地址的過程。我們可以用一張圖來表示:
客戶機獲取ip主要是這麼四步:
1.client:利用廣播封包發送搜索dhcp服務器的封包
2.dhcp server:提供客戶端網絡相關的租約以供選擇:
dhcp 服務器在接收到這個客戶端的要求後,會針對這個客戶端的硬件地址mca與本身的設定的數據進行下列工作:
A. 到服務器的登陸文件中尋找該用戶之前是否曾經用過的某個ip,若有且該ip目前無人使用,則提供給客戶端
B. 若配置文件針對mac提供額外的固定ip時,則提供固定ip給client
C. 若不符合上述兩個條件,則隨機取用目前沒有被使用的ip參數給客戶端,並記錄下來。
3.client:決定選擇的dhcp服務器提供的網路參數租約並回報服務器
4.dhcp server:記錄該次租約行爲並回報客戶端已確認的響應封包信息
可以實現dhcp服務的設備: 路由器 防火牆 三層交換機 windows linux 等。下面我用linux給大家舉一些例子。
linux上實現單個作用域:
【實驗拓撲】
【實驗設備】
DHCP服務器 linux 虛擬機 rhel 5.4
客戶機 虛擬機 windows xp
【實驗步驟】
1 在linux上搭建好DHCP服務器
2 客戶端在本機上獲取相應的網絡參數
【實驗過程】
掛在光驅
安裝dhcp服務
編輯dhcpd.conf配置文件
保存並退出
啓動dhcp服務器
Windows xp獲得的主機地址
dhcp的超級作用域
超級作用域適合大型的局域網,機器比較多時的地址動態分配。如果一個局域網有500臺機器,那麼寫一個c類的肯定不夠,這是我們可以將多個c類地址組合起來使用。這就是超級作用域。配置超級作用域和普通的dhcp服務器是一樣的。在配置文件的編輯上有所不一樣。
【實驗拓撲】
【實驗設備】
DHCP服務器 linux 虛擬機 rhel 5.4
客戶機 虛擬機 windows xp 和windows server
【實驗步驟】
1 在linux上搭建好DHCP服務器
2 客戶端在本機上獲取相應的網絡參數
【實驗過程】
至於安裝dhcp的過程就和上面是一樣的了,小編我就不多說了。
下面我們來看看Linux上對dhcpd.conf 的編輯
因爲用虛擬機沒法模擬這麼大的環境。所以將兩個網段的地址都設置成只含有一個地址。
重啓dhcp服務器
下面我們來看看兩臺機器獲得地址的情況
Windows xp
Windows server 2003
dhcp中繼
其實dhcp還有一個功能,dhcp中繼功能。如果在一個網絡中劃分了多個vlan。那麼我們想管理這些機器的地址時,我們就需要給他們分配地址參數。但是我們不能在每個vlan中都配置一個服務器,那就太浪費了。而dhcp請求的廣播包又不能通過三層設備。所以這個時候我們的dhcp中繼就可以幫助我們過三層設備完成dhcp服務。
【實驗拓撲圖】
【實驗設備】
H3C 防火牆 一臺(F100-C)
H3C J交換機 一臺 (S2000)
DHCP服務器 linux 虛擬機 rhel 5.4
客戶機 windows xp 兩臺
【實驗步驟】
1 在linux上搭建好DHCP服務器
2 在H3C防火牆上劃分子接口,配上地址,加入區域,在子接口上配上dhcp中繼
3 交換機上劃分vlan 將對應的接口加入vlan中
【實驗過程】
1 在linux上搭建dhcp服務器,首先安裝dhcp服務,然後編輯dhcp.conf文件,然後啓動dhcp服務
然後啓動dhcp服務器
【配置參考】
防火牆:
[H3C]dis cu
#
sysname H3C
#
firewall packet-filter enable
firewall packet-filter default permit
#
undo insulate
#
firewall statistic system enable
#
radius scheme system
server-type extended
#
domain system
#
interface Aux0
async mode flow
#
interface Ethernet0/0
#
interface Ethernet0/0.1
ip address 192.168.10.1 255.255.255.0
ip relay address 192.168.30.100
dhcp select relay
vlan-type dot1q vid 10
#
interface Ethernet0/0.2
ip address 192.168.20.1 255.255.255.0
ip relay address 192.168.30.100
dhcp select relay
vlan-type dot1q vid 20
#
interface Ethernet0/0.3
ip address 192.168.30.1 255.255.255.0
vlan-type dot1q vid 30
#
interface Ethernet0/4
#
interface Encrypt1/0
#
interface NULL0
#
firewall zone local
set priority 100
#
firewall zone trust
add interface Ethernet0/0.1
add interface Ethernet0/0.2
add interface Ethernet0/0.3
set priority 85
#
firewall zone untrust
set priority 5
#
firewall zone DMZ
set priority 50
#
firewall interzone local trust
#
firewall interzone local untrust
#
firewall interzone local DMZ
#
firewall interzone trust untrust
#
firewall interzone trust DMZ
#
firewall interzone DMZ untrust
#
user-interface con 0
user-interface aux 0
user-interface vty 0 4
#
return
交換機:
<Quidway>dis cu
#
sysname Quidway
#
radius scheme system
#
domain system
#
vlan 1
#
vlan 10
#
vlan 20
#
vlan 30
#
interface Aux1/0/0
#
interface Ethernet1/0/1
#
interface Ethernet1/0/2
#
interface Ethernet1/0/3
#
interface Ethernet1/0/4
#
interface Ethernet1/0/5
#
interface Ethernet1/0/6
#
interface Ethernet1/0/7
#
interface Ethernet1/0/8
#
interface Ethernet1/0/9
#
interface Ethernet1/0/10
port access vlan 10
#
interface Ethernet1/0/11
#
interface Ethernet1/0/12
#
interface Ethernet1/0/13
#
interface Ethernet1/0/14
#
interface Ethernet1/0/15
#
interface Ethernet1/0/16
#
interface Ethernet1/0/17
#
interface Ethernet1/0/18
#
interface Ethernet1/0/19
#
interface Ethernet1/0/20
port access vlan 20
#
interface Ethernet1/0/21
#
interface Ethernet1/0/22
port access vlan 30
#
interface Ethernet1/0/23
#
interface Ethernet1/0/24
port link-type trunk
port trunk permit vlan all
#
interface NULL0
#
user-interface aux 0
user-interface vty 0 4
#
return
【驗證結果】
Vlan10 主機
Vlan20主機