X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;f=lib%2Ffunctions.network;h=ad930e3b9914d6cfb1e2d2ca8939c7929504fb19;hb=HEAD;hp=d151b04ecc567879b896fea3eaae1cb4dd6fd9e0;hpb=49ade4f4b5b1978db4561d62063008a339a1526f;p=rc-scripts.git diff --git a/lib/functions.network b/lib/functions.network index d151b04..ad930e3 100644 --- a/lib/functions.network +++ b/lib/functions.network @@ -226,7 +226,7 @@ setup_ip_param () # set handling for bridge case "$DEVICETYPE" in - br|atm|lec|irda|vlan) + bond|br|atm|lec|irda|vlan) HANDLING=1 ;; esac @@ -345,7 +345,8 @@ setup_routes() # Add ONLY IPv4 address (IPv6 address is added automaticly) set_up_loopback() { - if is_yes "$IPV4_NETWORKING"; then + # test if addr is assigned already as lxd(lxc?) initializes loopback upfront + if is_yes "$IPV4_NETWORKING" && ! ip addr show lo | grep -q "127\.0\.0\.1"; then ip addr add 127.0.0.1/8 dev lo fi ip link set dev lo up @@ -484,7 +485,7 @@ setup_ip_rules () /sbin/ip rule add $args $prio done elif is_no "$1"; then - LC_ALL=C /sbin/ip rule show | grep -vE -e "from all lookup (main|default|local|253|254|255) \$" -e " map-to " | while read prio from src args; do + LC_ALL=C /sbin/ip rule show | grep -vE -e "from all lookup (main|default|local|253|254|255)[[:space:]]*\$" -e " map-to " | while read prio from src args; do [ "$src" = "all" ] && /sbin/ip rule delete $args || /sbin/ip rule delete $from $src $args done fi @@ -503,7 +504,7 @@ setup_ip_rules () /sbin/ip -6 rule add $args $prio done elif is_no "$1"; then - LC_ALL=C /sbin/ip -6 rule show | grep -vE -e "from all lookup (main|default|local|253|254|255) \$" -e " map-to " | while read prio from src args; do + LC_ALL=C /sbin/ip -6 rule show | grep -vE -e "from all lookup (main|default|local|253|254|255)[[:space:]]*\$" -e " map-to " | while read prio from src args; do [ "$src" = "all" ] && /sbin/ip -6 rule delete $args || /sbin/ip -6 rule delete $from $src $args done fi