ARM开机自动获取ip及网络启动总结

2019-07-12 20:46发布

0开机后的IP默认是192.168这样的路由形式的,每次开机都需要自己设置ip非常麻烦,于是想改成开机DHCP自动获取IP,这样来的最为简单,自动获取IP的命令其实很简单,只需要加入开机初始化设置中即可。自动获取ip: udhcpc -i eth0 板子开启后的启动初始化文件位于etcinit.d文件夹中的rcS中,此文件最后一部分内容如下:
/sbin/ifconfig lo 127.0.0.1 /etc/init.d/ifconfig-eth0 #start ftp server user:root password: /sbin/vsftpd & #start telnetd server usr:root password: /sbin/telnetd #start boa web service /sbin/boa echo " " > /dev/tty1 echo "Starting Qtopia2, please waiting..." > /dev/tty1 echo " " echo "Starting Qtopia2, please waiting..." /bin/qtopia &
从这里可以看到,通过ifconfig-eth0文件启动网络服务,之后先后开启ftp等网络服务,最后启动qtopia。可以注意倒数几行的不同,/dev/tty1是在液晶屏上也显示这些信息。 再看ifconfig-eth0文件。 #!/bin/sh echo -n Try to bring eth0 interface up......>/dev/ttySAC0 if [ -f /etc/eth0-setting ] ; then source /etc/eth0-setting #if grep -q "^/dev/root / nfs " /etc/mtab ; then if grep -q "root=/dev/nfs" /proc/cmdline;then echo -n NFS root ... > /dev/ttySAC0 else ifconfig eth0 down ifconfig eth0 hw ether $MAC ifconfig eth0 $IP netmask $Mask up route add default gw $Gateway fi echo nameserver $DNS > /etc/resolv.conf else if grep -q "^/dev/root / nfs " /etc/mtab ; then echo -n NFS root ... > /dev/ttySAC0 else /sbin/ifconfig eth0 192.168.253.12 netmask 255.255.255.0 up fi fi echo Done > /dev/ttySAC0
从这个文件里能够看出网络的配置过程,这里先读取/etc/eth0-setting 配置文件,根据文件是否存在进行相应的操作,如果文件存在读取文件内容,通过查找关键字判断是否是nfs启动等情况,进而利用配置文件进行配置,/etc/eth0-setting 文件内容如下:
IP=192.168.0.232 Mask=255.255.255.0 Gateway=192.168.0.201 DNS=8.8.8.8 MAC=08:90:90:90:90:90通过这几个文件就能理清楚在启动中的网络初始化关系了,因此,更改为开机自动获取ip就很简单了,这里在etcinit.d新建一个文件autoconfig-eth0内容如下,我这里还加入了nfs自动挂载:
#!/bin/sh echo -n***** Try to autoconfig eth0 watting.....*****>/dev/ttySAC0 ifconfig eth0 down ifconfig eth0 hw ether 08:90:90:90:90:90 ifconfig eth0 up udhcpc -i eth0 echo eth0 autoconfig Done >/dev/ttySAC0 echo -n auto mount nfs 10.4.62.86:/armnfs to /mnt >/dev/ttySAC0 mount -t nfs -o nolock 10.4.62.86:/armnfs /mnt chmod 777 更改文件权限,之后只需要把rcS中的网络配置文件改为这个文件即可。 启动结果如图所示

[root@FriendlyARM /]# udhcpc udhcpc (v1.17.2) started Sending discover... Sending select for 192.168.1.124... Lease of 192.168.1.124 obtained, lease time 7200 deleting routers route: SIOCDELRT: No such process adding dns 202.96.75.68 adding dns 210.21.4.130