Browse Source

network: fix vlan handling

master
Harald Hoyer 8 years ago
parent
commit
0cf826a11a
  1. 4
      modules.d/40network/ifup.sh
  2. 14
      modules.d/40network/net-genrules.sh
  3. 7
      modules.d/40network/parse-vlan.sh
  4. 2
      modules.d/45ifcfg/write-ifcfg.sh

4
modules.d/40network/ifup.sh

@ -149,7 +149,9 @@ if [ -z "$DO_VLAN_PHY" ] && [ -e /tmp/vlan.${netif}.phy ]; then


for i in /tmp/vlan.*.${netif}; do for i in /tmp/vlan.*.${netif}; do
[ -e "$i" ] || continue [ -e "$i" ] || continue
read vlanname < "$i" unset vlanname
unset phydevice
. "$i"
if [ -n "$vlanname" ]; then if [ -n "$vlanname" ]; then
linkup "$phydevice" linkup "$phydevice"
ip link add dev "$vlanname" link "$phydevice" type vlan id "$(get_vid $vlanname)" ip link add dev "$vlanname" link "$phydevice" type vlan id "$(get_vid $vlanname)"

14
modules.d/40network/net-genrules.sh

@ -41,15 +41,15 @@ command -v fix_bootif >/dev/null || . /lib/net-lib.sh
MASTER_IFACES="$MASTER_IFACES ${teammaster}" MASTER_IFACES="$MASTER_IFACES ${teammaster}"
done done


for j in /tmp/vlan.*.phy; do for i in /tmp/vlan.*.phy; do
[ -e "$j" ] || continue [ -e "$i" ] || continue
unset phydevice unset phydevice
. "$j" . "$i"
for i in /tmp/vlan.*.${phydevice}; do RAW_IFACES="$RAW_IFACES $phydevice"
[ -e "$i" ] || continue for j in /tmp/vlan.*.${phydevice}; do
[ -e "$j" ] || continue
unset vlanname unset vlanname
. "$i" . "$j"
RAW_IFACES="$RAW_IFACES $phydevice"
MASTER_IFACES="$MASTER_IFACES ${vlanname}" MASTER_IFACES="$MASTER_IFACES ${vlanname}"
done done
done done

7
modules.d/40network/parse-vlan.sh

@ -26,6 +26,9 @@ for vlan in $(getargs vlan=); do
parsevlan "$(getarg vlan=)" parsevlan "$(getarg vlan=)"
fi fi


echo "$phydevice" > /tmp/vlan.${phydevice}.phy echo "phydevice=\"$phydevice\"" > /tmp/vlan.${phydevice}.phy
echo "$vlanname" > /tmp/vlan.${vlanname}.${phydevice} {
echo "vlanname=\"$vlanname\""
echo "phydevice=\"$phydevice\""
} > /tmp/vlan.${vlanname}.${phydevice}
done done

2
modules.d/45ifcfg/write-ifcfg.sh

@ -132,6 +132,8 @@ for netup in /tmp/net.*.did-setup ; do
unset slave unset slave
unset ethname unset ethname
unset vlan unset vlan
unset vlanname
unset phydevice


[ -e /tmp/bond.${netif}.info ] && . /tmp/bond.${netif}.info [ -e /tmp/bond.${netif}.info ] && . /tmp/bond.${netif}.info
[ -e /tmp/bridge.${netif}.info ] && . /tmp/bridge.${netif}.info [ -e /tmp/bridge.${netif}.info ] && . /tmp/bridge.${netif}.info

Loading…
Cancel
Save