![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
udhcp
baidu20008
这个作者很懒,什么都没留下…
展开
-
udhcp源码详解(六)--script
首先得讲明udhcp客户端设置IP的机制。在udhcp中,客户端通过和主机的多次报文交互协商而获得可用的IP地址。在获得IP地址之后,客户端使用execle函数调用shell脚本完成客户端ip,netmak,dns,gateway等等参数的设定。而shell脚本的调用在script.h和script.c中实现。以下为script.c源码中的主要实现函数:/* Fill dest wit原创 2013-08-03 10:33:35 · 2698 阅读 · 0 评论 -
udhcp详解(八)——udhcpd.c的执行主线
udhcpd中调用各个模块完成dhcp服务器功能。udhcpd执行首先是读入了DHCPD_CONF_FILE的配置文件,完成全局变量server_config的初始化工作。之后将进程的pid加锁独占性地写入到文件中。再之后通过接口名,完成服务器接口索引MAC地址和IP地址的读取工作。在调用daemon之后,再次写入dhcpd的pid。调用daemon之后将服务器进程设置为了守护进程在后原创 2013-08-12 21:19:16 · 2518 阅读 · 0 评论 -
udhcp详解(七)——udhcp报文
udhcp中,由serverpacket.c完成了服务器报文的发送,而clientpacket则完成了客户端报文的发送。它们最终调用的都是packet.c中的接口完成报文向网络中的发送。struct dhcpMessage { u_int8_t op; u_int8_t htype; u_int8_t hlen; u_int8_t hops; u_int32_t xid;/*DHCP原创 2013-08-12 20:52:55 · 2293 阅读 · 0 评论 -
DHCP协议的有限状态机及相关问题
DHCP的有限状态机如下;该有限状态机包括了大部分的状态跳转。 INIT-REBOOT状态到REBOOTING的转变是当客户端机器重启之后,想要重新确认正在使用的IP的有效性的发送的。客户端广播DHCPREQUEST报文,若收到了服务器的DHCPACK响应,那么则直接进入BOUND状态,若收到的是DHCPNAK报文,那么则进入INIT状态。 在INIT状态,客户端广原创 2013-08-13 18:18:54 · 8922 阅读 · 1 评论 -
udhcp源码详解 续
楼主仔细阅读udhcp源码觉得略有所得。udhcp源码已由hui_love2046介绍了一部分,楼主狗尾续貂地介绍剩余部分的细枝末节。可能楼主下载到的源码是别人二次编辑过的,但大体上是没多大差别的。查看之前udhcp1-5详解,请参见以下链接:http://blog.csdn.net/hui_love2046/article/details/5919680原创 2013-08-02 21:11:00 · 1274 阅读 · 1 评论