Linux DHCP配置的完美攻略
在Linux系統(tǒng)下進(jìn)行DHCP配置有著非常大的差異,相較于Windows系統(tǒng)。那么具體的操作是如何的呢?接下來(lái)我們就來(lái)了解一下Linux DHCP配置的內(nèi)容。首先讓我們看一下DHCP服務(wù)的基本概念和理論吧。
Linux DHCP服務(wù)
DHCP也叫做動(dòng)態(tài)主機(jī)服務(wù),它的作用主要是為網(wǎng)絡(luò)中的主機(jī)主機(jī)提供IP地址服務(wù)的。Dhcp采用client/server模式,客戶機(jī)請(qǐng)求,服務(wù)端響應(yīng)。
DHCP工作原理
1.客戶端向網(wǎng)絡(luò)上廣播dhcpdiscover包,內(nèi)包含客戶機(jī)的mac地址。
2.DHCP服務(wù)器收到客戶機(jī)的dhcpdiscover包后,發(fā)送一個(gè)dhcpoffer廣播包,內(nèi)包含IP地址,DHCP服務(wù)器IP等內(nèi)容。
3.客戶機(jī)收到***個(gè)DHCP服務(wù)器發(fā)送的dhcpdiscover包后,再以廣播的形式發(fā)送一個(gè)dhcprequest包發(fā)給所有的DHCP服務(wù)器,內(nèi)有一個(gè)DHCP服務(wù)器IP,說(shuō)我以已經(jīng)找到了一個(gè)DHCP了。
4.被選中的服務(wù)器再發(fā)一個(gè)dhcppak廣播包確認(rèn)此IP的發(fā)放。
這個(gè)IP地址可以使用一半租期的時(shí)間,超過(guò)一半時(shí)間應(yīng)續(xù)租,如果過(guò)了一半時(shí)間后找不到DHCP服務(wù)器的話,可以再使用四分之一時(shí)間,然后就過(guò)期了。用戶就不能通過(guò)此IP地址進(jìn)行通信了。
DHCP服務(wù)安裝
首先應(yīng)確認(rèn)Linux DHCP服務(wù)的安裝
rpm -q dhcp
package dhcp is not installed
沒(méi)有安裝,下面是Linux DHCP的安裝。
rpm -ivh dhcp-3.0pl1-23.i386.rpm dhcp的安裝
warning: dhcp-3.0pl1-23.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:dhcp ########################################### [100%]
Linux DHCP配置
Linux DHCP配置文件默認(rèn)是沒(méi)有的,需要在/etc手工創(chuàng)建dhcpd.conf文件。但是幸運(yùn)的是,在安裝DHCP服務(wù)時(shí)會(huì)為我們提供一個(gè)示例文件
/usr/share/doc/dhcp-3.0.1/dhcp.conf.sample
cp dhcp.conf.sample dhcpd.conf
將其復(fù)制為/etc/dhcpd.conf 并在其基礎(chǔ)上進(jìn)行修改配置。#p#
Linux DHCP配置 單網(wǎng)配置文件
編輯dhcp配置文件為以下內(nèi)容。具體的實(shí)際的環(huán)境的配置可以在以下配置文件的基礎(chǔ)上進(jìn)行修改,使其滿足具體環(huán)境中的應(yīng)用。
vi /etc/dhcpd.conf
ddns-update-style interim; /*dhcp支持的dns動(dòng)態(tài)更新方式*/
ignore client-updates; /*忽略客戶端DNS動(dòng)態(tài)更新*/subnet 192.168.1.0 netmask 255.255.255.0 { /*作用域網(wǎng)段*/
range 192.168.1.11 192.168.1.100; /*ip地址段范圍*/
option routers 192.168.1.1; /*網(wǎng)關(guān)地址*/
option subnet-mask 255.255.255.0; /*子網(wǎng)掩碼*/
option domain-name "koumm.com"; /*域名*/
option domain-name-servers 192.168.1.1,202.103.24.68; /*dns IP*/
option broadcast-address 192.168.16.255;/*廣播地址*/
default-lease-time 86400; /*租期1天,秒數(shù)*/
max-lease-time 172800; /*最長(zhǎng)租期2天*/
/*綁定pc1主機(jī)ip地址配置*/
host pc1 {
hardware ethernet 00:a0:cc:cf:9C:14; /*綁定機(jī)MAC地址*/
fixed-address 192.168.1.20; /*最長(zhǎng)租期2天*/
}
host pc2 {
hardware ethernet 04:20:c1:f8:37:11;
fixed-address 192.168.1.30;
}
}
Linux DHCP配置 超網(wǎng)配置文件
vi /etc/dhcp.conf
ddns-update-style interim; /*dhcp支持的dns動(dòng)態(tài)更新方式*/
ignore client-updates; /*忽略客戶端DNS動(dòng)態(tài)更新*/shared-network mynet { /*超網(wǎng)作用域選項(xiàng),共同部分*/
option subnet-mask 255.255.255.0; /*子網(wǎng)掩碼*/
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天,秒數(shù)*/
max-lease-time 172800; /*最長(zhǎng)租期2天*/subnet 192.168.1.0 netmask 255.255.255.0 { /*1.0子網(wǎng)段*/
range 192.168.1.11 192.168.1.100; /*ip地址段范圍*/
option routers 192.168.1.1; /*網(wǎng)關(guān)地址*/
/*綁定pc1主機(jī)ip地址配置*/
host pc1 {
hardware ethernet 00:a0:cc:cf:9C:14;
fixed-address 192.168.1.20;
}
/*綁定pc2主機(jī)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子網(wǎng)段*/
range 192.168.2.10 192.168.2.100; /*ip地址段范圍*/
option routers 192.168.2.1; /*網(wǎng)關(guān)地址*/
}subnet 192.168.3.0 netmask 255.255.255.0 { /*3.0子網(wǎng)段*/
range 192.168.3.10 192.168.3.100; /*ip地址段范圍*/
option routers 192.168.3.1; /*網(wǎng)關(guān)地址*/
}
}
#p#Linux DHCP配置 中繼代理
只要是安裝了DHCP服務(wù),也就自動(dòng)安裝了dhcp中繼代理dhcrelay。中繼代理服務(wù)默認(rèn)監(jiān)聽(tīng)所有接口上的dhcp請(qǐng)求,也可以只是監(jiān)聽(tīng)某一個(gè)網(wǎng)卡上的請(qǐng)求。
dhcp中繼代理配置文件:
/etc/sysconfig/dhcrelay
vi /etc/sysconfig/dhcrelay
# Command line options here
INTERFACES="eth1 eth2"
DHCPSERVERS="192.168.1.1"
也可以通過(guò)以下命令方式來(lái)實(shí)現(xiàn):
dhcrelay -i eth1 -i eth2 192.168.1.1
Linux DHCP配置完成后,重新啟動(dòng)DHCP服務(wù)。
DHCP服務(wù)管理
DHCP服務(wù)安裝好后沒(méi)有開(kāi)啟,驗(yàn)證如下。
chkconfig --list |grep dhcpd
dhcpd 0:關(guān)閉 1:關(guān)閉 2:關(guān)閉 3:關(guān)閉 4:關(guān)閉 5:關(guān)閉 6:關(guān)閉chkconfig --level 345 dhcpd on 設(shè)為開(kāi)機(jī)自動(dòng)運(yùn)行
/etc/init.d/dhcpd restart 或service dhcpd restart 重啟服務(wù)
DHCP客戶端配置
linux客戶端
vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE = eth0 網(wǎng)卡設(shè)備
BOOTPROTO = dhcp 動(dòng)態(tài)ip設(shè)置就為DHCP
BROADCAST = 192.168.1.255 廣播地址
HWADDR = 00:0C:29:49:D0:59 MAC地址
IPADDR = 192.168.1.10 本機(jī)IP地址
NETMAST = 255.255.255.0 子網(wǎng)掩碼
NETWORK = 192.168.1.0 網(wǎng)絡(luò)號(hào)
ONBOOT = yes 開(kāi)機(jī)時(shí)激活網(wǎng)卡
DHCP服務(wù)驗(yàn)證
1.服務(wù)器端驗(yàn)證
查看dhcp租約文件。
cat /var/lib/dhcp/dhcpd.leases
# This lease file was written by isc-dhcp-V3.0pl1
lease 192.168.1.100 {
starts 3 2009/01/21 12:26:31;
ends 4 2009/01/22 12:26:31;
binding state active;
next binding state free;
hardware ethernet 00:0c:29:3b:20:d5;
}
查看系統(tǒng)日志文件
cat /var/log/messages
....
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 啟動(dòng) 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.客戶端驗(yàn)證
ip地址驗(yàn)證:ifconfig
網(wǎng)關(guān):/etc/sysconfig/network
dns: /etc/resolv.conf