udhcp源码详解

udhcp源码详解

ID:37572344

大小:1.62 MB

页数:34页

时间:2019-05-25

udhcp源码详解_第1页
udhcp源码详解_第2页
udhcp源码详解_第3页
udhcp源码详解_第4页
udhcp源码详解_第5页
资源描述:

《udhcp源码详解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、udhcp源码详解(一)之文件组织结构(dhcpserver)--转udhcp目录下有十几个源文件,一个源文件相对应一个模块,完成一系列相关的功能,例如在static_leases.c主要针对static_lease链表增删查找等操作。        dhcpd.c——   整个dhcpserver运行的主线,server开始运行是从udhcpd_main函数开

2、      始,相当于我们程序的main入口。在dhcpd_main将各个功能模块组合起

3、      来实现我们的dhcpserver。    

4、                 

5、              arpping.c——这个文件里只有一个函数arpping,server在给客户机分配IP地址                     

6、             从IP地址池里找到aFreeIP后,会调用arpping函数看网络上是否                     

7、             主机使用该地址。                     

8、              common.c — 引用文件的注释:Functio

9、nsfordebuggingandloggingaswellassome

10、             othersimplehelper functions.

11、              file.c  ——    文件名可以看出她是跟文件打交道的。file.c里有个很重要的函数

12、             read_config,读取默认配置信息和从配置文件udhcpd.conf文件里读

13、             取配置信息,从网上Down个udhcpd.conf,她和Linux下其他配置文

14、       

15、      件格式一样,以后写这类函数时候可以模仿着写。

16、              leases.c——   针对在dhcpd.h文件里声明的structdhcpOfferedAddr结构的操作函

17、             数。

18、              option.c——   在dhcp交互的数据报文中有个选项字段options,该文件里的函数操作

19、             对象也就是选项信息。

20、serverpacket.c       数据报文发送之前,根据不同情况对各个字段的填充相应的信息。

21、

22、      

23、

24、      

25、                     

26、      packet.c——  dhcp报文的发送信息封装与向网络发送。                     

27、              pidfile.c——   Functionstoassistinthewritingandremovingofpidfiles.                     

28、             主要针对 /var/run/udhcpd.pid                    

29、 

30、              signalpipe.c— server会监听两个文件描述符,其中一个是”管道”描述符,该描述符

31、             的相应操作就在signalpipe.c文件里,另外还有对signal的设置……

32、              socket.c——  socket套接字创建,interface信息读取。                     

33、              static_leases.c 对在dhcpd.h里定义的structstatic_lease结构

34、体的相应操作函数。 相对应得头文件是对函数声明,以及结构体的定义和宏的定义。udhcp详解源码(序)最近负责接入模块,包括dhcp、ipoe和pppoe等等。所以需要对dhcp和ppp这几个app的源代码进行一些分析。网上有比较好的文章,参考并补充自己的分析。  这篇udhcp详解是基于busybox-1.20里的 …/busybox-1.20/networking/udhcp/目录下的源码进行讲解与分析,主要是对udhcpserver端源码进行的讲解,client端相对于server端相对简单一些,源代

35、码上面表现的实现思想大体相似。该系列的讲解分析是在源代码的基础上,所以并没有打算以单独章节来讲解DHCP协议工作交互流程,也就是已经了解掌握了DHCP协议,用C来实现而已。udhcp源码详解(二)--转定义的数据结构对于C程序的重要性,不言而喻。面向对象设计的程序是一个个对象的集合,而面向过程语言设计的程序则是数据结构与算法的集合。下面来分析的是dhcpserver中的定义结构体:1)、在packet.h文件里定义了DHCP报

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。