DHCP服務——服務端 和 客戶端 配置


轉載注明出處:https://www.cnblogs.com/kelamoyujuzhen/p/9520341.html 

實驗環境

 rhel-server-6.4-x86_64-dvd(ED2000.COM).iso

注意:

對於使用VMware虛擬機進行實驗,需要關閉針對某個WMNet的DHCP設置

搭建DHCP Server

配置本地yum源  搭建KVM環境——03 創建虛擬機后配置環境

安裝DHCP服務

[root@localhost yum.repos.d]# yum -y install dhcp
Loaded plugins: product-id, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package dhcp.x86_64 12:4.1.1-34.P1.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===================================================================================================================================
 Package                    Arch                         Version                                   Repository                 Size
===================================================================================================================================
Installing:
 dhcp                       x86_64                       12:4.1.1-34.P1.el6                        vcd                       816 k

Transaction Summary
===================================================================================================================================
Install       1 Package(s)

Total download size: 816 k
Installed size: 1.9 M
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : 12:dhcp-4.1.1-34.P1.el6.x86_64                                                                                  1/1 
  Verifying  : 12:dhcp-4.1.1-34.P1.el6.x86_64                                                                                  1/1 

Installed:
  dhcp.x86_64 12:4.1.1-34.P1.el6                                                                                                   

Complete!
View Code

編輯DHCP server配置文件

[root@localhost dhcp]# pwd
/etc/dhcp
[root@localhost dhcp]# cat dhcpd.conf 
#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.sample
#   see 'man 5 dhcpd.conf'
#
ddns-update-style none;
default-lease-time 7200;
max-lease-time 14400;
option domain-name "cac.com";
option domain-name-servers 192.168.40.10,192.168.40.20 ;
subnet 192.168.80.0 netmask 255.255.255.0
{
    range 192.168.80.10 192.168.80.100;
    option routers 192.168.80.1;
} 
View Code

關鍵字段解析

全局設置(對所有網段都起作用)

ddns-update-style none;

在沒有DHCP情況下,計算機使用域名通信情況,見下圖,DNS維護IP到域名映射表

在引入DHCP后,計算機一開機,由DHCP自動分配IP,導致DNS那一側IP到域名映射關系失效,需要更新這份映射關系。可以由計算機自己更新(我們用的Windows就有這個功能),也可由DHCP代勞。ddns-update-style none;這句話的意思就是說,DHCP就不要管閑事更新DNS映射表了。見下圖

 

default-lease-time 7200;

默認租約時間。客戶機通過DHCP獲取IP后,這個IP使用時間是多久。單位秒

max-lease-time 14400;

最大租約時間。正常情況下,如果客戶機在default-lease-time快到期時會向DHCP續租。如果在default-lease-time期間,客戶機死機了,default-lease-time時間到了,DHCP服務器並不會立即回收這個IP,他還會再等等,等的這個時間就是max-lease-time。如果max-lease-time 這么長時間還不來續租,那就回收IP方便別人再使用。

option domain-name "cac.com";

默認域名稱。在一個局域網內,各個計算機之間通過名稱訪問,比如ftp服務器全名叫ftp.cac.com,其他客戶機要想獲取ftp服務就必須使用ftp.cac.com全名(DNS會把這個全名解析成IP)。使用這個字段就可以直接使用ftp通信了。

option domain-name-servers 192.168.40.10,192.168.40.20 ;

指定域名解析服務器,多個域名解析服務器用逗號隔開

子網設置

subnet 192.168.80.0 netmask 255.255.255.0

標記哪個子網

range 192.168.80.10 192.168.80.100;

DHCP分配IP地址范圍

option routers 192.168.80.1;

這個子網的網關是什么,每個子網的網關都不一樣。

子網也可以設置租約時長,如果和全局設置一樣就沒必要寫了。

啟動DHCP服務

service dhcpd start
View Code

檢查偵聽端口

