第5章linuxDHCP服務_第1頁
第5章linuxDHCP服務_第2頁
第5章linuxDHCP服務_第3頁
第5章linuxDHCP服務_第4頁
第5章linuxDHCP服務_第5頁
已閱讀5頁,還剩50頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1第5章 DHCP 服務本章要點:本章要點: DHCP租借過程租借過程 IP/MAC地址綁定地址綁定 基于類別基于類別DHCP服務服務 DDNS服務服務2351 DHCP概述概述511 DHCP的工作機制的工作機制1DHCP租借過程租借過程(1)DHCP發現發現DHCP DISCOVER(2)DHCP提供提供DHCP OFFER(3)DHCP請求請求DHCP REQUEST(4)DHCP確認確認DHCP ACK42DHCP租期更新(1)RENEW更新更新(2)REBIND更新更新5512 DHCP的安裝的安裝 單獨安裝DHCP服務器的示例。rootserver1 rpm -ivh dhcp-4

2、.2.5-27.el7.x86_64.rpm 執行如下命令來找到該樣板文件。# rpm -ql dhcp | grep example/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example/usr/share/doc/dhcp-4.2.5/dhcpd6.conf.example 652 DHCP服務器端配置服務器端配置521 基本配置基本配置對dhcpd.conf稍作修改后,保留下一些最基本的選項成為相對簡單的配置文件。請看下面示例:subnet netmask /設置子網及其參數,即作用域設置子網及其參數,

3、即作用域 option routers ; /指定網關指定網關ip地址地址 option domain-name ;/指定域名后綴指定域名后綴 option domain-name-servers 02; /指定指定DNS服務器的服務器的IP地址地址 default-lease-time 3600; /指定默認租期指定默認租期 range 1 9; /設置地址池,即可分配設置地址池,即可分配IP地址的范圍地址的范圍7說明:利用以上的配置可以實現一個最基本的說明:利用以上的配置可以實現一個最基本的DHCP服務

4、器。服務器。以上基本配置即可正常工作,請執行如下指令來以上基本配置即可正常工作,請執行如下指令來啟動啟動DHCP服務:服務:#service dhcpd start#ps aux | grep dhcpd dhcpd 31904 0.0 0.2 107356 18484 ? Ss 14:20 0:00 /usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd -no-pid8522 配置配置IP地址與地址與MAC地址綁地址綁定定 請看下面示例: /此處省略同前面基本配置 subnet net

5、mask /設置子網及其參數 /此處省略同前面基本配置 host myweb /針對主機單獨做設置 hardware ethernet 00:06:5b:e6:58:1a; /與下一行共同實現IP-MAC地址綁定 fixed-address 60; /為上面的MAC地址保留該IP地址 9523 配置超級作用域配置超級作用域 超級作用域(super scope)是在共享同一共享同一個物理網絡個物理網絡環境下為不同的邏輯子網不同的邏輯子網動態分配IP地址的解決方案。 簡單地說,在一個物理網絡中如果存在多個不同的網段(例如多個多個VLAN),如果要為

6、這些網絡的機器動態分配IP地址,那么應該采用超級作用域。10 DHCP實現超級作用域的指令是shared-network 請看如下配置:ddns-update-style interim;ignore client-updates;option routers ; /服務器選項服務器選項option subnet-mask ;option domain-name ;option domain-name-servers ;option time-offset -18000;default-lease-time 21600;ma

7、x-lease-time 43200;11shared-network mysuper /定義共享網絡定義共享網絡超級作用域,超級作用域,其中內嵌了三個子網其中內嵌了三個子網 subnet netmask option domain-name-servers 00; /作用域選項 range 70 79; subnet netmask option domain-name ; /作用域選項 option domain-name

8、-servers 00; range 0 9; option routers 54; subnet netmask option domain-name-servers 00; /作用域選項 range 0 9; option routers 54; 1253 DHCP客戶端配置客戶端配置 先將DHCP服務器運行起來:rootserver1 service dhcpd

9、start531 Windows客戶端配置客戶端配置(1) “網上鄰居網上鄰居”單擊屬性單擊屬性雙擊雙擊“本地連接本地連接”單擊單擊“屬性屬性”雙擊雙擊“Internet協議協議”選中選中“自動獲得自動獲得IP地地址址”。 1314(2)查看是否獲得了IP地址。請單擊“開始”菜單單擊“運行”輸入“cmd”輸入ipconfig /all, 圖圖5-2 查看查看 DHCP客戶端獲得的客戶端獲得的IP地址地址圖圖5-2 查看查看 DHCP客戶端獲得的客戶端獲得的IP地址地址15(3)DHCP服務器的租期文件lease 3 /一個租期 starts 3 2014/10/15 08

