基于嵌入式linux的DHCP服务器的搭建与移植(udhcp)
DHCP包括DHCP服务器和DHCP客户端两种模式,其中DHCP服务器用于设置IP分配规则、IP分配范围等管理功能;DHCP客户端提出分配请求,自动获得IP地址。本节介绍基于arm64的嵌入式linux移植udhcp搭建DHCP服务器的详细过程。本文采用udhcp源码压缩包进行aarch64交叉编译移植,并利用计算机作为客户端进行测试。在ft2004的嵌入式linux上实测可用。
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/。
2.拷贝udhcp源码压缩包到工作目录,并解压到当前目录,如下图所示:
3.进入udhcp-0.9.8目录,修改dhcpc.c的源码,并保存修改后的源码。如下图所示(注意:如不修改,编译将报错):
4.在udhcp源码目录下,新建编译脚本build.sh,编译脚本内容下所示:
5.给编译脚本build.sh添加可执行权限,并运行编译脚本,如下所示:
6.编译生成udhcpd和udhcpc的应用软件,其中udhcpd为服务器软件;udhcpc为客户端软件。本节仅介绍udhcpd的服务器的搭建。
7.查看udhcp目录下的samples/udhcpd.conf的dhcp服务器的配置文件,并进行如下的设置。如下所示:
8.拷贝udhcpd到嵌入式linux的/sbin目录(注意:udhcpd添加可执行权限);拷贝samples中的udhcpd.conf文件嵌入式linux的/etc目录。
9.在嵌入式linux的/var/lib/misc子目录下新建udhcpd.leases的空白文件,如下图所示:
10.在嵌入式linux下调用如下指令(注意:由于嵌入式板卡ip地址为192.168.0.10,eth0为默认网卡,因此配置文件仅需要修改路由信息router),运行udhcpd的服务器。
11、电脑连接到嵌入式linux板卡,采用自动获取ip地址(DHCP)模式,windows利用cmd命令进入dos界面,使用ipconfig命令查看当前网口的ip地址分配是否符合udhcpd.conf配置文件要求。
12.ping指令测试结果如下所示:
更多推荐
所有评论(0)