DHCP服務(wù)的官方網(wǎng)站https://www./
dhcp=Dynameic Host Configuration Protocol
是基于TCP/IP,用于動(dòng)態(tài)配置工作站的網(wǎng)絡(luò)接口,使工作站的網(wǎng)絡(luò)接口管理自動(dòng)化,可以自動(dòng)配置主機(jī)的IP地址、子網(wǎng)掩碼、網(wǎng)關(guān)及DNS等
TCP/IP信息。工作原理請(qǐng)大家到網(wǎng)上找一下。這里不做介紹。
下面介紹一下DHCP的配置文件
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.sample 這個(gè)是配置文件的樣本,可以直接COPY這個(gè)文件到/etc/
dhcpd.conf配置文件中可以進(jìn)行相當(dāng)復(fù)雜的設(shè)置,以滿足不同的應(yīng)用需求,要了解具體的其他配置項(xiàng)使用方法,可以去查閱dhcp.conf文件的
手冊(cè)頁(yè)。
dhcpd.conf配置文件詳解
ddns-update-style interim;
# 作用:定義所支持的DNS動(dòng)態(tài)更新類型。
# none:表示不支持動(dòng)態(tài)更新
# interim:表示DNS互動(dòng)更新模式
# ad-hoc:表示特殊DNS更新模式
ignore client-updates;
# 作用:忽略客戶端更新
subnet 192.168.0.0 netmask 255.255.255.0 {
# 作用:定義作用域,指定子網(wǎng)
# 注意:網(wǎng)絡(luò)號(hào)必須與DHCP服務(wù)器的網(wǎng)絡(luò)號(hào)相同
# --- default gateway
option routers 192.168.0.1;
# 作用:為客戶端指定默認(rèn)網(wǎng)關(guān)
option subnet-mask 255.255.255.0;
# 作用:設(shè)置客戶端的子網(wǎng)掩碼
option nis-domain "domain.org";
# 為客戶設(shè)置NIS域
option domain-name "domain.org";
# 為客戶設(shè)置域名
option domain-name-servers 192.168.1.1;
# 作用:為客戶端指定DNS服務(wù)器地址
option time-offset -18000; # Eastern Standard Time
# 設(shè)置偏移時(shí)間。
option ntp-servers 192.168.1.1;
# 設(shè)置NTP服務(wù)器。
option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;
# 設(shè)置wins服務(wù)器
range dynamic-bootp 192.168.0.128 192.168.0.254;
# 作用:指定動(dòng)態(tài)IP地址范圍
# 注意:可以指定多個(gè)range,但多個(gè)range所定義IP范圍不能重復(fù)
default-lease-time 21600;
# 作用:定義默認(rèn)IP租約時(shí)間為6小時(shí)
max-lease-time 43200;
# 作用:定義客戶端IP租約時(shí)間的最大值
# we want the nameserver to appear at a fixed address
host ns {
next-server marvin.redhat.com;
# 設(shè)置由于定義服務(wù)器從引導(dǎo)文件中裝入的主機(jī)名,用于無(wú)盤站。
hardware ethernet 12:34:56:78:AB:CD;
# 作用:定義網(wǎng)絡(luò)接口類型和硬件地址
fixed-address 207.175.42.254;
# 作用:定義DHCP客戶端指定的IP地址
}
# 作用:給客戶端分配固定IP地址
}
租約數(shù)據(jù)庫(kù)文件 /var/lib/dhcpd/dhcpd.leases
案例詳解
【案例1】架設(shè)一臺(tái)DHCP服務(wù)器,并按照下面的要求進(jìn)行配置。
(1)為子網(wǎng)192.168.31.0/24建立一個(gè)IP作用域,并將在192.168.31.20~192.168.31.100范圍之內(nèi)的IP地址動(dòng)態(tài)分配給客戶機(jī)。
(2)假設(shè)子網(wǎng)中的DNS服務(wù)器地址為192.168.31.2,IP路由器地址為192.168.31.1,所在的網(wǎng)域名為example.com,將這些參數(shù)指定給客戶機(jī)
使用。
(3)為某臺(tái)主機(jī)保留192.168.31.50這個(gè)IP地址, DNS服務(wù)器地址為192.168.31.5 。
這個(gè)安全其實(shí)就是按要求來(lái)改就OK。注意里面是不是有寫錯(cuò)的,有沒(méi)有;結(jié)尾。
下面給出配置文件,最后別忘記了重新啟動(dòng)DHCPD這個(gè)服務(wù)??!
ddns-update-style interim;
ignore client-updates;
subnet 192.168.31.0 netmask 255.255.255.0 {
option routers 192.168.31.1;
option subnet-mask 255.255.255.0;
option domain-name "example.com";
option domain-name-servers 192.168.31.2;
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.31.20 192.168.31.100;
default-lease-time 21600;
max-lease-time 43200;
host ns {
hardware ethernet 12:34:56:78:AB:CD;#這個(gè)MAC地址大家可以用ifconfig 查看,在WIN下可以用ipconfig /all來(lái)查看
fixed-address 192.168.31.50;
option domain-name-servers 192.168.31.5;
}
}
【案例2】公司原有機(jī)器為250臺(tái),IP地址規(guī)劃為192.168.31.0/24網(wǎng)段,動(dòng)態(tài)管理網(wǎng)絡(luò)IP地址?,F(xiàn)在升級(jí)到500臺(tái)。如何在保持原有IP地址的規(guī)
劃不變的情況下,可以擴(kuò)容現(xiàn)有的網(wǎng)絡(luò)IP地址。
下面用多作用域來(lái)實(shí)現(xiàn)。只要在原先的配置文件里面COPY一個(gè)出來(lái)就OK。

