Virtual Bridge and Virtual Ethernet linking - HaymonEdmur/DockerConfiguration GitHub Wiki
# Create a new virtual bridge
BRIDGE="mumbai"
BRIDGE_IP="10.200.1.1"
BRIDGE_SUBNET="10.200.0.0/16"
brctl addbr ${BRIDGE}
ip addr add ${BRIDGE_IP}/16 dev ${BRIDGE}
ip link set ${BRIDGE} up
ip route add ${BRIDGE_SUBNET} via ${BRIDGE_IP} dev ${BRIDGE}
# Create virtual ethernet and network namespace
NS="dadar_ns"
VETH="dadar0"
VPEER="dadar1"
VPEER_ADDR="10.200.1.4"
ip netns del $NS &>/dev/null
ip netns add $NS
ip link add ${VETH} type veth peer name ${VPEER}
ip link set ${VPEER} netns $NS
ip link set ${VETH} up
ip netns exec $NS ip addr add ${VPEER_ADDR}/16 dev ${VPEER}
ip netns exec $NS ip link set ${VPEER} up
ip netns exec $NS ip link set lo up
ip netns exec $NS ip route add default via ${VPEER_ADDR}
echo 1 > /proc/sys/net/ipv4/ip_forward
# Flush forward rules.
iptables -P FORWARD DROP
iptables -F FORWARD
iptables -t nat -F
brctl addif ${BRIDGE} ${VETH}
ip netns exec ${NS} /bin/bash --rcfile <(echo "PS1=\"${NS}> \"")