- # if the preinit interface isn't specified and ifname is set in
- # preinit.arch use that interface
- if [ -z "$pi_ifname" ]; then
- pi_ifname=$ifname
- fi
-
- [ -n "$pi_ifname" ] && grep "$pi_ifname" /proc/net/dev >/dev/null && {
- ifconfig $pi_ifname $pi_ip netmask $pi_netmask broadcast $pi_broadcast up
- }
+ # if the preinit interface isn't specified and ifname is set in
+ # preinit.arch use that interface
+ if [ -z "$pi_ifname" ]; then
+ pi_ifname=$ifname
+ fi
+
+ [ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
+ ip link set dev $pi_ifname up
+ ip -4 address add $pi_ip/$pi_netmask broadcast $pi_broadcast dev $pi_ifname
+ }