linux:创建虚拟网卡(macvlan)

Posted 敲代码的Messi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux:创建虚拟网卡(macvlan)相关的知识,希望对你有一定的参考价值。

Linux添加虚拟网卡的多种方法
有时候,一台服务器需要设置多个ip,但又不想添加多块网卡,那就需要设置虚拟网卡.这里介绍几种方式在linux服务器上添加虚拟网卡.

我们向eth0中添加一块虚拟网卡:

第一种方法:快递创建\\删除虚拟网卡

sudo ifconfig eth0:0 192.168.10.10 up
以上的命令就可以在eth0网卡上创建一个叫eth0:0的虚拟网卡,他的地址是:192.168.1.63

如果不想要这个虚拟网卡了,可以使用如下命令删除:

sudo ifconfig eth0:0 down
重启服务器或者网络后,虚拟网卡就没有了.

hzhsan:但是发现添加的虚拟网卡和原网卡物理地址是一样的。

第二种方法:修改网卡配置文件

在ubuntu下,网卡的配置文件是/etc/network/interfaces,所以我们修改它:

sudo vim /etc/network/interfaces
在这个文件中增加如下内容并保存:

auto eth0:0
iface eth0:0 inet static
address 192.168.10.10
netmask 255.255.255.0
#network 192.168.10.1
#broadcast 192.168.1.255
保存后,我们需要重启网卡(重新加载配置文件)才会生效,使用如下命令重启:

sudo /etc/init.d/networking restart
他的优点是重启服务器或者网卡配置不会丢失。


在linux中虚拟网卡的方法

第三种方法:创建tap
前两种方法都有一个特点,创建的网卡可有不同的ip地址,但是Mac地址相同。无法用来创建虚拟机。
添加虚拟网卡tap
tunctl -b

附上相关命令简介:
显示网桥信息
brctl show
添加网桥
brctl addbr virbr0
**网桥
ip link set virbr0 up
添加虚拟网卡tap
tunctl -b
tap0 -------> 执行上面使命就会生成一个tap,后缀从0,1,2依次递增
**创建的tap
ip link set tap0 up
将tap0虚拟网卡添加到指定网桥上。
brctl addif br0 tap0

给网桥配制ip地址
ifconfig virbr1 169.254.251.4 up
将virbr1网桥上绑定的网卡eth5解除
brctl delif virb1 eth5
给virbr1网桥添加网卡eth6
brctl addif virbr1 eth6

以上是关于linux:创建虚拟网卡(macvlan)的主要内容,如果未能解决你的问题,请参考以下文章

Linux 虚拟化网络技术 — 物理网卡的虚拟化(MACVLAN 和 MACVTAP)

Docker 容器跨主机多网段通信解决方案

MACVLAN虚拟网卡技术

什么?网卡也能虚拟化?

docker部署Macvlan实现跨主机网络通信

Note5macvlan,sol