Code: Select all
[root@luckfox init.d]$ vi S41staticip
Code: Select all
#!/bin/sh
MAX_TRIES=10
TRIES=0
check_ip_address() {
udhcpc -i wlan0
if ifconfig wlan0 | grep -q "inet "; then
return 0
else
return 1
fi
}
static_ip()
{
while [ $TRIES -lt $MAX_TRIES ]; do
if check_ip_address; then
echo "DHCP succeed!"
ifconfig wlan0 192.168.137.21 netmask 255.255.255.0
route add default gw 192.168.137.1
echo "nameserver 114.114.114.114" > /etc/resolv.conf
ifconfig wlan0 up
break
else
echo "wait DHCP IP..."
TRIES=$((TRIES + 1))
sleep 5
fi
done
if [ $TRIES -eq $MAX_TRIES ]; then
echo "error"
fi
}
case $1 in
start)
echo "start"
static_ip
;;
stop)
echo "stop"
;;
*)
exit 1
;;
esac
Code: Select all
[root@luckfox root]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq qlen 1000
link/ether 62:dc:58:a9:cf:1c brd ff:ff:ff:ff:ff:ff
3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq qlen 1000
link/ether 90:e4:68:a6:c4:73 brd ff:ff:ff:ff:ff:ff
inet 192.168.137.21/24 brd 192.168.137.255 scope global wlan0
valid_lft forever preferred_lft forever