DHCP服務介紹及Linux下DHCP服務的管理配置

來源:互聯網
上載者:User

標籤:ip地址   工作原理   

DHCP服務介紹及Linux下DHCP服務的管理配置


1. DHCP服務簡介

DHCP是Dynamic Host Configuration Protocol,動態主機設定通訊協定,是用來在物理網路給主機分配ip地址的一種方式,區別於bootp,一次分配終身使用的缺點。

DHCP提出的租約的概念,使得可以根據需要動態確定主機需要的IP地址,並且IP地址可以迴圈使用。


2. DHCP結構

DHCP是典型的C/S結構,需要服務端啟動守護進程來保證來自client段的請求能被響應,DHCP的工作原理如下:

可以通過DORA來記憶:


Client: DHCP DISCOVER  #用戶端向相同網路發送廣播包,企圖尋找DHCP伺服器

Server: DHCP OFFER#如果DHCP服務段收到DISCOVER包,則向用戶端回複OFFER廣播包

Client: DHCP REQUEST#用戶端收到來自DHCP的OFFER廣播包後,則確定DHCP伺服器,繼續向DHCP伺服器發送REQUEST包,來申請ip資訊

Server: DHCP ACK#DHCP服務端向用戶端發送ACK包,攜帶ip和租約資訊給用戶端, DHCP發現過程結束


注意: dhcp在跨網段的路由器另一側,則路由器需要開啟dhcp relay來支援轉寄用戶端DISCOVER的廣播包給DHCP伺服器,這些通過路由器的轉寄,都是單播

因為路由器和dhcp之間的串連是有ip資訊的。


DHCP服務端連接埠 UDP 67

DHCP用戶端連接埠 UDP 68



DHCP reservation: 位址保留區:

專用於某特定用戶端的地址,不應該使用位址集區中的地址;優先於位址集區中的地址;



3. Linux下DHCP服務安裝配置

由於CentOS6/7的系統管理機制不同,所以開機自啟動服務的方式有所不同,但是設定檔,協助文檔大同小異


3.1 CentOS 6下 DHCP安裝:

#yum install dhcp

#通過rpm -ql dhcp 來查詢hdcp包所建立安裝的檔案,我們可以分析他的使用方式:

這裡列舉幾個比較重要的檔案:


#DHCP服務組態檔:

/etc/dhcp/dhcpd.conf

/etc/dhcp/dhcpd6.conf


#服務指令碼,控制dhcp服務的啟動,關閉,狀態查詢,reload等

/etc/rc.d/init.d/dhcpd

/etc/rc.d/init.d/dhcpd6

/etc/rc.d/init.d/dhcrelay

/etc/rc.d/init.d/dhcrelay6


#dhcp命令參數設定檔:  此檔案內容提供一些區段給dhcpd守護進程在系統引導時使用,dhcpd守護進程使用DHCP及BOOTP協議為主機自動分配IP地址

/etc/sysconfig/dhcpd

/etc/sysconfig/dhcpd6

/etc/sysconfig/dhcrelay

/etc/sysconfig/dhcrelay6


#dhcp二進位程式

/usr/sbin/dhcpd

/usr/sbin/dhcrelay


#dhcp的ip地址租約庫,可以查到ip分配情況

/var/lib/dhcpd/dhcpd.leases

/var/lib/dhcpd/dhcpd6.leases


4.1 CentOS6下dhcp服務組態檔管理:


4.1.1 首先編輯dhcp主設定檔:

/etc/dhcp/dhcpd.conf

option domain-name "richie.com";  #dhcp主機名稱

option domain-name-servers 192.168.229.141; #名稱伺服器的地址

default-lease-time 600;  #預設租約秒數

max-lease-time 7200;#最大租約秒數

log-facility local7;    #log層級

subnet 192.168.229.0 netmask 255.255.255.0 {

      range 192.168.229.201 192.168.229.220; #可供分配的ip段

 option routers 192.168.229.1, 192.168.229.2; #如果在最近配置的option routers那就直接飲用,如果沒有,那就會自動繼承上一級的option

     }  #子網配置格式


當編輯完,儲存退出,可以使用這個命令來檢測語法錯誤:


service dhcpd configtest


4.1.2 配置ip地址預留:

需要在subnet {} 內部,配置host{}格式如下:

subnet 192.168.229.0 netmask 255.255.255.0 {


host windows1 {

hardware ethernet 00:0c:29:0:f3:44;

fixed-address 192.168.229.222;

option routers 192.168.0.1 #這裡可以針對這台機器設定option routers的值,而不用繼承上一級的網關資訊

 }

}


最後,儲存退出

    service dhcpd force-reload


測試效果: 

    linux client:

dhclient -d eth0


window client:

ipconfig /renew


4.1.3 配置開機自啟動:

還是老命令chkconfig dhcpd on, 預設會將init層級2,3,4,5都設定為開機自啟動, 也可以使用 chkconfig --level 2,3,4 來自己指定需要的運行層級自啟


4.1.4 管理dhcp服務

service dhcpd {start|stop|restart|force-reload|condrestart|try-restart|configtest|status}



4.2 CentOS 7下的DHCP服務管理

4.2.1 設定檔:

同CentOS6上的配置,參見4.1.1


4.2.2 配置ip地址預留:

同CentOS6上的配置,參見4.1.2


4.2.3 配置開機自啟動:

由於CentOS6/7的系統服務管理機制的不同,CentOS7引入了systemd來管理所有的服務,所以不能再使用chkconfig命令來設定,需要使用:


# systemctl is-enabled DAEMON.service 查看dhcp服務狀態, 相當於C5的 chkconfig --list dhcpd

# systemctl enable DAEMON.service啟用開機自啟動dhcp服務, 相當於C5的 chkconfig dhcpd on

# systemctl disable DAEMON.service  禁用開機自啟動dhcp服務, 相當於C5的 chkconfig dhcpd off


4.2.4 管理dhcp服務

# systemctl {start|stop|restart|status} DAEMON.service




5. DHCP配置命令總結


一個簡單dhcp服務的設定檔至少需要包含如下的配置資訊:


dhcpd.conf

option domain-name

option domain-name-servers

option routers


subnet NETWORK netmask MASK {

range START_IP END_IP;


host HOSTID {

hardware ethernet 00:11:22:33:44:55;

fixed-address IP;

}

}



========================================================

例子:

dhcpd.conf

option domain-name "richie.com";

option domain-name-servers 192.168.229.141;


default-lease-time 600;

max-lease-time 7200;


log-facility local7;


subnet 192.168.229.0 netmask 255.255.255.0 {

  range 192.168.229.201 192.168.229.220;

  option routers 192.168.229.1, 192.168.229.2;

  host windows1 {

  hardware ethernet 00:0c:29:30:f3:44;

  fixed-address 192.168.229.211;

  }

}


本文出自 “Richier” 部落格,請務必保留此出處http://richier.blog.51cto.com/1447532/1665128

DHCP服務介紹及Linux下DHCP服務的管理配置

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.