aboutsummaryrefslogtreecommitdiffstats
path: root/sysconfig/network-scripts/ifup-ipv6
diff options
context:
space:
mode:
authorColin Guthrie <colin@mageia.org>2011-11-03 22:26:54 +0000
committerColin Guthrie <colin@mageia.org>2011-11-03 22:26:54 +0000
commit1e6179bf54cbc84b4ad33480e7f2f713418bb28a (patch)
tree794b2654be506d551421bcc47d3ad97822e2861c /sysconfig/network-scripts/ifup-ipv6
parent87589b49d1543595188dcb26aa5a09d33e5e0a4e (diff)
parent6ce3e4700baa4e37e6b16e4160c00b2ebea58d81 (diff)
downloadinitscripts-1e6179bf54cbc84b4ad33480e7f2f713418bb28a.tar
initscripts-1e6179bf54cbc84b4ad33480e7f2f713418bb28a.tar.gz
initscripts-1e6179bf54cbc84b4ad33480e7f2f713418bb28a.tar.bz2
initscripts-1e6179bf54cbc84b4ad33480e7f2f713418bb28a.tar.xz
initscripts-1e6179bf54cbc84b4ad33480e7f2f713418bb28a.zip
Merge commit 'initscripts-9.34-1' into mga-34
This brings our fully patched initscripts branch up to version 9.34. Some code was not easily merged and thus not all functionality relating to multiple IP addresses per interface were merged in. Conflicts: Makefile lang.csh lang.sh prefdm rc.d/init.d/functions rc.d/init.d/netfs rc.d/init.d/network rc.d/rc rc.d/rc.local rc.d/rc.sysinit service sysconfig.txt sysconfig/network-scripts/ifdown-eth sysconfig/network-scripts/ifup-eth sysconfig/network-scripts/ifup-ipv6 sysconfig/network-scripts/ifup-sit sysconfig/network-scripts/ifup-tunnel sysconfig/network-scripts/network-functions systemd/system/fedora-sysinit-unhack.service
Diffstat (limited to 'sysconfig/network-scripts/ifup-ipv6')
-rw-r--r--sysconfig/network-scripts/ifup-ipv646
1 files changed, 19 insertions, 27 deletions
diff --git a/sysconfig/network-scripts/ifup-ipv6 b/sysconfig/network-scripts/ifup-ipv6
index 4facc403..509e49f3 100644
--- a/sysconfig/network-scripts/ifup-ipv6
+++ b/sysconfig/network-scripts/ifup-ipv6
@@ -62,9 +62,8 @@ CONFIG=$1
[ -f "$CONFIG" ] || CONFIG=ifcfg-$CONFIG
source_config
-# IPv6 don't need aliases anymore, config is skipped
-REALDEVICE=$(echo ${DEVICE} | sed 's/:.*//g')
-[ "$DEVICE" != "$REALDEVICE" ] && exit 0
+REALDEVICE=${DEVICE%%:*}
+DEVICE=$REALDEVICE
# Test whether IPv6 configuration is enabled for this interface, else stop
[ "$IPV6INIT" = "yes" ] || exit 0
@@ -98,8 +97,8 @@ if [ "$IPV6FORWARDING" = "yes" ]; then
# Check, if global IPv6 forwarding was already set by global script
if [ $ipv6_global_forwarding_current -ne 1 ]; then
- echo $"Global IPv6 forwarding is enabled in configuration, but not currently enabled in kernel"
- echo $"Please restart network with '/sbin/service network restart'"
+ net_log $"Global IPv6 forwarding is enabled in configuration, but not currently enabled in kernel"
+ net_log $"Please restart network with '/sbin/service network restart'"
fi
ipv6_local_forwarding=1
@@ -115,8 +114,8 @@ else
# Check, if global IPv6 forwarding was already set by global script
if [ $ipv6_global_forwarding_current -ne 0 ]; then
- echo $"Global IPv6 forwarding is disabled in configuration, but not currently disabled in kernel"
- echo $"Please restart network with '/sbin/service network restart'"
+ net_log $"Global IPv6 forwarding is disabled in configuration, but not currently disabled in kernel"
+ net_log $"Please restart network with '/sbin/service network restart'"
fi
ipv6_local_forwarding=0
@@ -145,7 +144,7 @@ fi
if [ "$IPV6_PRIVACY" = "rfc3041" ]; then
/sbin/sysctl -e -w net.ipv6.conf.$SYSCTLDEVICE.use_tempaddr=2 >/dev/null 2>&1
if [ $? -ne 0 ]; then
- echo $"Cannot enable IPv6 privacy method '$IPV6_PRIVACY', not supported by kernel"
+ net_log $"Cannot enable IPv6 privacy method '$IPV6_PRIVACY', not supported by kernel"
fi
fi
@@ -161,13 +160,6 @@ if [ -f /etc/sysconfig/static-routes-ipv6 ]; then
done
fi
-# Setup additional static IPv6 routes (newer config style)
-if [ -f "/etc/sysconfig/network-scripts/route6-$DEVICE" ]; then
- cat "/etc/sysconfig/network-scripts/route6-$DEVICE" | sed 's/#.*//g' | grep -v '^[[:space:]]*$' | while read line; do
- /sbin/ip -6 route add $line
- done
-fi
-
# Setup of 6to4, if configured
if [ "$IPV6TO4INIT" = "yes" ]; then
valid6to4config="yes"
@@ -176,7 +168,7 @@ if [ "$IPV6TO4INIT" = "yes" ]; then
ipv6_test_device_status tun6to4
if [ $? = 0 ]; then
# device is already up
- echo $"Device 'tun6to4' (from '$DEVICE') is already up, shutdown first"
+ net_log $"Device 'tun6to4' (from '$DEVICE') is already up, shutdown first"
mdv-network-event connection_failure ${DEVICE}
exit 1
fi
@@ -204,7 +196,7 @@ if [ "$IPV6TO4INIT" = "yes" ]; then
if [ -n "$ipv4addr" ]; then
if ! ipv6_test_ipv4_addr_global_usable $ipv4addr; then
- echo $"Given IPv4 address '$ipv4addr' is not globally usable"
+ net_log $"Given IPv4 address '$ipv4addr' is not globally usable" info
valid6to4config="no"
fi
if [ -z "$IPV6TO4_RELAY" ]; then
@@ -217,14 +209,14 @@ if [ "$IPV6TO4INIT" = "yes" ]; then
valid6to4config="no"
fi
else
- echo $"IPv6to4 configuration needs an IPv4 address on related interface or otherwise specified"
+ net_log $"IPv6to4 configuration needs an IPv4 address on related interface or otherwise specified" info
valid6to4config="no"
fi
# Setup 6to4 tunnel (hardwired name is "tun6to4"), if config is valid
if [ "$valid6to4config" = "yes" ]; then
# Get MTU of master device
- ipv4mtu="$(/sbin/ip link show dev $DEVICE | grep -w "mtu" | awk '{ print $5 }')"
+ ipv4mtu="$(/sbin/ip link show dev $DEVICE | awk '/\<mtu\>/ { print $5 }')"
if [ -n "$ipv4mtu" ]; then
# IPv6 tunnel MTU is IPv4 MTU minus 20 for IPv4 header
tunnelmtu=$(($ipv4mtu-20))
@@ -232,7 +224,7 @@ if [ "$IPV6TO4INIT" = "yes" ]; then
if [ -n "$IPV6TO4_MTU" ]; then
if [ $IPV6TO4_MTU -gt $tunnelmtu ]; then
- echo $"Warning: configured MTU '$IPV6TO4_MTU' for 6to4 exceeds maximum limit of '$tunnelmtu', ignored"
+ net_log $"Warning: configured MTU '$IPV6TO4_MTU' for 6to4 exceeds maximum limit of '$tunnelmtu', ignored" warning
else
tunnelmtu=$IPV6TO4_MTU
fi
@@ -246,7 +238,7 @@ if [ "$IPV6TO4INIT" = "yes" ]; then
# Add default route, if device matches
if [ "$IPV6_DEFAULTDEV" = "tun6to4" ]; then
if [ -n "$IPV6_DEFAULTGW" ]; then
- echo $"Warning: interface 'tun6to4' does not support 'IPV6_DEFAULTGW', ignored"
+ net_log $"Warning: interface 'tun6to4' does not support 'IPV6_DEFAULTGW', ignored" warning
fi
ipv6_set_default_route $ipv6to4_relay tun6to4
fi
@@ -266,7 +258,7 @@ if [ "$IPV6TO4INIT" = "yes" ]; then
# Setup additional static IPv6 routes (newer config style)
if [ -f "/etc/sysconfig/network-scripts/route6-tun6to4" ]; then
- cat "/etc/sysconfig/network-scripts/route6-tun6to4" | sed 's/#.*//g' | LC_ALL=C grep -v '^[[:space:]]*$' | while read line; do
+ sed -ne 's/#.*//' -e '/[^[:space:]]/p' /etc/sysconfig/network-scripts/route6-tun6to4 | while read line; do
if echo "$line" | LC_ALL=C grep -vq 'via'; then
# Add gateway if missing
line="$line via $ipv6to4_relay"
@@ -282,7 +274,7 @@ if [ "$IPV6TO4INIT" = "yes" ]; then
if [ "$IPV6_CONTROL_RADVD" = "yes" ]; then
# RADVD is in use, so forwarding of IPv6 packets should be enabled, display warning
if [ $ipv6_global_forwarding_current -ne 1 ]; then
- echo $"Using 6to4 and RADVD IPv6 forwarding usually should be enabled, but it isn't"
+ net_log $"Using 6to4 and RADVD IPv6 forwarding usually should be enabled, but it isn't" warning
fi
if [ -n "$IPV6TO4_ROUTING" ]; then
@@ -290,22 +282,22 @@ if [ "$IPV6TO4INIT" = "yes" ]; then
if [ -n "$ipv6to4prefix" ]; then
# Add route to local networks
for devsuf in $IPV6TO4_ROUTING; do
- dev="$(echo $devsuf | awk -F- '{ print $1 }')"
+ dev="${devsuf%%-*}"
suf="$(echo $devsuf | awk -F- '{ print $2 }')"
ipv6_add_addr_on_device ${dev} ${ipv6to4prefix}${suf}
done
else
- echo $"Error occurred while calculating the IPv6to4 prefix"
+ net_log $"Error occurred while calculating the IPv6to4 prefix"
fi
else
- echo $"radvd control enabled, but config is not complete"
+ net_log $"radvd control enabled, but config is not complete"
fi
# Control running radvd
ipv6_trigger_radvd up "$IPV6_RADVD_TRIGGER_ACTION" $IPV6_RADVD_PIDFILE
fi
else
- echo $"6to4 configuration is not valid"
+ net_log $"6to4 configuration is not valid"
mdv-network-event connection_failure ${DEVICE}
exit 1
fi