基于virtualbox 的虚拟路由器搭建

功能实现:在win7 宿主机的virtualbox中构建三个虚拟机,其中VM1当做路由器用,VM2 和 VM3 是普通客户机。

设草稿图如下:





设计步骤:

1、在虚拟机中先创建linux虚拟系统VM1。

此处构建的是centos6.4,在VM1中需要加载三块网卡(eth0,eth1,eth2),其中eth0采用bridge模式,eth1和eth2都采用host-only模式。


2、设置VM1的网卡。

eth0的设置推荐使用自动获取IP方式(图形界面设置即可)。假如一定要采用手动设置IP的话,需要在/etc/sysconfig/network-scripts/ifcfg-eth0中设置:

DEVICE=eth0
HWADDR=xxxxx
BOOTPROTO=static
ONBOOT=yes

IPADDR=
NETWORK=
BROADCAST=
NETMASK=
GATEWAY=

DNS1=与宿主机相同
DNS2=
eth1和eth2加载的网卡是在virtualbox的管理->全局设置->网络中添加的host-only网卡( virtualbox host-only ethernet adapter 和virtualbox host-only ethernet adapter  #2),此处需要手动设置他们的IP参数。eth1的参数设置如下:

DEVICE=eth1
HWADDR=xxxxx
BOOTPROTO=static
ONBOOT=yes

IPADDR=192.168.20.254
NETWORK=192.168.20.0
BROADCAST=192.168.20.255
NETMASK=255.255.255.0
#GATEWAY=  网关不用设置

DNS1=与宿主机相同
eth2的设置与eth1的类似。

3、在virtualbox中架构客户机VM2和VM3。

此处构建的是centos6.4,在VM2和VM3都只需加载块网卡(eth0),都采用host-only模式。


4、设置VM2和VM3的网卡。

VM2和VM3中加载的网卡与VM1中加载的eth1和eth2分别是相同的网卡。即都是在virtualbox的管理->全局设置->网络中添加的host-only网卡( virtualbox host-only ethernet adapter 和virtualbox host-only ethernet adapter  #2),表示VM1的eth1和VM2中的eth0相接,VM1的eth2和VM3中的eth0相接。此处需要手动设置他们的IP参数。VM2中eth0的参数设置在/etc/sysconfig/network-scripts/ifcfg-eth0中如下:(强烈推荐在图像界面设置)

DEVICE=eth0
HWADDR=xxxxx
BOOTPROTO=static
ONBOOT=yes

IPADDR=192.168.20.20
NETWORK=192.168.20.0
BROADCAST=192.168.20.255
NETMASK=255.255.255.0
GATEWAY=192.168.20.254  VM1中eth1的IPADDR

DNS1=与宿主机相同
VM3 的设置与VM2 的类似。

5、启发VM1的IP转发功能。   VM1中!!!

在/etc/sysctl.conf中设置net.ipv4.ip_forward = 1,  或者

在/etc/rc.d/rc.local中加入指令:

echo "1"> /proc/sys/net/ipv4/ip_forward

6、配置VM1的连接外网的nat。

此处的eth0就是VM1中的bridge模式的eth0,这个eth0必须要能连接外网。

在/etc/rc.d/rc.local中加入指令:(数据包伪装)

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

注意:上述的第5、6步是为了实现简单功能而执行的零散指令,完整的解释请参看《鸟哥的Linux私房菜--服务器架设篇(第二版)》的第251页与257页关于防火墙的设置。

7、重启VM123的网卡。

/etc/init.d/network restart


到此,VM1、VM2、VM3可以相互ping,并且都可以访问外网。


假如上述步骤后VM2、VM3不能ping外网,请关闭防火墙。

chkconfig iptables off


在以上的设置需要注意的几项:

1、手动设置host-only模式的网卡时,由于加载时默认的获取IP方式是auto模式,所以如果在设置前先到图像界面的system->network connection中把auto ethn 删除。





  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值