本实验脚本如下:

#!/bin/bash
#网桥名称
bridge=br0
#网桥接入端ip
ip1=192.168.10.1
ip2=192.168.10.2
#veth名称
tap1=tap1
tap2=tap2

#创建网络命名空间
ip netns add ns1
ip netns add ns2

#创建并启用网桥br0,且关闭stp
ip link add $bridge type bridge
ip link set $bridge type bridge stp_state 0
ip link set dev $bridge up

#创建veth对tap1,br-tap1,给tap1配置ip地址,并且将br-tap1设置为网桥br0的接口
ip link add $tap1 type veth peer name br-$tap1
ip link set br-$tap1 master $bridge
ip link set $tap1 netns ns1
ip netns exec ns1 ip link set dev $tap1 up
ip netns exec ns1 ip address add $ip1/24 dev $tap1
ip netns exec ns1 ip link set $tap1 up
ip link set dev br-$tap1 up

#创建veth对tap2,br-tap2,给tap2配置ip地址,并且将br-tap2设置为网桥br0的接口
ip link add $tap2 type veth peer name br-$tap2
ip link set br-$tap2 master $bridge
ip link set $tap2 netns ns2
ip netns exec ns2 ip link set dev $tap2 up
ip netns exec ns2 ip address add $ip2/24 dev $tap2
ip netns exec ns2 ip link set $tap2 up
ip link set dev br-$tap2 up

运行后,可查看本地网卡 查看ns1,ns2网络空间网络ip配置 测试网络tap1,tap2网络连通性