.hP 2.
Configure the interface addresses. If
.I laddr
-is set, it should be a space-separated list of IPv4 and IPv6 addresses:
-there may be any number of either.
-If
+is set, it should be a space-separated list of IPv4 and IPv6 addresses
+with optional prefix lengths; there may be any number of either. If
.I raddr
-is set, it should be an IPv4 and/or an IPv6 address, separated by space:
-these are the addresses to configure as the remote end point of the
-point-to-point link. (Further remote addresses can be configured as
-host routes: see below.) IPv4 addresses are expected to be in
-dotted-quad form; IPv6 addresses should be in RFC4291 hex-and-colons
-form.
+is set, it should be a list IPv4 and/or an IPv6 addresses, with optional
+prefix lengths, separated by space: these are the addresses to
+configure as the remote end point of the point-to-point link. (Further
+remote addresses can be configured as host routes: see below.) IPv4
+addresses are expected to be in dotted-quad form; IPv6 addresses should
+be in RFC4291 hex-and-colons form.
.hP 3.
Establish routes. If addresses were configured, and
.I nets
esac
###--------------------------------------------------------------------------
-### Configure the point-to-point link.
+### Configure the link.
## Split local addresses into v4 and v6 lists.
unset l4addr l6addr
;;
esac
for a in "$@"; do
- ip addr add "$a/32" dev "$ifname"
+ ip addr add "$a" dev "$ifname"
haveaddr4=t
done
case $have6,$# in
t,[1-9]*)
for a in "$@"; do
- ip addr add "$a/128" dev "$ifname"
+ ip addr add "$a" dev "$ifname"
haveaddr6=t
done
case ${r6addr+set} in
- set) ip route add $r6addr/128 proto static dev "$ifname" ;;
+ set) ip route add $r6addr proto static dev "$ifname" ;;
esac
;;
esac