日期:2014-05-16 浏览次数:20814 次
?
嵌入式linux中使用?DHCP功能描述
?
busybox中udhcpc的默认script脚本地址为
#define DEFAULT_SCRIPT???CONFIG_UDHCPC_DEFAULT_SCRIPT
#define CONFIG_UDHCPC_DEFAULT_SCRIPT "/usr/share/udhcpc/default.script"
我想之所以以它作为默认地址,肯定有他的道理,所以在这个地址上创建它[luther.gliethttp]
luther@gliethttp:/vobs/initramfs$?mkdir usr/share/udhcpc/ -p
luther@gliethttp:/vobs/initramfs$?cp ~/busybox-1.14.3/examples/udhcp/simple.script usr/share/udhcpc/default.script
luther@gliethttp:/vobs/initramfs$?chmod +x usr/share/udhcpc/default.script
在/etc/inittab中加入下面一行语句:
::once:"/sbin/udhcpc >/dev/null 2>&1" # udhcpc会退出,所以不能使用respawn,必须为once,1次,否则将一直出现udhcpc重启log信息
就这样简单的几行ip和dns就能自动获取了[luther.gliethttp]
其实有些东西就可以放在rcS等启动脚本中,有些可以到init脚本中去完成.
# /sbin/udhcpc
?
?
由于要使用网络通讯,所以不可避免的要用到dhcp。理想的网络通讯方式是下面3种都要支持:
1,接入已有网络。这便要求可以作为dhcp客户端。
2,作为DHCP服务器,动态分配IP。
3,指定固定IP
第3种情况没有什么好说的,简单说下前2种情况。
使用步骤:
(1)在内核的网络项里面把DHCP配置上;
(2)在busybox里面把[*]udhcp server(udhcpd)
[*]udhcp client(udhcpc)都选上。
udhcpd就是终端设备作为DHCP服务器