Linux网络可以通过命名空间进行网络隔离,本文记录一下相应的创建命令。
网络命名空间
创建
1 | ip netns add netns0 |
查看ip
1 | [root@k8s1 ~]$ ip netns exec netns0 ip link show |
将veth1给netns1空间
1 | [root@k8s1 ~]$ ip netns exec netns0 ip link set veth1 netns netns1 |
添加ip
1 | ip netns exec netns0 ip addr add 10.1.1.2/24 dev veth0 |
ping
1 | [root@k8s1 ~]$ ip netns exec netns0 ifconfig |
查看配对
1 | [root@k8s1 ~]$ ip netns exec netns1 ethtool -S veth1 |
网桥
参考: http://fp-moon.iteye.com/blog/1468650
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 yum -y install bridge-utils
brctl addbr br0
brctl addif br0 enp0s8 && ifconfig enp0s8 0.0.0.0 && ifconfig br0 192.168.10.6
注意:brctl addif br0 enp0s8执行后断网,所以后面的命令需要一起执行。
[root@k8s1 ~]$ ifconfig
#192.168.10.6已经转移到br0中了
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.6 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::a00:27ff:fec4:969a prefixlen 64 scopeid 0x20<link>
ether 08:00:27:c4:96:9a txqueuelen 0 (Ethernet)
RX packets 28 bytes 2821 (2.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 23 bytes 2826 (2.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0