當然高等的DHCP,不光只是分配地址這麼簡單,今天我們的課程只是架設一個普通的DHCP的服務器, client端能獲取到上網必須的網絡配置信息
安裝了DHCP服務軟件的服務器稱為DHCP服務器,而啟用了DHCP功效的客戶機稱為DHCP客戶端,DHCP服務器是以地址租約的方法為DHCP客戶端供給服務的,它有以下兩種方法:
限定租期 和 永久租用
學DHCP服務器,就一定要知道DHCP服務器的工作原理:
DHCPDISCOVER(DHCP發明)
DHCPOFFER(DHCP供給)
DHCPREQUEST(DHCP請求)
DHCPACK(DHCP確認)
這個4個步驟,是client獲取IP地址必經的步驟
DHCP供給的時候,服務器已經給client分配了IP地址,第二部分分給client的IP地址是臨時的,client得到這個IP地址後,會發出DHCP請求,請求租用這個地址,服務器收到請求後,就會正式把這個地址分配給client,繼而向client發送DHCP確認。
這個四步主要是應對同一網絡多個DHCP服務器
後台過程:dhcpd
腳本:/etc/rc.d/init.d/dhcpd
使用端口:67
所需RPM包:dhcp
相關RPM包:
dhcp-devel-3.0.5-7.el5.i386.rpm
dhcpv6-0.10-33.el5.i386.rpm
dhcpv6_client-0.10-33.el5.i386.rpm
配置文件:/etc/dhcpd.conf
日志:/var/log/xferlog
再提示一點吧,網絡啟動方法也叫bootpc,這樣獲取的IP地址是不會受服務器的租期111ttt.com的,它永遠有效
好了,我們先安裝DHCP服務器
一、下載或從光盤上找到DHCP服務安裝包。
二、安裝(dhcp*代表其安裝包名稱):
# rpm -ivh dhcp*
三、配置DHCP文件:
復制/usr/share/doc/dhcp*/dhcpd.conf.sample 到/etc目錄下,更名為:dhcpd.conf
# cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf
當然,也可以先vi /etc/dhcpd.conf,然後在末行模式運行以下命令:
r /usr/share/doc/dhcp*/dhcpd.conf.sample
這樣這個dhcpd.conf.sample文件的內容就導進來了。
打開dhcpd.conf,要修改的幾個地方:
subnet 後面接的是你所定義的網段,要與本機的IP地址同網段,
每一語句以分號“;”結尾,不要忘記。
例如:我的IP是“192.168.2.11”,下面是我的配置文件:
ddns-update-style interim;
ignore client-updates;
subnet 192.168.2.0 netmask 255.255.255.0 {
option routers 192.168.2.1;
option subnet-mask 255.255.255.0;
option nis-domain "domain.org";
option domain-name "domain.org";
option domain-name-servers 192.168.2.1;
option time-offset -18000;
range dynamic-bootp 192.168.2.100 192.168.2.254
default-lease-time 21600;
max-lease-time 43200;
filename "/pxelinux.0";
next-server 192.168.2.11;
host ns {
next-server marvin.redhat.com;
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 207.175.42.254;
}
}
四、詳細注解:
ddns-update-style interim; #定義所支持的DNS動態更新類型(必選),一般我們設置成關閉,
#interim和none都是關閉的意思
allow/ignore client-updates; #允許/疏忽客戶機更新DNS記載
allow/deny unknown-clients; #是否動態分配IP給未知的使用者
allow/deny bootp; #是否響應激活查詢
allow/deny booting; #是否響應使用者查詢
subnet 192.168.2.0 netmask 255.255.255.0 { #設置子網聲明
# --- default gateway
option routers 192.168.2.1; #設置缺省網關為192.168.2.1
option subnet-mask 255.255.255.0; #設置客戶端的子網掩碼
option nis-domain "domain.org"; #為客戶設置NIS域
option domain-name "domain.org"; #為客戶設置域名
option domain-name-servers 192.168.2.1; #為客戶設置域名服務器
option time-offset -18000; # Eastern Standard Time #為客戶端指定格林威治時間偏移時間,單位秒,
# 該選項可以在全局配置、局部配置均可使用
# option ntp-servers 192.168.2.1; #NTP是時間服務器
# option netbios-name-servers 192.168.2.1; 設置wins服務器
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2; #設置netbios節點類型 我不清楚這個netbios節點是什麼東西
range dynamic-bootp 192.168.2.28 192.168.2.254; #設置動態的地址池
default-lease-time 21600; #設置缺省的地址租期
max-lease-time 43200; #設置客戶端最長的地址租期
# we want the nameserver to appear at a fixed address
filename "/pxelinux.0"; #開始啟動文件的名稱,應用於無盤安裝,可以是tftp的相對或絕對路徑
next-server 192.168.2.11; #This is the name of the server they should get it from
#tftp服務器,可以和dhcp服務器不在同一機器上,一般是PXE網絡使用此參數
#設置主機聲明
host ns {
next-server marvin.redhat.com; #設置由於定義服務器從引導文件中裝入的主機名,用於無盤站
hardware ethernet 12:34:56:78:AB:CD; #指定dhcp客戶的mac地址
fixed-address 207.175.42.254; #給指定的mac地址分配ip
}
}
五、配置好dhcpd.conf文件後就可以啟動dhcp服務了:
# service dhcpd restart
這時可以用“netstat -nlutp”命令查看dhcp服務是否有啟動。
六、其它相關文件:
1、這個文件/var/lib/dhcpd/dhcpd.leases,可以看到被租出去的IP地址和相關信息。
2、這個文件/etc/sysconfig/dhcpd是指定DHCP服務器111ttt.com的網卡,如果只有一個網卡,一般不用設置
DHCPDARGS=eth0 或者是eth1 ,如果全部111ttt.com就不用管。
3、這個文件/etc/sysconfig/dhcrelay就是設置DHCP中繼的文件,大家打開瞧一下吧。
interfaces 就是來自這個端口的dhcpdiscover(請求)都會轉發到後面的DHCPSERVERS服務器。
設置了DHCP中繼,需要啟動中繼服務:service dhcrelay start
七、在linux客戶機下面,你可以手動配置你的dhcp:
觀察你的網絡配置文件,如果你沒有設置為自動啟動聯網,則要修改你的網絡配置文件。
# vi /etc/sysconfig/network
添加“NETWORKING=yes”(讓引導的時候啟動聯網)
或者使用
# @echo “NETWORKING=yes”> /etc/sysconfig/network
然後再修改你的網卡配置文件
/etc/sysconfig/network-scriptes/ifcfg-eth0 文件應該包括這幾行:
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes