From 30ac6534a3289cfaacd5e312842810d975ba87db Mon Sep 17 00:00:00 2001 From: root Date: Thu, 14 Feb 2019 08:34:11 +0000 Subject: [PATCH] adding first very very basic old-school vlan support --- files/qemu-ifup | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/files/qemu-ifup b/files/qemu-ifup index 898674f..77399e3 100755 --- a/files/qemu-ifup +++ b/files/qemu-ifup @@ -11,20 +11,26 @@ fi LOOPBACKIP=$(ip -4 addr show dev lo | grep -Po 'inet \K[\d.]+' | grep -v "^127.0.0.1$") BRIDGE=br${CLUSTER} -VXLAN=vxlan${CLUSTER} -VNI=${CLUSTER} +VIF=vxlan${CLUSTER} + +[ -z ${PARENTIF:=""} ] || VIF=vlan${CLUSTER} ### if we have a parentif set we're just going to handle it as a legacy old school vlan ip link set up ${IFACE} -if ! ip link show dev ${VXLAN} &>/dev/null; then - ip link add ${VXLAN} type vxlan id ${VNI} dstport 4789 local ${LOOPBACKIP} nolearning - ip link set up ${VXLAN} +if ! ip link show dev ${VIF} &>/dev/null; then + if [ -z ${PARENTIF:=""} ] + then + ip link add ${VIF} type vxlan id ${CLUSTER} dstport 4789 local ${LOOPBACKIP} nolearning + else + ip link add link ${PARENTIF} name vlan${CLUSTER} type vlan protocol 802.1q id ${CLUSTER} + fi + ip link set up ${VIF} fi if ! ip link show dev ${BRIDGE} &>/dev/null; then brctl addbr ${BRIDGE} brctl stp ${BRIDGE} off - brctl addif ${BRIDGE} ${VXLAN} + brctl addif ${BRIDGE} ${VIF} ip link set up dev ${BRIDGE} bridge vlan del dev ${BRIDGE} vid 1 self echo 1 >/sys/class/net/${BRIDGE}/bridge/vlan_filtering