DHCP服務器學習之dhcp配置
想要學好DHCP服務器的內(nèi)容,對于它的基本概念和配置內(nèi)容我們都要清楚。那么這里我們先來簡單了解一下DHCP。DHCP基于客戶/服務器模式。當DHCP客戶端啟動時,它會自動與DHCP服務器通信,由DHCP服務器為DHCP客戶端提供自動分配IP地址的服務。當然高級的DHCP,不光只是分配地址這么簡單,今天我們的課程只是架設一個普通的DHCP的服務器, client端能獲取到上網(wǎng)必須的網(wǎng)絡配置信息。安裝了DHCP服務軟件的服務器稱為DHCP服務器,而啟用了DHCP功能的客戶機稱為DHCP客戶端,DHCP服務器是以地址租約的方式為DHCP客戶端提供服務的,它有以下兩種方式:限定租期 和 永久租用。學DHCP服務器,就一定要知道DHCP服務器的工作原理:
DHCP DISCOVER(DHCP發(fā)現(xiàn))
DHCP OFFER(DHCP提供)
DHCPREQUEST(DHCP請求)
DHCPACK(DHCP確認)
這個4個步驟,是client獲取IP地址必經(jīng)的步驟
DHCP提供的時候,服務器已經(jīng)給client分配了IP地址,第二部分分給client的IP地址是臨時的,client得到這個IP地址后,會發(fā)出DHCP請求,請求租用這個地址,服務器收到請求后,就會正式把這個地址分配給client,繼而向client發(fā)送DHCP確認。 這個四步主要是應對同一網(wǎng)絡多個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
再提示一點吧,網(wǎng)絡啟動方式也叫bootpc,這樣獲取的IP地址是不會受服務器的租期限制的,它永遠有效好了,我們先安裝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文件的內(nèi)容就導進來了。
- 打開dhcpd.conf,要修改的幾個地方:
- subnet 后面接的是你所定義的網(wǎng)段,要與本機的IP地址同網(wǎng)段,
- 每一語句以分號“;”結尾,不要忘記。
- 例如:我的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動態(tài)更新類型(必選),一般我們設置成關閉,
- #interim和none都是關閉的意思
- allow/ignore client-updates; #允許/忽略客戶機更新DNS記錄
- allow/deny unknown-clients; #是否動態(tài)分配IP給未知的使用者
- allow/deny bootp; #是否響應激活查詢
- allow/deny booting; #是否響應使用者查詢
- subnet 192.168.2.0 netmask 255.255.255.0 { #設置子網(wǎng)聲明
- # --- default gateway
- option routers 192.168.2.1; #設置缺省網(wǎng)關為192.168.2.1
- option subnet-mask 255.255.255.0; #設置客戶端的子網(wǎng)掩碼
- 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節(jié)點類型 我不清楚這個netbios節(jié)點是什么東西
- range dynamic-bootp 192.168.2.28 192.168.2.254; #設置動態(tài)的地址池
- 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網(wǎng)絡使用此參數(shù)
- #設置主機聲明
- 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服務器監(jiān)聽的網(wǎng)卡,如果只有一個網(wǎng)卡,一般不用設置 DHCPDARGS=eth0 或者是eth1 ,如果全部監(jiān)聽就不用管。
3、這個文件/etc/sysconfig/dhcrelay就是設置DHCP中繼的文件,大家打開看看吧。interfaces 就是來自這個端口的DHCP DISCOVER(請求)都會轉發(fā)到后面的DHCPSERVERS服務器。設置了DHCP中繼,需要啟動中繼服務:service dhcrelay start
七、在linux客戶機下面,你可以手動配置你的dhcp:
察看你的網(wǎng)絡配置文件,如果你沒有設置為自動啟動聯(lián)網(wǎng),則要修改你的網(wǎng)絡配置文件。
- # vi /etc/sysconfig/network
- 添加“NETWORKING=yes”(讓引導的時候啟動聯(lián)網(wǎng))
- 或者使用
- # @echo “NETWORKING=yes”> /etc/sysconfig/network
- 然后再修改你的網(wǎng)卡配置文件
- /etc/sysconfig/network-scriptes/ifcfg-eth0 文件應該包含這幾行:
- DEVICE=eth0
- BOOTPROTO=dhcp
- ONBOOT=yes