DHCP服務
一、DHCP工作原理
1.1了解DHCP協議
DHCP(動態主機配置協議):由Internet工作任務小組設計開發,專門用於為TCP/IP網路中的電腦自動分配TCP/IP參數的協議。
1.2使用DHCP的好處
- 減少管理員的工作量
- 避免輸入錯誤的可能
- 避免IP地址衝突
- 當更改IP地址段時,不需要重新配置每個用戶的IP地址
- 提高了IP地址的利用率
- 方便客戶端的配置
1.3DHCP的分配方式
- 自動分配:分配到一個IP地址後永久使用(一般情況下不使用)
- 手動分配:由DHCP伺服器管理員專門指定IP地址
- 動態分配:使用完後釋放該IP,供其它客戶機使用
1.4DHCP的租約過程
- 客戶機從DHCP伺服器獲得IP地址的過程稱為DHCP的租約過程
- 分為四個步驟
補充:當有多個伺服器時,以客戶機先收到誰的offer報文為準。
1.首先客戶機加入到當前網路中是沒有地址的,它會發送一個dhcp,discover 廣播報文來尋找dhcp伺服器
2.伺服器接收到discover 報文會回復offer報文 【ip地址(合法地址地址中挑出),子網掩碼,dns地址,網關等資訊】
3.客戶機收到offer報文以後,會發送一個request的請求報文,告訴伺服器我收到了你的offer報文,並且我很滿意你的地址,我就使用它了,不要再分配給別人了
4.當伺服器收到request的報文以後,會發送一個ack報文,確認消息告訴客戶端你放心使用,不會再給別人分配你的ip地址
1.5DHCP共有八種報文
- DHCP DISCOVER:客戶端到伺服器
- DHCP OFFER:伺服器到客戶端
- DHCP REQUEST:客戶端到伺服器
- DHCP ACK:伺服器到客戶端
- DHCP NAK:伺服器到客戶端通知用戶無法分配合適的IP地址
- DHCP DECLINE:客戶端到伺服器,指示地址已被使用
- DHCP RELEASE:客戶端到伺服器,放棄網路地地口取消剩餘的租約時間
- DHCP INFORM:客戶端到伺服器,客戶端如果需要從DHCP伺服器端獲取更為單ffl的配置資訊,則發送Inform報文向伺服器進行請求,極少用到
1.6更新租約
- 當DHCP伺服器向客戶機出租的IP地址租期達到50%時,就需要更新租約
- 客戶機直接向提供租約的伺服器發送DHCP Request包,要求更新現有的地址租約
二、DHCP伺服器的配置
實驗1:
實驗環境:CentOS7.4虛擬機和Windows10虛擬機 實驗目的:最基本的DHCP動態獲取IP地址 第一步:安裝服務 [root@server ~]#yum -y install dhcp 第二步:修改網卡(將ens33和vm1調成同一網段) [root@server ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33 ipaddr=192.168.100.110 [root@server ~]#systemctl restart network #重啟網卡 第三步:將虛擬機網卡修改成僅主機模式 第四步:修改配置文件 [root@server ~]#rpm -qc dhcp #查看配置文件位置 [root@server ~]#cd /etc/dhcp/ [root@server ~]#cat dhcpd.conf [root@server ~]#cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example ./dhcpd.conf #複製模板文件 [root@server ~]#cp dhcpd.conf dhcpd.conf.bak #備份dhcpd.conf [root@server ~]#vim dhcpd.conf subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.100.100 192.168.100.200; option routers 192.168.100.1; option domain-name-servers 114.114.114.114; } [root@server ~]#systemctl start dhcpd #啟動服務 第五步:驗證實驗結果 開啟window虛擬機,將虛擬網卡改成僅主機模式 進入cmd:ipconfig #查看IP地址 ipconfig/all #查看詳細資訊 ipconfig/release #釋放IP地址 ifconfig/renew #重新生成IP地址
操作1:
第一步:安裝服務
第二步:修改網卡
第三步:修改CentOS虛擬機網卡模式,修改成僅主機模式
第四步:修改配置文件
第五步:測試驗證實驗結果
修改windows虛擬機網卡模式為僅主機模式
Win+R進入cmd中,輸入ipconfig查看地址或者ipconfig/all查看地址詳細資訊
實驗2:繼續上一個實驗環境開始的
實驗環境:CentOS7.4虛擬機和Windows10虛擬機 實驗目的:分配固定的IP地址 第一步:先獲取windows的固定地址物理地址(太網卡) cmd:ipconfig/all 第二步:修改配置文件 vim /etc/dhcp/dhcpd.conf host hostname{ #指定需要分配固定IP地址的客戶機名稱 hardware ethernet 00:c0:c3:22:46:81; #指定該主機的MAC地址 fixed-address 192.168.100.120; #指定保留給該主機的IP地址 systemctl restart dhcpd #重啟服務 第三步:測試 將window虛擬機修改網卡設置:僅主機 釋放ip地址:ipconfig /release ipconfig /renew ipv4自動獲取
操作2:
第一步:ifconfig/all查看windows中的物理地址,複製下來下面修改配置文件用到(物理地址:00:0C:29:B0:0B:FE)
第二步:修改配置文件
第三步:測試
將window虛擬機修改網卡設置:僅主機
因為上一個實驗殘留的DNS資訊我們需要釋放它,使用ipconfig /release釋放,使用ipconfig /renew,重新生成DNS。
最後使用命令ipconfig/all查看地址驗證結果:
三、DHCP中繼原理
- 當企業的內部網路規模較大時,通常被劃分為多個不同的子網,網路內配置了VLAN,VLAN能隔離廣播,而DHCP協議使用廣播
- DHCP伺服器再VLAN100中,就只有VLAN100內的客戶機能從在此獲取IP地址