为VirtualBox中的Ubuntu配置双网卡

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为VirtualBox中的Ubuntu配置双网卡相关的知识,希望对你有一定的参考价值。

参考技术A 在VirtualBox中安装Ubuntu后,默认情况下有一块处于NAT模式的虚拟网卡,若宿主机可以上网,虚拟机也可以通过NAT访问宿主机所在网络,但是却无法实现宿主机和虚拟机之间的互联。
使用双网卡,一块网卡工作在NAT模式,另外一块网卡工作在Host-only模式,这样即实现了虚拟机上外网,又实现了虚拟机与宿主机之间的互联,即使在断网情况下也可以互联。世间也有两全美。

VirualBox有四种虚拟网络连接模式,包括NAT(网络地址转换) 模式、Bridge (桥接)模式、Host-Only(主机)模式、Internal(内网)模式。
具体它们的特点与区别可以参考 这里 。

Win7 + VirtualBox4.3 + Ubuntu14.04

在宿主机的网络连接中查看是否存在VirtualBox Host-Only Network,若存在,则将网络配置到启用状态,并查看该网络所在内网网段。

如图,宿主机Host-Only网络是192.168.57.*网段。因此稍后需要为Ubuntu的Host-Only网卡添加该网段的静态地址。
如果该Host-Only网络不存在,则需在VirtualBox中添加,添加方法为 管理 --> 全局设定 --> 网络 --> 仅主机(Host-Only)网络 --> 添加网络。

进入虚拟机设置 --> 网络 --> 网卡2,启用网络连接并选择Host-Only适配器和界面名称,具体配置见图。

进入虚拟机Ubuntu,使用 ifconfig 命令查看会发现只有一个网卡工作,因为第二块网卡还没有进行配置。
使用vim编辑 /etc/network/interfaces ,添加第二块网卡的网络配置,宿主机需要长期连接虚拟机,需要为Host-Only网络配置静态IP,IP需要和宿主机的Host-Only网段一致。

重启网络或者系统。

进入Ubuntu使用 ifconfig 查看网络状态,此时应该两张网卡都在工作。

完工(~﹃~)~zZ

ubuntu双网卡准备配置

近日有个需求,交换机有两台,做了堆叠,服务器双网卡,每个分别连到一台交换机上。这样就需要将服务器的网卡做成主备模式,以增加安全性,使得当其中一个交换机不通的时候网卡能够自动切换。

整体配置不难,网上也有相应的教程,可能有些是ubuntu的版本不同,所以配置以后没有达到应有的效果,最终通过51运维网的Ubuntu双网卡绑定的设置方法一文中的方法实现了该功能,本文简单记录之。

一、Bond的工作模式

Linux bonding驱动提供了一个把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余。

bonding一共有7种工作模式(mode):

0:(balance-rr) Round-robin policy: (平衡轮询策略):传输数据包顺序是依次传输,直到最后一个传输完毕,此模式提供负载平衡和容错能力。

1:(active-backup) Active-backup policy:(活动备份策略):只有一个设备处于活动状态。一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得。此模式提供了容错能力。

2:(balance-xor) XOR policy:(平衡策略):传输根据[(源MAC地址xor目标MAC地址)mod设备数量]的布尔值选择传输设备。 此模式提供负载平衡和容错能力。

3:(broadcast) Broadcast policy:(广播策略):将所有数据包传输给所有设备。此模式提供了容错能力。

4:(802.3ad) IEEE 802.3ad Dynamic link aggregation. IEEE 802.3ad 动态链接聚合:创建共享相同的速度和双工设置的聚合组。此模式提供了容错能力。每个设备需要基于驱动的重新获取速度和全双工支持;如果使用交换机,交换机也需启用 802.3ad 模式。

5:(balance-tlb) Adaptive transmit load balancing(适配器传输负载均衡):通道绑定不需要专用的交换机支持。发出的流量根据当前负载分给每一个设备。由当前设备处理接收,如果接受的设 备传不通就用另一个设备接管当前设备正在处理的mac地址。

6:(balance-alb) Adaptive load balancing: (适配器负载均衡):包括mode5,由 ARP 协商完成接收的负载。bonding驱动程序截获 ARP在本地系统发送出的请求,用其中之一的硬件地址覆盖从属设备的原地址。就像是在服务器上不同的人使用不同的硬件地址一样。

本文的需求正如模式1中所描述的,即主备模式。

二、配置步骤

2.1 确定网卡名称

首先确定两块网卡的名称,一般为eth0、eth1,如果有自己添加的网卡名称可能不同,在安装系统的时候可以看到,通过ipmaddr命令可以查看所有网卡信息。

2.2 安装ifenslave软件

ifenslave为一种粘合和分离式的软件,可以将数据包有效的分配到bonding驱动。

sudo apt-get install ifenslave

2.3 修改/etc/modules文件

在/etc/modules中加入:

bonding mode=1 miimon=100

注意是添加,其他内容不要删除。mode=1表示采用模式1,当然你也可以才用其他模式。

miimon是用来进行链路监测的。比如miimon=100,表示系统每100ms监测一次链路连接状态,如果有一条线路不通就切换另一条线路。

2.4 修改/etc/network/interfaces文件

在/etc/network/interfaces中加入:

auto bond0
iface bond0 inet static
address 10.128.1.12
netmask 255.255.255.0
gateway 10.128.1.200
post-up ifenslave bond0 eth0 eth1
pre-down ifenslave -d bond0 eth0 eth1

2.5 重启服务器

由于加载模块,需重启生效。重启之后通过以下命令可以查看bond0的工作情况。

cat /proc/net/bonding/bond0

此文件为bond0的工作状态。也可以通过ifconfig来查看网卡的工作状态。

注意bonding只能提供链路监测,即从主机到交换机的链路是否接通。如果只是交换机对外(如防火墙等)的链路down掉了,而交换机本身并没有故障,那么bonding会认为链路没有问题而继续使用。

三、总结

本文简单记录了ubuntu14.04双网卡主备模式配置的一些细节和注意事项,其他版本可能稍有不同,注意实践。网络需要主备,你的生活是否有主备,当此工作不能继续的时候你是否能够切换?

以上是关于为VirtualBox中的Ubuntu配置双网卡的主要内容,如果未能解决你的问题,请参考以下文章

记录问题-VirtualBox6.1 下 配置 Ubuntu 16.04 多网卡

VirtualBox 安装 Centos7虚拟机OS并配置双网卡

virtualbox 最小化安装centos7 配置双网卡(nat和桥接)记录----已经过期

ubuntu双网卡准备配置

virtualbox下ubuntu16.04虚拟机网卡配置桥接方式上网

Linux服务器双网卡双IP和单网卡双IP配置方法(Debian/Ubuntu)