woff 發表於 2018-1-29 23:17:26

CentOs Linux DHCP配置的完美攻略

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服務的安裝

yum -y install 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


頁: [1]
查看完整版本: CentOs Linux DHCP配置的完美攻略