配置DHCP,自动获取IP

 硬件环境:am1808

 内核:linux-2.6.33

 busybox版本:busybox-1.7.0

 

1.配置内核

 [*]Networking support -->
Networking support
Networking options -->
[*]Packet socket
[*]IP:kernel level autoconfiguration
[*] IP:DHCP support
[*]Network packet filtering framework(Netfilter) -->

打开上述功能,然后编译内核

2.配置busybox

Networking Utilities
[ ]udhcp server (udhcpd)     //关闭服务器的功能,这里是作为客户端使用
[ ] dhcprelay
[ ] Lease display utility (dumpleases)
[*]udhcp client (udhcpc)      //打开客户端获取

3.获取udhcpc命令

   配置完busybox,制作根目录,这时候并没有在/usr/sbin下生成udhcpc命令,需要我们自己手动添加进来

   从网上获取udhcp_0.9.8cvs20050303.orig.tar.gz文件,解压后修改Makefile文件

    注释掉COMBINED_BINARY=1,添加CROSS_COMPILE=arm-linux- ,然后make编译生成udhcpc命令,将udhcpc命令拷贝到/usr/sbin

4.建立配置文件

     将busybox安装目录下的examples/udhcp/下simple.script文件copy 到开发板/usr/share/udhcpc/下,并重命名为default.script,没有该路径要先行创建,拷贝完成后记得给default.script加上可执行权限,然后制作根文件系统进行测试

5.测试结果

  进入/usr/sbin目录,插上网线,执行./udhcpc,结果如下,自动更改ip为192.168.2.125

info, udhcpc (v0.9.9-pre) started
debug, Sending discover...
debug, Sending select for 192.168.2.125...
info, Lease of 192.168.2.125 obtained, lease time 172800
deleting routers
route: SIOCDELRT: No such process
adding dns 192.168.2.1
adding dns 192.168.2.1
 

如果想开机直接获取,修改启动文件/etc/init.d/rcS, 添加命令 /usr/sbin/udhcpc & ,然后就可以直接开机自动获取ip
 

 

你可能感兴趣的:(环境搭建)