blob: 61ac2d6c8e34259f4f70056ac35663d699d95efe (
plain) (
tree)
|
|
#!/bin/sh
#
# /etc/rc.d/blan: start/stop virtual network interfaces
#
DEV="br0"
PHY="enp8s0"
ADDR=10.0.0.254
#ADDR=10.0.1.254
MASK=8
#GW=10.0.0.1
GW=192.168.1.254
# one tap for each cpu core
NTAPS=$((`/usr/bin/nproc`))
case $1 in
start)
/sbin/ip link add name ${DEV} type bridge
/sbin/ip addr add ${ADDR}/${MASK} dev ${DEV} broadcast +
/sbin/ip link set dev ${DEV} up
/bin/sleep 0.2s
# Add network to virtual bridge
/sbin/ip link set dev ${PHY} down
/bin/sleep 0.1s
/sbin/ip route flush dev ${PHY}
/sbin/ip addr flush dev ${PHY}
/sbin/ip link set dev ${PHY} up
/bin/sleep 0.2s
/sbin/ip link set dev ${PHY} master ${DEV}
/sbin/ip route add default via ${GW}
for i in `/usr/bin/seq $NTAPS`
do
TAP="tap$i"
echo "Setting up ${TAP} tap interface."
/sbin/ip tuntap add ${TAP} mode tap group kvm
/sbin/ip link set ${TAP} up
/bin/sleep 0.2s
/sbin/ip link set ${TAP} master ${DEV}
done
exit 0
;;
stop)
for i in `/usr/bin/seq $NTAPS`
do
TAP="tap$i"
echo "Deleting ${TAP} tap interface."
/sbin/ip link del ${TAP}
done
/sbin/ip link set dev ${DEV} down
/sbin/ip route flush dev ${DEV}
/sbin/ip link del ${DEV}
exit 0
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 [start|stop|restart]"
;;
esac
# End of file
|