首页 > IT职业 > IT图书 > Linux network namespace 学习
$ ip netns help
Usage: ip netns list # 列出主机上所有的 ns
ip netns add NAME # 新增一个 ns
ip netns set NAME NETNSID # 给 ns 设置 id
ip [-all] netns delete [NAME] # 删除一个 ns
ip netns identify [PID] # 查看进程所在 ns
ip netns pids NAME # 查看 ns 中所有进程
ip [-all] netns exec [NAME] cmd ... # 在 ns 中运行命令
ip netns monitor # 监控 ns 的创建
ip netns list-id # 列出所有 ns 的 id
# 创建
sudo ip netns add host01
sudo ip netns add host02
# 创建一对 veth 设备
sudo ip link add veth1.1 type veth peer name veth1.2
# veth1.1 加入 host01 改名 eth0
sudo ip link set veth1.1 netns host01
sudo ip netns exec host01 ip link set veth1.1 name eth0
sudo ip netns exec host01 ifconfig eth0 10.0.0.1/24 up
sudo ip netns exec host01 ifconfig lo up
# veth1.2 加入 host02 改名 eth0
sudo ip link set veth1.2 netns host02
sudo ip netns exec host02 ip link set veth1.2 name eth0
sudo ip netns exec host02 ifconfig eth0 10.0.0.2/24 up
sudo ip netns exec host02 ifconfig lo up
sudo ip netns exec host01 ip a
sudo ip netns exec host02 ip a
sudo ip netns exec host01 ping 10.0.0.2
sudo ip netns exec host02 ping 10.0.0.1
sudo ip netns add host01
sudo ip netns add host02
sudo ip netns exec host01 ifconfig lo up
sudo ip netns exec host02 ifconfig lo up
sudo ip link add veth1.1 type veth peer name veth1.2
sudo ip link add veth2.1 type veth peer name veth2.2
sudo brctl addbr br0
sudo ip link set br0 up
sudo brctl addif br0 veth1.1
sudo brctl addif br0 veth2.1
sudo ip link set veth1.1 up
sudo ip link set veth2.1 up
sudo ip link set veth1.2 netns host01
sudo ip netns exec host01 ip link set veth1.2 name eth0
sudo ip netns exec host01 ifconfig eth0 10.1.0.1/24 up
sudo ip link set veth2.2 netns host02
sudo ip netns exec host02 ip link set veth2.2 name eth0
sudo ip netns exec host02 ifconfig eth0 10.1.0.2/24 up
sudo ip link set br0 down
sudo brctl delbr br0
sudo ip netns del host01
sudo ip netns del host02
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4615/viewspace-2818253/ ,如需转载,请注明出处,否则将追究法律责任。