實現DHCP服務
主機獲取網絡配置可以通過兩種方式:
- 靜態指定
- 動態獲取:
- bootp:boot protocol MAC與IP一一靜態對應
- dhcp:增強的bootp,動態
DHCP工作原理
DHCP: Dynamic Host Configuration Protocol,動態主機配置協議,UDP協議,C/S模式,dhcp server:67/udp,dhcpv4c client :68/udp,dhcpv6 client:546/udp
主要用途:
- 用于內部網絡和網絡服務供應商自動分配IP地址給用戶
- 用于內部網絡管理員作為對所有電腦作集中管理的手段
- 自動化安裝系統
- 解決IPV4資源不足問題
DHCP共有八種報文
- DHCP DISCOVER:客戶端到服務器
- DHCP OFFER :服務器到客戶端
- DHCP REQUEST:客戶端到服務器
- DHCP ACK :服務器到客戶端
- DHCP NAK:服務器到客戶端,通知用戶無法分配合適的IP地址
- DHCP DECLINE :客戶端到服務器,指示地址已被使用
- DHCP RELEASE:客戶端到服務器,放棄網絡地址和取消剩余的租約時間
- DHCP INFORM:客戶端到服務器, 客戶端如果需要從DHCP服務器端獲取更為詳細的配置信息,則發送Inform報文向服務器進行請求,極少用到
DHCP服務續租
- 50% :租賃時間達到50%時來續租,剛向DHCP服務器發向新的DHCPREQUEST請求。如果dhcp服務沒有拒絕的理由,則回應DHCPACK信息。當DHCP客戶端收到該應答信息后,就重新開始新的租用周期
- 87.5%:如果之前DHCP Server沒有回應續租請求,等到租約期的7/8時,主機會再發送一次廣播請求
- 同網段多DHCP服務
- DHCP服務必須基于本地
- 先到先得的原則
跨網段
- RFC 1542 Compliant Routers
- dhcp relay agent: 中繼代理
- 相關協議
- arp
- rarp
租期:
長租期:IP相對穩定,網絡資源消耗較少,但是浪費IP資源
短租期:IP相對不穩定,網絡資源消耗較多,但是IP資源可以充分利用,可以實現較少IP為較多的主機服務
?DHCP實現
DHCP服務的實現軟件:
- dhcp(CentOS 7 之前版本) 或 dhcp-server(CentOS 8 中的包名)
- dnsmasq:小型服務軟件,可以提供dhcp和dns功能
?DHCP相關文件組成
dhcp-server 包文件組成
/usr/sbin/dhcpd dhcp服務主程序
/etc/dhcp/dhcpd.conf dhcp服務配置文件
/usr/share/doc/dhcp-server/dhcpd.conf.example #dhcp服務配置范例文件
/usr/lib/systemd/system/dhcpd.service #dhcp服務service文件
/var/lib/dhcpd/dhcpd.leases 地址分配記錄
dhcp-client客戶端包
/usr/sbin/dhclient #客戶端程序
/var/lib/dhclient #自動獲取的IP信息
windows 工具
ipconfig /release #釋放DHCP獲取的IP,重新申請IP
ipconfig/renew #刷新租約,續約
?DHCP服務器配置文件
幫助參考:man 5 dhcpd.conf
/etc/dhcp/dhcpd.conf 格式 全局配置 subnet { … }
host {
}
檢查語法命令:service dhcpd configtest (CentOS 6 之前版本支持)
范例:dhcpd.conf
[root@centos8 ~]#grep -v "#" /etc/dhcp/dhcpd.conf option domain-name "magedu.org"; option domain-name-servers 180.76.76.76, 223.6.6.6; default-lease-time 600; max-lease-time 7200; log-facility local7; subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.10 10.0.0.100; range 10.0.0.110 10.0.0.200; option routers 10.0.0.2; } host testclient { hardware ethernet 00:0c:29:33:b4:1a; fixed-address 10.0.0.106; default-lease-time 86400; max-lease-time 864000; option routers 10.0.0.254; option domain-name-servers 114.114.114.114,8.8.8.8 ; option domain-name "magedu.net"; }
DHCP配置文件其它配置選項:
- next-server:提供引導文件的服務器IP地址
- filename: 指明引導文件名稱
范例:
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.10 192.168.100.100;
range 192.168.100.150 192.168.100.200;
option routers 192.168.100.1;
next-server 192.168.1.100; #TFTP服務器地址
filename "pxelinux.0"; #bootloader啟動文件的名稱
}
本文鏈接:http://www.thecarconnectin.com/34069.html
網友評論comments