10、:42:01; /租期開始時間 ends 3 2014/10/15 09:42:01; /租期結束時間 cltt 3 2014/10/15 08:42:01; binding state active; /綁定狀態為活動的 next binding state free; rewind binding state free; hardware ethernet 00:0c:29:50:7d:62; /該客戶機的MAC地址 uid 001000014)Pb;/該客戶機的標識符 client-hostname winxp-lb01;/該客戶機的主機名16532 Linux客戶端配置客戶端配置 用v

11、i編輯器修改/etc/sysconfig/network-scripts/ifcfg-eno16777736文件,修改后的內容如下: DEVICE=eth0BOOTPROTO=dhcpONBOOT=yes 說明: /etc/sysconfig/network-scripts/ifcfg-eno16777736是設置網卡IP地址的配置文件。 其中DEVICE=eth0用來指定網卡的名稱,BOOTPROTO=dhcp用來設置采用動態IP地址分配,ONBOOT=yes用來設置在開機引導時激活該設備。 修改完該文件后,再將該文件改名:#cd /etc/sysconfig/network-scripts

12、#mv ifcfg-eno16777736 ifcfg-eth0 可以執行如下命令使配置生效:#service network restart1718 接著,可以執行如下命令來獲得IP地址:rootclient 1 dhclient eth0 再執行ifconfig查看是否已經獲得了IP地址。root client 1 ifconfig eth019通過DHCP客戶機的租期文件/var/lib/dhclient/dhclient.leases來查看租期內容。請看如下示例:lease interface eno16777736; /網卡eno16777736即eth0 fixed-address

13、 2; /分配IP地址 option subnet-mask ; /掩碼 option routers ; /網關為 option dhcp-lease-time 3600; /租期時間 option dhcp-message-type 5; /DHCP消息類型5DHCPACK option domain-name-servers 02; /DNS服務器為02 option dhcp-server-identifier ; /DHCP服務

14、器標識符為 option domain-name ;/域名后綴 renew 3 2014/10/15 06:40:29; /renew的時間點 rebind 3 2014/10/15 07:06:48; /rebind的時間點 expire 3 2014/10/15 07:14:18; /過期時間20 可以通過執行如下命令來釋放IP地址:rootclient1 # dhclient -r2154 配置基于類別的配置基于類別的DHCP服務服務 基于類別的DHCP服務分為兩部分: 一是一是DHCP服務器服務器的配置; 二是二是DHCP客戶機客戶機的配置。 22541 基于類別

15、的基于類別的DHCP服務器服務器端的配置端的配置 將一個完整的配置文件都寫在此處并做相應解釋。ddns-update-style interim;ignore client-updates;option routers;option subnet-mask;option domain-;option domain-name-servers;option time-offset -18000;default-lease-time 21600;max-lease-time 43200;23class myras-clients

16、/定義類別myras-clients match if option dhcp-client-identifier = RAS; /如果客戶標識符為RAS,則屬于此類class myclass-1 /定義類別myclass-1 match pick-first-value (option dhcp-client-identifier,hardware); /取客戶標識符中的MAC地址作為本類的依據class myclass-2 /定義類別myclass-2 match pick-first-value (option dhcp-client-identifier,hardware); /取客戶

17、標識符中的MAC地址作為本類的依據24subclass myclass-1 1:00:06:5b:e6:58:10; /定義此MAC地址的主機屬于myclass-1類別subclass myclass-1 1:50:16:b3:06:0a:2c; /定義此MAC地址的主機屬于myclass-1類別subclass myclass-2 1:00:06:5b:e6:58:1b; /定義此MAC地址的主機屬于myclass-2類別25subnet netmask /定義子網 pool /定義地址池 allow members of myclass-

18、1; /設置只有myclass-1中客戶可獲得該地址池中的IP range 50 59; /設置地址池范圍 pool /定義地址池 allow members of myclass-2;/設置只有myclass-2中客戶可獲得該地址池中的IP range 60 69; /設置地址池范圍 option domain-name ;/設置該類別的域名后綴為 pool /定義地址池 allow members of myras-clients;/設置只有myras-clients中客戶可獲得該地址池中的IP ran

19、ge 70 79; /設置地址池范圍 option domain-name ;/設置該類別的域名后綴 26542 基于類別的基于類別的DHCP客戶端客戶端的配置的配置1Windows客戶端客戶端 方法:將方法:將Windows XP客戶端的客戶端的網卡網卡MAC地址地址寫入寫入dhcpd.conf中的中的subclass命令中命令中即可完成配置。即可完成配置。 測試測試時將其時將其IP地址設置為動態獲得,當得地址設置為動態獲得,當得到相應的到相應的IP地址后,可地址后,可在在DHCP服務器服務器端端查看租期文件,執行如下命令:查看租期文件,執行如下命

20、令:rootcontroller dhcp# cat /var/lib/dhcpd/dhcpd.leases# The format of this file is documented in the dhcpd.leases(5) manual page.# This lease file was written by isc-dhcp-4.2.5server-duid 000001000001033275323000014) 0178;lease 50 /獲得特定類別中指定網段地址池中的獲得特定類別中指定網段地址池中的IP地址地址 starts 3 2014/10/1

21、5 12:29:38; ends 4 2014/10/16 00:29:38; cltt 3 2014/10/15 12:29:38; binding state active; next binding state free; rewind binding state free; hardware ethernet 00:0c:29:50:7d:62; /關注此關注此MAC地址地址 uid 001000014)Pb; client-hostname winxp-lb01;從租期文件中可以看到,該從租期文件中可以看到,該Windows XP客戶端正是按照相應的類別獲得了客戶端正是按照相應的類別

22、獲得了指定地址池中的地址。指定地址池中的地址。27282Linux客戶端配置客戶端配置 將一臺運行將一臺運行RHEL 7.0的的Linux主機配置為基于類主機配置為基于類別別DHCP客戶端,示例實現了按客戶端,示例實現了按客戶端標識符客戶端標識符配置配置IP地址的方法。地址的方法。29(1)關閉)關閉NetworkMananger服務,開啟服務,開啟network服務服務 在在RHEL 7.0中默認采用中默認采用NetworkMananger服務服務對網絡進行配置與管理,需要將其對網絡進行配置與管理,需要將其關閉關閉并并開啟開啟“舊的舊的”網絡管理機制網絡管理機制network服務。服務。#

23、systemctl stop NetworkManager.service# systemctl disable NetworkManager.servicerm /etc/systemd/system/multi-user.target.wants/NetworkManager.servicerm /etc/systemd/system/dbus-org.freedesktop.NetworkManager.servicerm /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service# chkconfig network o

24、n 接下來接下來編輯編輯DHCP客戶端的配置文件客戶端的配置文件/etc/dhcp/dhclient.conf。示例示例如下:如下:interface eno33554960 send host-name myRHEL7-00; send user-class RAS;說明:interface “eno33554960”指明指明網卡的名稱網卡的名稱;花括號中的第一條指令用于將花括號中的第一條指令用于將客戶機的主機名客戶機的主機名“myRHEL 7-00”通過通過DHCP廣播包發送給廣播包發送給DHCP服務器;服務器;第二條指令用于設置本機的第二條指令用于設置本機的“用戶類別用戶類別”為為“RA

25、S”,這個這個“用戶類別用戶類別”也會隨著也會隨著DHCP廣播包發送給廣播包發送給DHCP服務器服務器。30 在在DHCP服務器端通過服務器端通過tcpdump來捕獲來捕獲DHCP租借過程,需要注意該命令必須在客戶端執行租借過程,需要注意該命令必須在客戶端執行dhclient之前執行,命令如下:之前執行,命令如下:# tcpdump -i eth1 -vv tcpdump.01031 在修改完客戶端配置文件在修改完客戶端配置文件/etc/dhcp/dhclient.conf之后,可以通過如下之后,可以通過如下命令來啟動客戶進程。命令來啟動客戶進程。rootclient1 # dhclient

26、如果只有一塊網卡直接執行如果只有一塊網卡直接執行dhclient即可,如果即可,如果有多塊網卡則需要增加參數來指明是哪一塊網有多塊網卡則需要增加參數來指明是哪一塊網卡卡,如下:,如下:rootclient1 # dhclient eno3355496032 在執行在執行dhclient獲得獲得IP地址后,從地址后,從兩個方面兩個方面可以驗證客戶端是可以驗證客戶端是通過通過“基于類別的基于類別的DHCP服務服務”獲得的獲得的IP地址,地址, 一是:可以通過一是:可以通過DHCP服務器的租期文件查看租期的具體內容服務器的租期文件查看租期的具體內容;lease 79 /租借出去

27、的租借出去的IP地址地址79 starts 5 2014/10/17 17:22:11; ends 5 2014/10/17 23:22:11; cltt 5 2014/10/17 17:32:11; binding state active; next binding state free; rewind binding state free; hardware ethernet 00:0c:29:ea:e7:5e; client-hostname myRHEL7-00; /客戶端的主機名為客戶端的主機名為myRHEL 7-00;33二是:通過二是:通過查看前面查看前面

28、tcpdump捕獲的數據包文件捕獲的數據包文件tcpdump.010,以下是相,以下是相應的部分:應的部分:17:21:20.042392 IP (tos 0 x10, ttl 128, id 0, offset 0, flags none, proto UDP (17), length 328) .bootpc 55.bootps: udp sum ok BOOTP/DHCP, Request from 00:0c:29:ea:e7:5e (oui Unknown), length 300, xid 0 x9c2d8d5c, Flags none (0

29、 x0000) Client-Ethernet-Address 00:0c:29:ea:e7:5e (oui Unknown) Vendor-rfc1048 Extensions Magic Cookie 0 x63825363 DHCP-Message Option 53, length 1: Discover /DHCP第第1個數據包個數據包discover Parameter-Request Option 55, length 13: Subnet-Mask, BR, Time-Zone, Classless-Static-Route Domain-Name, Domain-Name-S

30、erver, Hostname, YD YS, NTP, MTU, Option 119 Default-Gateway CLASS Option 77, length 3: RAS /自定義類別自定義類別RAS343555 配置配置DDNS服務服務551 DDNS服務的概念服務的概念 DDNS(Dynamic DNS) 動態動態DNS更新服務是更新服務是DHCP服務與服務與DNS服服務相結合,實現務相結合,實現動態更新動態更新DNS區域數區域數據庫據庫文件內容的一項綜合服務。文件內容的一項綜合服務。 要求必須在ISC開發的BIND 9.0和DHCP 3.0以上版本中才可以實現 36 實現DD

31、NS服務的步驟可以分為3部分: 一是生成動態更新密鑰生成動態更新密鑰; 二是配置配置DNS服務支持動態更新服務支持動態更新; 三是配置配置DHCP服務支持動態更新服務支持動態更新。下面分別講述3部分的實現過程。37552 生成動態更新密鑰生成動態更新密鑰 為了實現為了實現DDNS必須生成一個必須生成一個動態更新密鑰動態更新密鑰,此密鑰作為此密鑰作為DHCP與與DNS相互操作的安全憑據。相互操作的安全憑據。 以以root身份在身份在/var/named/dynamic目錄下執目錄下執行如下命令來生成動態更新密鑰。行如下命令來生成動態更新密鑰。38#cd /var/named/dynamic#dn

32、ssec-keygen -a HMAC-MD5 -b 128 -n USER mydhcp_updaterKmydhcp_updater.+157+38386 說明:參數參數-a指定加密算法,本例選擇的算法是HMAC-MD5; 參數參數-b指定密鑰的位數,對于HMAC-MD5密鑰來說其值應在1512bit之間; 參數參數-n指定密鑰所有者類型,本例選擇的是USER類型;本例密鑰的名稱是mydhcp_updater。39 上述命令在/var/named/dynamic目錄下生成了一對密鑰文件:# ll Kmydhcp_updater.+157+38386.*-rw- 1 root root 56

33、 10月月 19 18:19 Kmydhcp_updater.+157+38386.key-rw- 1 root root 165 10月月 19 18:19 Kmydhcp_updater.+157+38386.private 查看這兩個密鑰文件的內容:查看這兩個密鑰文件的內容:# cat Kmydhcp_updater.+157+38386.key mydhcp_updater. IN KEY 0 3 157 VnuVLuRLAz4nPy5lxXykAA= #cat Kmydhcp_updater.+157+38386.private Private-key-format: v1.3Alg

34、orithm: 157 (HMAC_MD5)Key: VnuVLuRLAz4nPy5lxXykAA=Bits: AAA=Created: 20141019101934Publish: 20141019101934Activate: 20141019101934 修改密鑰文件的屬主為named,如下:# chown d /var/named/dynamic/Kmydhcp_updater.+157+38386.*4041553 配置配置DNS服務支持動態更新服務支持動態更新 新增加或修改的配置如下:1編輯編輯named.conf文件文件#vi /etc/named.conf/

35、在根域之前在根域之前zone “.”輸入輸入key mydhcp_updater /定義實現定義實現DDNS時采用的時采用的key algorithm hmac-md5; /指定采用的算法為指定采用的算法為hmac-md5 secret VnuVLuRLAz4nPy5lxXykAA=; /前面通過前面通過dnssec-keygen產生的密鑰產生的密鑰;422編輯編輯named.rfc1912.zones文件文件修改文件zone “”配置段和zone 1.168.192.配置段后,內容如下:#vi /etc/named.rfc1912.zoneszone IN type

