mirror of
https://github.com/yanfeizhang/coder-kung-fu.git
synced 2026-05-09 15:43:03 +08:00
feat: 添加 namespace 实验
This commit is contained in:
@@ -2,4 +2,5 @@
|
||||
- [通过多 IP 达成单机百万连接](tests/network/test02)
|
||||
- [通过端口重用达成单机百万连接](tests/network/test03)
|
||||
- [一个模拟 tcpdump 的简单抓包程序](tests/network/test04)
|
||||
- [用 bridge 连接本机上的多组 veth,使其可以互相通信](tests/network/test05)
|
||||
- [用 bridge 连接本机上的多组 veth,使其可以互相通信](tests/network/test05)
|
||||
- [命令行使用 namespace 的简单实验](tests/network/test06)
|
||||
33
tests/network/test06/Makefile
Normal file
33
tests/network/test06/Makefile
Normal file
@@ -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
|
||||
29
tests/network/test06/index.md
Normal file
29
tests/network/test06/index.md
Normal file
@@ -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
|
||||
```
|
||||
Reference in New Issue
Block a user