summaryrefslogtreecommitdiff
blob: 4a30e7d5645f1b66662a1716bafe2ea71e84f3eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/sh

if [ -x /sbin/brctl ]; then
  BRCTL="/sbin/brctl"
elif [ -x /usr/sbin/brctl ]; then
  BRCTL="/usr/sbin/brctl"
else
  echo "no bridge utils installed"
  exit 1
fi

if [ -x /sbin/ip ]; then
  switch=( $(/sbin/ip route list | awk '/^default / { sub(/.* dev /, ""); print $1 }') )
  /sbin/ip link set $1 up
else
  switch=( $(/bin/netstat -rn | awk '/^0\.0\.0\.0/ { print $NF }') )
  /sbin/ifconfig $1 0.0.0.0 up
fi

[[ ${switch#} -ne "1" ]] && logger -t qemu "$0 found more than one bridge connecting $1 to ${switch}"
${BRCTL} addif ${switch} $1