一、什么叫DHCP?
DHCP,动态性服务器配置协议,前身为BOOTP协议,是一个局域网络网络的协议,应用UDP协议工作中,常见的2个端口号:67(DHCP server),68(DHCP client)。DHCP一般被用来局域网络自然环境,关键的作用是密集的管理方法、分派IP地址,使client动态变化得到IP地址、Gateway地址、DNS服务器地址等信息,并可以提升地址使用率。实质上,DHCP就是一个不用账号密码登录的、全自动给内部网设备分派IP地址等信息的协议。
二、DHCP协议里的报文
DHCP报文一共有一下几类:
- DHCP DISCOVER :客户端逐渐DHCP全过程上传的包,是DHCP协议的开端
- DHCP OFFER :服务器接受到DHCP DISCOVER以后所做出的回应,它涵盖了给与客户端的IP(yiaddr)、客户端的MAC地址、租期过期时间、服务器的识别符以及其它信息
- DHCP REQUEST :客户端针对服务器发出DHCP OFFER所作出的回应。在续签租赁期时一样会用。
- DHCP ACK :服务器在接受到客户端发来DHCP REQUEST以后发出取得成功确定的报文。在建立连接时,客户端在接受到这一报文以后才会确定分给它IP和其它信息能够允许其应用。
- DHCP NAK :DHCP ACK的反过来的报文,表明服务器回绝了客户端请求。
- DHCP RELEASE :一般出现在客户端待机、退出等情况。这一报文可能使DHCP服务器释放出来传出此报文的客户端的IP地址
- DHCP INFORM :客户端发出向服务器要求一些信息的报文
- DHCP DECLINE :当客户端发觉服务器分配IP地址不能使用(如IP地址矛盾时),将传出此报文,通告服务器严禁
- 使用这个IP地址。
DHCP 的 工作内容:
3、DHCP 协议包的构成
- Xid :自动生成的一段字符串数组,2个数据文件拥有相同的xid表明她们归属于同一次对话
- Ciaddr :客户端会到发送请求时把本机ip地址放到这里
- Yiaddr :服务器会把要想分给客户端的cp地址放到这里
- Siaddr :一般来说是服务器的cp地址.但是要注意!依据openwrt源代码给的注解,当报文的源地址、siaddr、option>server_id字段不一致(有通过跨子网掩码分享)时,一般觉得option>srever_id字段为真正意义上的服务器ip,siaddr可能是数次路由器跳转中的某一个路由器的cp (下面的图中wireshark抓包软件之中有标明siaddr为nextserver ip address)
- Chaddr :客户端的mac地址
- Giaddr :必要时跨子网掩码开展DHCP地址派发,即在这里填写走过的路由器的ip地址
- Sname :服务器主域名
- Options :可以随意使用的一部分,用以储放客户端向服务器要求信息和服务器的回复信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。