[root@WebServer ~]# netstat -tlunp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address   Foreign Address    State    PID/Program name
tcp   0      0      0.0.0.0:22      0.0.0.0:*          LISTEN   1116/sshd
tcp   0      0      127.0.0.1:25   0.0.0.0:*          LISTEN   1192/master
tcp   0      0      :::22              :::*               LISTEN   1116/sshd
tcp   0      0      ::1:25            :::*               LISTEN   1192/master
udp  0      0      0.0.0.0:67      0.0.0.0:*                   1638/dhcpd
View Code

客戶端配置

Linux客戶端

編輯網卡配置文件etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
HWADDR=80:8C:29:7B:54:DC
TYPE=Ethernet
UUID=76cda891-e44f-4236-9f2c-be13f8d87292
ONBOOT=yes
NM_CONTROLLED=yes
B0OTPROTO=dhcp
View Code

重啟網絡服務 service network restart

在DHCP服務端/var/lib/dhcpd/dhcpd.leases文件查看租約信息

[root@localhost ~]# tail -11 /var/lib/dhcpd/dhcpd.leases  
lease 192.168.1.100 {  
  starts 2 2018/08/22 08:33:46;  
  ends 2 2018/08/22 14:33:46;  
  tstp 2 2018/08/22 14:33:46;  
  cltt 2 2018/08/22 08:33:46;  
  binding state active;  
  next binding state free;  
  hardware ethernet 00:0c:29:03:e3:40;  
}  
View Code

在DHCP客戶端/etc/resolv.conf文件可以看到從DHCP服務器獲取的信息。客戶端這一側租約信息在/var/lib/dhclient/dhclient-ethe.leases文件里面記錄

對於有圖形界面的Linux發行版還可以使用圖形界面來設置,設置完后重啟網絡服務

Windows客戶端

Windows命令行執行ipconfig查看獲取的IP地址。

ipconfig /release告訴DHCP服務器釋放租約。如果這時候新加入一台計算機(使用DHCP獲取IP),會獲取之前釋放的哪個IP

ipconfig /renew 重新獲取IP地址

DHCP服務器分配原則:盡量讓客戶端使用原來的IP地址


給特定的服務器保留固定IP地址

如何理解這種場景

有機房A、B,分別在50和60網段。教師要在兩個教師上課,課堂上學生需要訪問老師的共享文件,學生只知道老師的IP是8,但是由於DHCP是隨機分配IP,教師的IP可能就不是8。通過在DHCP服務器一側設置具體某台機器的IP就可以滿足上面場景要求。注意DHCP服務器是通過MAC標識計算機的。

DHCP服務端配置如下

ddns-update-style none;
default-lease-time 7200;
max-lease-time 14400;
option domain-name "cac.com";
option domain-name-servers 192.168.40.10,192.168.40.20 ;
subnet 192.168.80.0 netmask 255.255.255.0
{
    range 192.168.80.10 192.168.80.100;
    option routers 192.168.80.1;
    host win2012
    {
    hardware ethernet 80:8C:29:7B:54:DC;
    fixed-address 192.168.80.50
    option domain-name "cs.com";
    }
}
View Code

DHCP誇網段分配IP地址

見下圖

學校共4各學院,其中計算機學院最關機,存放所有重要服務器,其他學院都是些普通計算機。4個學院4個網段,對於DHCP服務器而言,其作用主要就是分配個IP,任務量並不大,沒必要每個學院都布置一個,其他學院只需要訪問計算機學院的DHCP服務器獲取IP即可。

這里面有個問題,就是DHCP客戶端向DHCP服務端發起分配IP請求,是通過廣播進行的。但是由於是跨網段通信,路由器隔絕廣播域,導致廣播數據包不能傳輸到計算機學院,因此其他學院也就無法自動獲取IP。

解決問題的辦法是DHCP中繼,他在路由器上設置。客戶端的廣播請求經過路由器會變成一個定向轉給DHCP服務器。這有點類似於NAT地址轉換,假設計院,軟院,光電,通信分別是192.168.40.0/24、92.168.50.0/24、92.168.60.0/24、92.168.70.0/24。個網段網管均為X.X.X.1,軟院有個計算機192.168.50.55的廣播包經過路由器會被替換成192.168.50.1

以上是原理部分,具體路由器如何設置,是網管的工作了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM