2-3-配置DHCP服務器實現動態地址分配
阿新 • • 發佈:2017-05-11
客戶端 -name sci oom 動態分配 工作站 request請求 負責 evel 學習一個服務的過程:
1、 此服務的概述:名字,功能,特點,端口號
2、 安裝
3、 配置文件的位置
4、 服務啟動關閉腳本,查看端口
5、 此服務的使用方法
6、 修改配置文件,實戰舉例
7、 排錯(從下到上,從內到外)
本節所講內容:
? DHCP服務器工作原理
? 使用DHCP為局域網中的機器分配IP地址
? 使用DHCP為服務器分配固定IP地址
實驗環境:
服務端:xuegod63.cn IP:192.168.1.63
客戶端:xuegod64.cn IP:192.168.1.64
DHCP服務概述:(重點掌握DHCP的工作原理)
名稱:DHCP - Dynamic Host Configuration Protocol 動態主機配置協議
功能:DHCP(Dynamic HostConfiguration Protocol,動態主機配置協議)是一個局域網的網絡協議,使用UDP協議工作, 主要有兩個用途:
1、 給內部網絡或網絡服務供應商自動分配IP地址,主機名,DNS服務器,域名
2、 配合其它服務,實現集成化管理功能。如:無人執守安裝服務器
特點:C/S 模式
自動分配IP地址,方便管理
DHCP不會同時租借相同的IP地址給兩臺主機;
DHCP管理員可以約束特定的計算機使用特定的IP地址;
可以為每個DHCP作用域設置很多選項;
客戶機在不同子網間移動時不需要重新設置IP地址。每次都自動獲取IP地址就可以了。
DHCP的缺點:
當網絡上存在多服務器時,一個DHCP服務器不能查出已被其它服務器租出去的IP地址;
DHCP服務器不能跨路由器與客戶機通信,除非路由器允許BOOTP協議轉發。(中繼)
端口:
DHCP服務使用:端口67(bootps) 68(bootpc) 。
例:查看
# vim /etc/services
file:///C:/Users/Administrator/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg
DHCP協議由bootp協議發展而來,是BOOTP的 增強版本,bootps代表服務端端口, bootpc代表客戶端端口
bootp協議:引導程序協議(BOOTP)。它可以讓無盤工作站從一個中心服務器上獲得IP地址,為局域網中的無盤工作站分配動態IP地址,並不需要每個用戶去設置靜態IP地址。
BOOTP有一個缺點:您在設定前須事先獲得客戶端的硬件地址,而且,MCA地址與IP的對應是靜態的。換而言之,BOOTP非常缺乏“動態性 ”,若在有限的IP資源環境中,BOOTP的一對一對應會造成非常可觀的浪費。
DHCP可以說是BOOTP的增強版本,它分為兩個部分:一個是服務器端,而另一個是客戶端。所有的IP網絡設定數據都由DHCP服務器集中管理,並負責處理客戶端的DHCP要求;而客戶端則會使用從服務器分配下來的IP環境數據。 DHCP透過“租約和回收”的概念,有效管理動態分配客戶端的TCP/IP設定. 而且,作為兼容考慮,DHCP也完全照顧了BOOTP Client的需求。
一般linux系統都已安裝了客戶端 (開發工具包)
早先的Linux上並不會產生這條路由,現在有這條路由是為了和windows兼容。
- [[email protected] ~]# rpm –qa | grep dhc
- dhclient-4.1.1-38.P1.el6.x86_64
- dhcp-common-4.1.1-38.P1.el6.x86_64
file:///C:/Users/Administrator/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg DHCP客戶端向服務端請求過程 客戶端C 服務器端S 目標端口 源IP 目標IP -------DHCPDISCOVER-------> udp 目標67 源IP0.0.0.0 目的IP:255.255.255.255 #即DHCP客戶機尋找DHCP服務器的階段。DHCP客戶機以廣播方式(因為DHCP服務器的IP地址對於客戶機來說是未知的)發送DHCPdiscover發現信息來尋找DHCP服務器,即向地址255.255.255.255發送特定的廣播信息。網絡上每一臺安裝了TCP/IP協議的主機都會接收到這種廣播信息,但只有DHCP服務器才會做出響應 <------DHCPOFFER ---------- udp 68 源IP是DHCP服務器的IP, 目的IP: 255.255.255.255 即DHCP服務器提供IP地址的階段。在網絡中接收到DHCPdiscover發現信息的DHCP服務器都會做出響應,它從尚未出租的IP地址中挑選一個分配給DHCP客戶機,向DHCP客戶機發送一個包含出租的IP地址和其他設置的DHCPoffer提供信息 -------DHCPREQUEST --------> udp 67 源IP0.0.0.0 目的IP:255.255.255.255 即DHCP客戶機選擇某臺DHCP服務器提供的IP地址的階段。如果有多臺DHCP服務器向DHCP客戶機發來的DHCPoffer提供信息,則DHCP客戶機只接受第一個收到的DHCPoffer提供信息,然後它就以廣播方式回答一個DHCPrequest請求信息,該信息中包含向它所選定的DHCP服務器請求IP地址的內容。之所以要以廣播方式回答,是為了通知所有的DHCP服務器,他將選擇某臺DHCP服務器所提供的IP地址 <------DHCPACK ------------ udp 68 源IP是服務器的IP 目的IP: 255.255.255.255 即DHCP服務器確認所提供的IP地址的階段。當DHCP服務器收到DHCP客戶機回答的DHCPrequest請求信息之後,它便向DHCP客戶機發送一個包含它所提供的IP地址和其他設置的DHCPack確認信息,告訴DHCP客戶機可以使用它所提供的IP地址。然後DHCP客戶機便將其TCP/IP協議與網卡綁定,另外,除DHCP客戶機選中的服務器外,其他的DHCP服務器都將收回曾提供的IP地 註意:客戶端執行DHCP 廣播後,如果沒有DHCP服務器響應客戶端的請求,客戶端會隨機使用169.254.0.0/16 網段中的一個IP 地址配置本機地址。 169.254.0.0/16是windows的自動專有IP尋址範圍,也就是在無法通過DHCP獲取IP地址時,由系統自動分配的IP地址段。
早先的Linux上並不會產生這條路由,現在有這條路由是為了和windows兼容。
- [[email protected] ~]# route -n
- Kernel IP routing table
- Destination Gateway Genmask Flags Metric Ref Use Iface
- 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
- 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
- 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
- [[email protected] ~]# ls /var/lib/dhcpd/dhcpd.leases
- subnet 192.168.0.0 netmask 255.255.255.0 {
- range 192.168.0.100 192.168.0.200;
- option domain-name-servers 192.168.0.1;
- option domain-name "xuegod63.cn";
- option routers 192.168.0.1;
- option broadcast-address 192.168.0.255;
- default-lease-time 600;
- max-lease-time 7200;
- }
- [[email protected] ~]# ifconfig
- eth0 Link encap:Ethernet HWaddr00:0C:29:E0:19:A9
- inet addr:192.168.0.63 Bcast:192.168.0.255 Mask:255.255.255.0
- [[email protected] ~]# service dhcpd restart
- 正在啟動 dhcpd: [確定]
- 驗證:
- 登錄到xuegod64主機
- 開啟ip的自動獲取
- 重啟網絡通過dhcp服務端分配地址信息
- [[email protected] ~]# ifconfig
- eth0 Link encap:Ethernet HWaddr 00:0C:29:0F:90:4F
- inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0
- [[email protected] ~]# route -n
- Kernel IP routing table
- Destination Gateway Genmask Flags Metric Ref Use Iface
- 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
- 169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
- 0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
- [[email protected] ~]# cat/etc/resolv.conf
- ; generated by/sbin/dhclient-script
- search xuegod63.cn cn
- nameserver 192.168.0.1
- [[email protected] ~]# cat/var/lib/dhcpd/dhcpd.leases
- # The format of this file isdocumented in the dhcpd.leases(5) manual page.
- # This lease file was writtenby isc-dhcp-4.1.1-P1
- server-duid"\000\001\000\001\036\210\0034\000\014)\340\031\251";
- lease 192.168.0.100 {
- starts 5 2016/03/25 14:11:54;
- ends 5 2016/03/25 14:21:54;
- cltt 5 2016/03/25 14:11:54;
- binding state active;
- next binding state free;
- hardware ethernet 00:0c:29:0f:90:4f;
- }
- subnet 192.168.0.0 netmask255.255.255.0 {
- range 192.168.0.100 192.168.0.200;
- option domain-name-servers 192.168.0.1;
- option domain-name "xuegod63.cn";
- option routers 192.168.0.1;
- option broadcast-address 192.168.0.255;
- default-lease-time 600;
- max-lease-time 7200;
- host xuegod64 { #xuegod64可自定義,這一段內容要寫在subnet字段中和subnet配合使用
- hardware ethernet 00:0C:29:0F:90:4F;
- fixed-address 192.168.0.254;
- }
- }
- [[email protected] ~]# servicedhcpd restart
- 關閉 dhcpd: [確定]
- 正在啟動 dhcpd: [確定]
- xuegod64重啟network服務
- service network restart
- [[email protected]~]# vim/etc/sysconfig/ntpd #允許BIOS與系統時間同步
- # Drop root to id ‘ntp:ntp‘ bydefault.
- SYNC_HWCLOCK=yes
- OPTIONS="-u ntp:ntp -p/var/run/ntpd.pid -g"
- [[email protected] ~]# date -s "2017-5-1021:13"
2-3-配置DHCP服務器實現動態地址分配