基于嵌入式linux的DHCP服务器的搭建与移植(udhcp)

DHCP是Dynamic Host Configuration Protocol的缩写,即动态主机配置协议。DHCP是一个很重要的局域网的网络协议,使用UDP协议实现动态配置功能,主要有以下用途:

1、为内部网络或网络服务供应商自动分配IP地址;

2、为用户或者内部网络管理员作为对所有计算机作中央管理的手段;

3、为内部网络用户接受IP租约。

        DHCP包括DHCP服务器和DHCP客户端两种模式,其中DHCP服务器用于设置IP分配规则、IP分配范围等管理功能;DHCP客户端提出分配请求,自动获得IP地址。本节介绍基于arm64的嵌入式linux移植udhcp搭建DHCP服务器的详细过程。本文采用udhcp源码压缩包进行aarch64交叉编译移植,并利用计算机作为客户端进行测试。

1.首先下载udhcp的压缩包udhcp-0.9.8.tar.gz,本文从厦门大学ftp路径下载。Index of /gentoo/distfiles/93/

图1 下载udhcp源码压缩包

2.拷贝udhcp源码压缩包到工作目录,并解压到当前目录,如下图所示:

图2 拷贝、解压udhcp压缩包

3.进入udhcp-0.9.8目录,修改dhcpc.c的源码,并保存修改后的源码。如下图所示(注意:如不修改,编译将报错):

图3 修改dhcpc.c的源码文件

4.在udhcp源码目录下,新建编译脚本build.sh,编译脚本内容下所示:

图4 新建编译脚本build.sh

 5.给编译脚本build.sh添加可执行权限,并运行编译脚本,如下所示:

图5 运行编译脚本

6.编译生成udhcpd和udhcpc的应用软件,其中udhcpd为服务器软件;udhcpc为客户端软件。本节仅介绍udhcpd的服务器的搭建。

图6 编译完成

7.查看udhcp目录下的samples/udhcpd.conf的dhcp服务器的配置文件,并进行如下的设置。如下所示:

图7 udhcpd.conf配置文件与修改

8.拷贝udhcpd到嵌入式linux的/sbin目录(注意:udhcpd添加可执行权限);拷贝samples中的udhcpd.conf文件嵌入式linux的/etc目录。

图8 udhcp拷贝到/sbin目录

图9 udhcpd.conf拷贝到/etc目录

9.在嵌入式linux的/var/lib/misc子目录下新建udhcpd.leases的空白文件,如下图所示:

图10 新建udhcpd.leases的空白文件

10.在嵌入式linux下调用如下指令(注意:由于嵌入式板卡ip地址为192.168.0.10eth0为默认网卡,因此配置文件仅需要修改路由信息router),运行udhcpd的服务器。

图11 运行udhcpd的服务器

11、电脑连接到嵌入式linux板卡,采用自动获取ip地址(DHCP)模式,windows利用cmd命令进入dos界面,使用ipconfig命令查看当前网口的ip地址分配是否符合udhcpd.conf配置文件要求。

图12  服务器打印显示为客户端分配的ip地址
图13 dhcp客户端分配ip地址成功

 12.ping指令测试结果如下所示:

图14 ping指令测试结果

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少林and叔叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值