添加网桥
添加网桥,名称为br0
brctl addbr br0
将网桥关联到网卡ens33
brctl addif br0 ens33
这里如果你是ssh连接,执行完了你可能就会断开连接了,所以最好吧这一步和下面几步连在一起执行这样就不会断开了
brctl addif br0 ens33 ;\
ip addr del dev ens33 192.168.253.134/24 ;\
ifconfig br0 192.168.253.134/24 up
查看
brctl show
删除网卡上的ip
ip addr del dev ens33 192.168.253.134/24
将ip配置在br0上
ifconfig br0 192.168.253.134/24 up
设置默认网关
route add default gw 192.168.253.2
添加虚拟网卡
虚拟网卡是使用网络底层编程技术实现的一个驱动软件。安装此类程序后主机上会增加一个非真实的网卡,并可以像其它网卡一样进行配置。服务程序可以在应用层打开虚拟网卡,如果应用软件(如网络浏览器)向虚拟网卡发送数据,则服务程序可以读取到该数据。如果服务程序写合适的数据到虚拟网卡,应用软件也可以接收得到。
简单的说相当于一条数据线,如果你有一个虚拟机/网络命名空间,这时候你可以一头吧数据线查到虚拟机中,另一头放在物理机中,从而实现网络通信,
具体实现
第一步:创建一对虚拟网卡
ip link add vethx.1 type veth peer name vethx.2
查看一下
第二步:网络命名空间
创建一个网络命名空间,起到隔离网络的作用
ip netns add netns1
将虚拟网卡vethx2添加到netns1这个网络命名空间中
ip link set dev vethx.2 netns netns1
可以看到vethx.2已经不再物理机上显示了,因为被我们放到网络命名空间中了
第三步:进入网络命名空间配置vthx.2的ip
设置ip为10.1.0.3/24
ip netns exec netns1 ifconfig vethx.2 10.1.0.3/24 up
ping一下发现不可达
第四步:配置vthx.1的ip
设置ip为10.1.0.4/24
ifconfig vethx.1 10.1.0.4/24 up
可以看到成功ping通了。
删除虚拟网卡
ip link delete vethx.1
删除网络名称空间
ip netns delete netns1