done
fi
fi
+ is_no "$IPV6_NETWORKING" && return
+ if [ -f /etc/sysconfig/static-routes6 ]; then
+ if [ "$1" = "on" -o "$1" = "yes" ]; then
+ grep -E "^(none|any)[[:blank:]]" /etc/sysconfig/static-routes6 | while read device args; do
+ /sbin/ip -6 route add $args
+ done
+ else
+ grep -E "^(none|any)[[:blank:]]" /etc/sysconfig/static-routes6 | while read device args; do
+ /sbin/ip -6 route del $args 2>/dev/null
+ done
+ fi
+ fi
}
# Add ONLY IPv4 address (IPv6 address is added automaticly)
ip addr add 127.0.0.1/8 dev lo
fi
ip link set dev lo up
+ grep -E "^(lo|any)[[:blank:]]" /etc/sysconfig/static-routes | while read device args; do
+ if [[ "$args" = *:* ]]; then
+ is_no "$IPV6_NETWORKING" && continue
+ else
+ is_no "$IPV4_NETWORKING" && continue
+ fi
+ /sbin/ip route add $args dev lo
+ done
+ is_no "$IPV6_NETWORKING" && return
+ grep -E "^(lo|any)[[:blank:]]" /etc/sysconfig/static-routes6 | while read device args; do
+ /sbin/ip -6 route add $args dev lo
+ done
}
set_down_loopback()
modprobe_net()
{
- if is_yes "$IPV6_NETWORKING" && \
- [ "$(awk '$1 ~ /^TCPv6/ { print $8 }' /proc/net/protocols 2> /dev/null)" != "kernel" ] && \
- is_module "ipv6"; then
+ if is_yes "$IPV6_NETWORKING"; then
+ if is_module "ipv6"; then
_modprobe single ipv6
+ fi
+ elif [ -d /proc/sys/net/ipv6 ]; then
+ sysctl -w net.ipv6.conf.all.disable_ipv6=1
fi
- if is_yes "$IPX" && \
- [ "$(awk '$1 ~ /^IPX/ { print $8 }' /proc/net/protocols 2> /dev/null)" != "kernel" ] && \
- is_module "ipx"; then
- _modprobe single ipx
+ if is_yes "$IPX" && is_module "ipx"; then
+ _modprobe single ipx
fi
}
done
elif is_no "$1"; then
LC_ALL=C /sbin/ip rule show | grep -vE -e "from all lookup (main|default|local) \$" -e " map-to " | while read prio from src args; do
- [ "$src" = "all" ] && ip rule delete $args || ip rule delete $from $src $args
+ [ "$src" = "all" ] && /sbin/ip rule delete $args || /sbin/ip rule delete $from $src $args
+ done
+ fi
+ fi
+ is_no "$IPV6_NETWORKING" && return
+ if [ -f /etc/sysconfig/static-routes6 ]; then
+ if is_yes "$1"; then
+ grep -E "^(from|to|iif|tos|fwmark|dev|pref|priority|prio)[[:blank:]]" /etc/sysconfig/static-routes6 | while read args; do
+ /sbin/ip -6 rule add $args
+ done
+ elif is_no "$1"; then
+ LC_ALL=C /sbin/ip -6 rule show | grep -vE -e "from all lookup (main|default|local) \$" -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
fi