|
Linux系統下進行DHCP配置有著非常大的差異,相較於Windows系統。那麼具體的操作是如何的呢?接下來我們就來了解一下Linux DHCP配置的內容。首先讓我們看一下DHCP服務的基本概念和理論吧。
Linux DHCP服務
DHCP也叫做動態主機服務,它的作用主要是為網絡中的主機主機提供IP地址服務的。Dhcp採用client/server模式,客戶機請求,服務端響應。
DHCP工作原理
1.客戶端向網絡上廣播dhcpdiscover包,內包含客戶機的mac地址。
2.DHCP服務器收到客戶機的dhcpdiscover包後,發送一個dhcpoffer廣播包,內包含IP地址,DHCP服務器IP等內容。
3.客戶機收到第一個DHCP服務器發送的dhcpdiscover包後,再以廣播的形式發送一個dhcprequest包發給所有的DHCP服務器,內有一個DHCP服務器IP,說我以已經找到了一個DHCP了。
4.被選中的服務器再發一個dhcppak廣播包確認此IP的發放。
這個IP地址可以使用一半租期的時間,超過一半時間應續租,如果過了一半時間後找不到DHCP服務器的話,可以再使用四分之一時間,然後就過期了。用戶就不能通過此IP地址進行通信了。
DHCP服務安裝
首先應確認Linux DHCP服務的安裝
Linux DHCP配置
Linux DHCP配置文件默認是沒有的,需要在/etc手工創建dhcpd.conf文件。但是幸運的是,在安裝DHCP服務時會為我們提供一個示例文件
設定dhcp設定檔
#vi /etc/dhcp/dhcpd.conf --->剛安裝好,是空白的.叫你去參考別支檔案.dhcp*表示dhcp的版本
#cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf --->將範例copy過來改
#vi /etc/dhcp/dhcpd.conf--->以下為檔案修改的內容,粗體字為修改的部份
將其複制為/etc/dhcp/dhcpd.conf 並在其基礎上進行修改配置。
Linux DHCP配置單網配置文件
編輯dhcp配置文件為以下內容。具體的實際的環境的配置可以在以下配置文件的基礎上進行修改,使其滿足具體環境中的應用。
vi /etc/dhcp/dhcpd.conf
- ddns-update-style interim; /*dhcp支持的dns動態更新方式*/
- ignore client-updates; /*忽略客戶端DNS動態更新*/
- subnet 192.168.1.0 netmask 255.255.255.0 { /*作用域網段*/
- range 192.168.1.103 192.168.1.105; /*ip地址段範圍*/
- option broadcast-address 192.168.1.255; /*廣播地址*/
- option domain-name-servers 168.95.1.1, 8.8.8.8; /*DNS IP*/
- option routers 192.168.1.254; /*網關地址*/ <div> option subnet-mask 255.255.255.0; /*子網掩碼*/
- option domain-name "example.com"; /*域名*/
- ### 指定租約更新時間 ###
- default-lease-time 86400;/*租期1天*/
- max-lease-time 172800;
- }
- /*綁定pc1主機ip地址配置*/
- host pc1 {
- hardware ethernet 00:a0:cc:cf:9C:14; /*綁定機MAC地址*/
- fixed-address 192.168.1.103; /*最長租期2天*/
- }
- host pc2 {
- hardware ethernet 04:20:c1:f8:37:11;
- fixed-address 192.168.1.30;
- }
- }
複製代碼
Linux DHCP配置超網配置文件
vi /etc/dhcp/dhcp.conf
- ddns-update-style interim; /*dhcp支持的dns動態更新方式*/
- ignore client-updates; /*忽略客戶端DNS動態更新*/
- shared-network mynet { /*超網作用域選項,共同部分*/
- option subnet-mask 255.255.255.0; /*子網掩碼*/
- option domain-name "koumm.net"; /*域名*/
- option domain -name-servers 192.168.1.2; /*dns IP*/
- option broadcast-address 192.168.1.255; /*廣播地址*/
- default-lease-time 86400; /*租期1天,秒數*/
- max-lease- time 172800; /*最長租期2天*/
- subnet 192.168.1.0 netmask 255.255.255.0 { /*1.0子網段*/
- range 192.168.1.11 192.168.1.100; /*ip地址段範圍*/
- option routers 192.168.1.1; /*網關地址*/
- /*綁定pc1主機ip地址配置*/
- host pc1 {
- hardware ethernet 00:a0:cc:cf:9C:14;
- fixed-address 192.168.1.20;
- }
- /*綁定pc2主機ip地址配置*/
- host pc2 {
- hardware ethernet 04:20 :c1:f8:37:11;
- fixed-address 192.168.1.30;
- }
- }
- subnet 192.168.2.0 netmask 255.255.255.0 { /*2.0子網段*/
- range 192.168.2.10 192.168.2.100; /*ip地址段範圍*/
- option routers 192.168.2.1; /*網關地址*/
- }
- subnet 192.168.3.0 netmask 255.255.255.0 { /*3.0子網段*/
- range 192.168.3.10 192.168.3.100; /*ip地址段範圍*/
- option routers 192.168.3.1; /*網關地址*/
- }
- }
複製代碼
Linux DHCP配置中繼代理
只要是安裝了DHCP服務,也就自動安裝了dhcp中繼代理dhcrelay。中繼代理服務默認監聽所有接口上的dhcp請求,也可以只是監聽某一個網卡上的請求。
dhcp中繼代理配置文件:
/etc/sysconfig/dhcrelay
vi /etc/sysconfig/dhcrelay
- # Command line options here
- INTERFACES="eth1 eth2"
- DHCPSERVERS="192.168.1.1"
複製代碼
也可以通過以下命令方式來實現:
- dhcrelay -i eth1 -i eth2 192.168.1.1
複製代碼
Linux DHCP配置完成後,重新啟動DHCP服務。
DHCP服務管理
DHCP服務安裝好後沒有開啟,驗證如下。
- chkconfig --list |grep dhcpd
複製代碼
dhcpd 0:關閉1:關閉2:關閉3:關閉4:關閉5:關閉6:關閉
chkconfig --level 345 dhcpd on設為開機自動運行
/etc/init.d/dhcpd restart或service dhcpd restart重啟服務
DHCP客戶端配置
linux客戶端
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE = eth0網卡設備
BOOTPROTO = dhcp動態ip設置就為DHCP
BROADCAST = 192.168.1.255廣播地址
HWADDR = 00:0C:29:49:D0:59 MAC地址
IPADDR = 192.168.1.10本機IP地址
NETMAST = 255.255.255.0子網掩碼
NETWORK = 192.168.1.0網絡號
ONBOOT = yes開機時激活網卡
DHCP服務驗證
1.服務器端驗證
查看系統日誌文件
cat /var/log/messages | grep dhcp
- ....
- Jan 21 20:25:23 linux 1月21 20:25:23 dhcpd: Listening on
- Jan 21 20:25:23 linux 1月21 20:25:23 dhcpd: Sending on
- Jan 21 20:25:23 linux 1月21 20:25:23 dhcpd: Sending on
- Jan 21 20:25:23 linux 1月21 20:25:23 dhcpd: dhcpd啟動succeeded
- Jan 21 20:26:30 linux dhcpd: DHCPDISCOVER from 00:0c:29:3b:20:d5 via eth0
- Jan 21 20:26:31 linux dhcpd: DHCPOFFER on 192.168.1.100 to 00:0c:29:3b:20:d5 via eth0
- Jan 21 20: 26:31 linux dhcpd: DHCPREQUEST for 192.168.1.100 (192.168.1.8) from 00:0c:29:3b:20:d5 via eth0
- Jan 21 20:26:31 linux dhcpd: DHCPACK on 192.168.1.100 to 00:0c: 29:3b:20:d5 via eth0
複製代碼
2.客戶端驗證
ip地址驗證:ifconfig
網關:/etc/sysconfig/network
dns: /etc/resolv.conf
參考文章
http://linux-dindin.blogspot.tw/2009/10/centosdhcp-server.html
http://network.51cto.com/art/201008/222644_all.htm
|
|