DHCP概述
DHCP产生的原因
大型网络中静态配置IP地址容易出现地址冲突
定义
DHCP:动态主机配置协议
,用于主机自动获得IP地址、子网掩码、网关地址、DNS服务器地址,租用期等相关信息。采用C/S
模式。DHCP给运行服务器软件、且位置固定的计算机指派一个永久地址,给运行客户端软件的计算机分配一个临时地址。
DHCP的设计思考
问题1:
- DHCP协议如何找到服务器?
答:通过广播,广播的目标地址是255.255.255.255(对自己所在的本局域网发广播)
【在不知道目标在哪的时候可以采用广播的方式进行通信】
问题2:
- 多个客户端同时请求IP,服务器该如何分辨?
答:通过MAC地址
问题3:
- 服务器是否能够给某个客户分配固定的IP地址?
答:可以并且有些情况下是有必要的
【如何实现:通过MAC地址,固定MAC地址给固定的IP地址】
问题4:
- DHCP服务器如何保证分配的IP地址是唯一的?
答:在服务器分配某一个IP地址的时候,发广播去问局域网上所有的主机有没有人的IP地址是将要分配的这个IP地址,如果没有收到回复,那么可以分配。
问题5:
- DHCP协议如果要实现某个客户端的IP动态变化,该如何处理?
答:使用租用期
问题6
- DHCP协议的报文应当包含几种?
答:DHCPDISCOVER、DHCPOFFER、DHCPREQUEST、DHCPACK、DHCPREQUEST
DHCP基于UDP工作,DHCP服务器运行在67号端口,DHCP客户运行在68号端口。
【为什么使用UDP而不是TCP?】因为DHCP要使用广播,1对多的传输模式只能用UDP
- 若DHCP服务器不响应步骤6的请求报文DHCPREQUEST,则在租用期过了87.5%时,DHCP客户必须重新发送请求报文DHCPREQUEST(重复步骤6),然后又继续后面的步骤。
- DHCP客户可随时提前终止服务器所提供的租用期,这时只需向DHCP服务器发送释放报文DHCPRELEASE即可。
DHCP中继代理
- 并不是每个网络上都有DHCP服务器,这样会使DHCP服务器的数量太多。现在是每一个网络至少有一个DHCP中继代理,它配置了DHCP服务器的IP地址信息。
- 当DHCP中继代理收到主机发送的发现报文后,就以单播方式向DHCP服务器转发此报文,并等待其回答。收到DHCP服务器回答的提供报文后,DHCP中继代理再将此提供报文发回给主机。
- 一个网络如果没有DHCP服务器,至少需要一个DHCP中继代理,它配置了DHCP服务器的IP地址信息。
ipconfig命令:
- ipconfig/release:释放IP地址
- ipconfig/renew:重新使用DHCP获取IP地址
禁止主机通过DHCP获取IP:
- 禁用系统服务中的DHCP client服务