天天看点

DHCP overview

DHCP协议前身为bootp,相比前身引入了 租约 lease 的功能,c-s的服务架构体现在:

server端:UDP/67 bootps

client端:UDP/68 bootpc

DHCP协议使用  四种消息 为客户端提供IP地址。

  1. DHCP discovery
  2. DHCP offer
  3. DHCP request
  4. DHCP ack

在client端首次申请IP地址时,四种消息 全是广播包,目的IP地址:255.255.255.255,目的MAC地址为FF:FF:FF:FF:FF:FF;

当租期到期,client端提交续租申请request消息、server端回应允许续租ack消息为单播包。

以下实验为验证上述红色字体的结论。

拓扑图:R1-f0/0 --- f0/0-R2

R2配置为DHCP server,配置如下:

ip dhcp pool host
   host 172.16.0.2 255.255.0.0
   client-identifier 0063.6973.636f.2d63.3030.302e.3130.6338.2e30.3030.302d.4661.302f.30
   lease 0 0 1
interface FastEthernet0/0
    ip address 172.16.0.1 255.255.0.0      

租约有效期为1分钟,一分钟后client需要重新发起续约请求。

R1作为client端向  R2 server发起IP地址请求,wireshark截图:

65	153.961800000	0.0.0.0	        255.255.255.255	DHCP	618	DHCP Discover - Transaction ID 0x233b
66	153.993000000	172.16.0.1	255.255.255.255	DHCP	342	DHCP Offer    - Transaction ID 0x233b
67	154.024200000	0.0.0.0	        255.255.255.255	DHCP	618	DHCP Request  - Transaction ID 0x233b
68	154.055400000	172.16.0.1	255.255.255.255	DHCP	342	DHCP ACK      - Transaction ID 0x233b
87	209.604600000	172.16.0.2	255.255.255.255	DHCP	618	DHCP Request  - Transaction ID 0x233b
88	209.667000000	172.16.0.1	172.16.0.2	DHCP	342	DHCP ACK      - Transaction ID 0x233b
97	240.284400000	172.16.0.2	172.16.0.1	DHCP	618	DHCP Request  - Transaction ID 0x233b
98	240.351200000	172.16.0.1	172.16.0.2	DHCP	342	DHCP ACK      - Transaction ID 0x233b      

由截图可得到以下结论:

1、client端最初请求时,四种消息全是广播,即目的IP地址255.255.255.255,目的mac为FF:FF:FF:FF:FF:FF,

2、当1分钟续约到期后,client端重新发起续约请求,request消息仍为广播

3、当续约再到期,client端又发起续约的消息才为单播,目的IP地址为DHCP的IP地址,目的mac为DHCP服务器R2-fa0/0端口的mac

参考文档:http://www.cisco.com/c/en/us/td/docs/ios/12_2/ip/configuration/guide/fipr_c/1cfdhcp.html

DHCP overview