]> TLD Linux GIT Repositories - rc-scripts.git/blobdiff - lib/functions.network
- version 0.5.4
[rc-scripts.git] / lib / functions.network
index d151b04ecc567879b896fea3eaae1cb4dd6fd9e0..ad930e3b9914d6cfb1e2d2ca8939c7929504fb19 100644 (file)
@@ -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