注意一點(diǎn),服務(wù)器的IP就是管理的各網(wǎng)段的網(wǎng)關(guān),也就是說(shuō)DHCP服務(wù)器的網(wǎng)卡擔(dān)當(dāng)網(wǎng)關(guān)功能,然后再打開(kāi)DHCP服務(wù)器的轉(zhuǎn)發(fā)功能。(這是讓兩
個(gè)網(wǎng)段的機(jī)器可以相互通信)
vim /etc/sysctl.conf
找到net.ipv4.ip_forward = 0 把0改成1
然后就刷新一下 sysctl -p
下面的就是這個(gè)案例的配置文件
ddns-update-style interim;
ignore client-updates;
subnet 192.168.31.0 netmask 255.255.255.0 {
option routers 192.168.31.3;
option subnet-mask 255.255.255.0;
option domain-name "example.com";
option domain-name-servers 192.168.31.2;
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.31.20 192.168.31.100;
default-lease-time 21600;
max-lease-time 43200;
}
subnet 192.168.32.0 netmask 255.255.255.0 {
option routers 192.168.32.3;
option subnet-mask 255.255.255.0;
option domain-name "example.com";
option domain-name-servers 192.168.32.2;
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.32.20 192.168.32.100;
default-lease-time 21600;
max-lease-time 43200;
}
下面用超級(jí)作用域來(lái)實(shí)現(xiàn)。只要在上面的配置文件里面稍做更改就OK。
ddns-update-style interim;
ignore client-updates;
shared-network test {
subnet 192.168.31.0 netmask 255.255.255.0 {
option routers 192.168.31.1;
option subnet-mask 255.255.255.0;
option domain-name "example.com";
option domain-name-servers 192.168.31.2;
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.31.20 192.168.31.100;
default-lease-time 21600;
max-lease-time 43200;
}
subnet 192.168.32.0 netmask 255.255.255.0 {
option routers 192.168.32.1;
option subnet-mask 255.255.255.0;
option domain-name "example.com";
option domain-name-servers 192.168.32.2;
option time-offset -18000; # Eastern Standard Time
range dynamic-bootp 192.168.32.20 192.168.32.100;
default-lease-time 21600;
max-lease-time 43200;
}
}
以上配置兩個(gè)網(wǎng)段不能相互通信,所以要解決這個(gè)問(wèn)題,我們就要用到中繼
DHCP中繼原理及配置
應(yīng)用場(chǎng)合:
當(dāng)一個(gè)網(wǎng)絡(luò)中的主機(jī)數(shù)目較大時(shí),手工分配IP不僅麻煩而且容易出錯(cuò)。DHCP服務(wù)的出現(xiàn)大大方便了主機(jī)IP地址的分配。現(xiàn)在的企業(yè)組網(wǎng)時(shí)
,根據(jù)實(shí)際需要來(lái)劃分vlan,成了必不可少的一個(gè)步驟。如何讓一個(gè)DHCP服務(wù)器同時(shí)為多個(gè)網(wǎng)段提供服務(wù),就是我們所要討論的問(wèn)題。
DHCP中繼原理:
DHCP客戶使用IP廣播來(lái)尋找同一網(wǎng)段上的DHCP服務(wù)器。當(dāng)服務(wù)器和客戶段處在不同網(wǎng)段,即被路由器分割開(kāi)來(lái)時(shí),路由器是不會(huì)轉(zhuǎn)發(fā)這樣
廣播包的。因此可能需要在每個(gè)網(wǎng)段上設(shè)置一個(gè)DHCP服務(wù)器,雖然DHCP只消耗很小的一部分資源的,但多個(gè) DHCP服務(wù)器,畢竟要帶來(lái)管理上
的不方便。DHCP中繼的使用使得一個(gè)DHCP服務(wù)器同時(shí)為多個(gè)網(wǎng)段服務(wù)成為可能。
為了讓路由器可以幫助轉(zhuǎn)發(fā)廣播請(qǐng)求數(shù)據(jù)包,使用ip help-address命令。通過(guò)使用該命令,路由器可以配置為接受廣播請(qǐng)求,然后將其以
單播方式轉(zhuǎn)發(fā)個(gè)指定IP地址。缺省情況下ip help-address轉(zhuǎn)發(fā)以下8種UDP服務(wù):
1.Time 2.Tacacs 3.DNS 4.BOOTP/DHCP服務(wù)器
5. BOOTP/DHCP客戶 6.TFTP 7.NetBios名稱服務(wù) 8. NetBios數(shù)據(jù)報(bào)服務(wù)
在DHCP廣播情況下,客戶在本地網(wǎng)段廣播一個(gè) DHCP發(fā)現(xiàn)分組。網(wǎng)關(guān)獲得這個(gè)分組,如果配置了幫助地址,就將DHCP分組轉(zhuǎn)發(fā)到特定地址。

下面是具體的步驟
把DHCP服務(wù)器的IP改為192.168.31.10
我們用另外一臺(tái)LINUX系統(tǒng)的DHCP軟件來(lái)實(shí)現(xiàn)這個(gè)中繼功能。
首先中繼要有兩塊網(wǎng)卡,IP為各網(wǎng)段的網(wǎng)關(guān),并安裝了DHCP這個(gè)軟件,其實(shí)這個(gè)就是dhcrelay這個(gè)配置文件
我們編輯一下
vim /etc/sysconfig/dhcrelay
在
INTERFACES="eth0 eth1" #指定中繼監(jiān)聽(tīng)的網(wǎng)絡(luò)設(shè)備
DHCPSERVERS="192.168.31.10" #指定DHCP服務(wù)器的IP
同樣要開(kāi)啟轉(zhuǎn)發(fā)功能
vim /etc/sysctl.conf
找到net.ipv4.ip_forward = 0 把0改成1
然后就刷新一下 sysctl -p
DHCP服務(wù)器上的配置文件不用更改。
通過(guò)中繼就能實(shí)現(xiàn)不同網(wǎng)關(guān)的通信了。
下面給出了一些中繼的常見(jiàn)位置,僅供大家參考
