osmo-gsm-tester/utils/bin/osmo-gsm-tester_netns_setup.sh

34 lines
780 B
Bash
Executable File

#!/bin/bash -e
netns="$1"
ifname="$2" # optional
ip_addr="$3" # optional
if [ -f "/var/run/netns/${netns}" ]; then
echo "netns $netns already exists"
else
echo "Creating netns $netns"
ip netns add "$netns"
fi
if [ "x$ifname" = "x" ]; then
exit 0
fi
if [ -d "/sys/class/net/${ifname}" ]; then
echo "Moving iface $ifname to netns $netns"
ip link set $ifname netns $netns
else
ip netns exec $netns ls "/sys/class/net/${ifname}" >/dev/null && echo "iface $ifname already in netns $netns"
fi
if [ "x$ip_addr" = "x" ]; then
exit 0
fi
echo "Setting up iface $ifname with ${ip_addr}"
ip netns exec $netns ip link set dev $ifname up
ip netns exec $netns ip addr add ${ip_addr}/24 dev $ifname
#ip netns exec $netns ip route add default via ${ip_addr}