diff --git a/tests/network/index.md b/tests/network/index.md index d047689..96635b1 100644 --- a/tests/network/index.md +++ b/tests/network/index.md @@ -2,4 +2,5 @@ - [通过多 IP 达成单机百万连接](tests/network/test02) - [通过端口重用达成单机百万连接](tests/network/test03) - [一个模拟 tcpdump 的简单抓包程序](tests/network/test04) -- [用 bridge 连接本机上的多组 veth,使其可以互相通信](tests/network/test05) \ No newline at end of file +- [用 bridge 连接本机上的多组 veth,使其可以互相通信](tests/network/test05) +- [命令行使用 namespace 的简单实验](tests/network/test06) \ No newline at end of file diff --git a/tests/network/test06/Makefile b/tests/network/test06/Makefile new file mode 100644 index 0000000..64f3eba --- /dev/null +++ b/tests/network/test06/Makefile @@ -0,0 +1,33 @@ +.PHONY: create-net1 +create-net1: + ip netns add net1 + ip netns exec net1 iptables -L + ip netns exec net1 ip link list + ip netns exec net1 ifconfig + +.PHONY: create-veth +create-veth: + ip link add veth1 type veth peer name veth1_p + ip link set veth1 netns net1 + ip link list + ip netns exec net1 ip link list + +.PHONY: start-veth +start-veth: + ip addr add 192.168.0.100/24 dev veth1_p + ip netns exec net1 ip addr add 192.168.0.101/24 dev veth1 + ip link set dev veth1_p up + ip netns exec net1 ip link set dev veth1 up + ifconfig + ip netns exec net1 ifconfig + +.PHONY: ping +ping: + ip netns exec net1 ping 192.168.0.100 -I veth1 + +.PHONY: clean +clean: + ip link delete veth1_p + ip link list + ip netns del net1 + ip netns list diff --git a/tests/network/test06/index.md b/tests/network/test06/index.md new file mode 100644 index 0000000..08f993d --- /dev/null +++ b/tests/network/test06/index.md @@ -0,0 +1,29 @@ +创建网络环境1 + +```sh +# make create-net1 +``` + +创建一对儿 veth,并把一头放到 net1中。分别在母机和 net1 中查看设备信息 + +```sh +# make create-veth +``` + +配置 IP 并启动 veth + +```sh +# make start-veth +``` + +ping一下试试 + +```sh +# make ping +``` + +实验结果后,清理实验环境 + +```sh +# make clean +``` \ No newline at end of file