36、master; file slaves/.hosts; /注意區域數據庫的存放位置發生了變化 allow-update key mydhcp_updater; ; /設置該區域允許動態更新并指定動態更新時采用的密鑰的名為mydhcp_updater。;zone 1.168.192. IN type master; file slaves/.rev; allow-update key mydhcp_updater; ;/設置該區域允許動態更新并指定動態更新時采用的密鑰的名為mydhcp_updater。;43 說明:編輯/etc/named.conf文件的目的主要有兩點:

37、 一是設置動態更新時采用的密鑰動態更新時采用的密鑰,該密鑰是DHCP與DNS交換信息的關鍵,因此DHCP服務器配置中也要有相應的密鑰服務器配置中也要有相應的密鑰; 二是設置哪個區域可以被動態更新。44554 配置配置DHCP服務支持動態更新服務支持動態更新編輯/etc/dhcp/dhcpd.conf文件,使得DHCP具有動態更新DNS的功能。請看如下配置:#vi dhcpd.confddns-update-style interim; /指定動態更新指定動態更新DNS的方法為的方法為interimsubnet netmask option r

38、outers 50; option subnet-mask ; option domain-name ; /分配給客戶機的域名后綴 option domain-name-servers ; option time-offset -18000; range dynamic-bootp 50 99;/分配給客戶機的地址池 default-lease-time 21600; max-lease-time 43200;45key mydhcp_updater /定義密鑰,此處與named.

39、conf中定義的名稱、內容要相同 algorithm hmac-md5; /指定采用的算法為HMAC-MD5 secret VnuVLuRLAz4nPy5lxXykAA=; /前面通過dnssec-keygen產生的密鑰zone . /定義要更新正向區域 primary ; /指明該區域主DNS服務器的IP地址 key mydhcp_updater; /指明更新時采用的密鑰為mydhcp_updaterzone 1.168.192.. /定義要更新反向區域1.168.192.. primary ; /指

40、明該區域主DNS服務器的IP地址 key mydhcp_updater; /指明更新時采用的密鑰為mydhcp_updater46555 測試測試DDNS服務服務(1)運行)運行DNS服務服務#service named start(2)運行)運行DHCP服務服務#service dhcpd start(3)啟動一臺)啟動一臺DHCP客戶端(客戶端(Linux DHCP客戶端或客戶端或Windows DHCP客戶端均可)客戶端均可)如在Windows下,可執行ipconfig /all命令查看獲得的IP地址情況。47(4)在)在DDNS服務器上,查看租期情況服務器上,查看租期情況#more /

41、var/lib/dhcpd/dhcpd.leaseslease 50 /租期 starts 0 2014/10/19 11:12:03; /租期開始時間 ends 0 2014/10/19 23:12:03; /租期結束時間 cltt 0 2014/10/19 11:12:03; binding state active; /當前綁定狀態為激活 next binding state free; /下一次綁定狀態為任意 rewind binding state free; hardware ethernet 00:0c:29:50:7d:62; /擁有該租期的MAC地址 u

42、id 001000014)Pb;/客戶機的標識符 set ddns-rev-name = 92..; /DHCP服務器向DNS服務器發出的請求創建反向資源記錄的信息 set ddns-txt = 31802c1c869e70e03a8339ad00ce34b494;/DHCP服務器向DNS服務器發出的請求創建txt類型資源記錄的信息 set ddns-fwd-name = winxp-;/DHCP服務器向DNS服務器發出的請求創建正向資源記錄的信息 client-hostname winxp-lb01;/客戶機的主機名,也被發送到DNS服務器上48

43、(5)在)在DDNS服務器上,查看區域數據庫文件的變化服務器上,查看區域數據庫文件的變化首先,執行如下命令:# ll /var/named/slaves/-rw-r-r- 1 named named 509 10月月 19 19:26 .hosts-rw-r-r- 1 named named 821 10月月 19 19:12 .hosts.jnl-rw-r-r- 1 named named 449 10月月 19 19:23 .rev-rw-r-r- 1 named named 791 10月月 19 19:12 .rev.jnl49 測試是否已經在DNS服務器動態創建相應的正、反向資源記錄

44、,請執行如下命令:# nslookup 50Server:Address:#5392.name = winxp-. winxp-Server:Address:#53Name:winxp-Address: 5050 需要說明的是:需要經過大約15min的時間才能正式寫入到區域數據庫文件中。 為了及時查看區域數據更新的狀況,可以執行如下命令:rootserver3 # rndc freeze rootserver3 # rndc freeze 1.168.192.in-

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論