功能实现:在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=yesIPADDR=
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=yesIPADDR=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=yesIPADDR=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的IPADDRDNS1=与宿主机相同

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 删除。

基于virtualbox 的虚拟路由器搭建相关推荐

  1. 基于Linux的虚拟主机搭建

    为了建设二级网站建设,我考察了多个开源和商业的虚拟主机和控制面板.主要察看了Linux下的. 很多工具,例如开源的VHCS,商业的Plesk功能虽然十分强大,但他们的主要服务对象是商业虚拟主机客户,和 ...

  2. Linux搭建基于域名的虚拟主机

    搭建基于域名的虚拟主机1.首先为两个网站搭建dns服务器,并新建区域,分别为:www.benet.com和www.accp.com. 1)修改配置文件 2)修改数据文件 3)重启dns服务 2.搭建两 ...

  3. Cisco® Catalyst® 8000V 边缘软件 (Catalyst 8000V) 17.11.1a 发布 - 虚拟路由器

    Cisco Catalyst 8000v Edge Software, IOS XE Release Dublin-17.11.1a ED 请访问原文链接:https://sysin.org/blog ...

  4. 十八.搭建Nginx服务器、配置网页认证、基于域名的虚拟主机、ssl虚拟主机

    配置要求: client:192.168.4.10 proxy:192.168.4.5(eth0) 192.168.2.5(eth1) web1:192.168.2.100 web2:192.168. ...

  5. Ubuntu18.04配置搭建基于Gazebo的虚拟仿真平台(Px4):无人机(UAV)、无人车等模拟实验平台

    这篇我觉得是写得比较详细完整的 摘自:https://dgzc.ganahe.top/ganahe/2021/uavgazebomoni.html Ubuntu18.04配置搭建基于Gazebo的虚拟 ...

  6. linux mysql 邮件_linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(二)-基于mysql的虚拟账户登陆收发邮件...

    linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(二)-基于mysql的虚拟账户登陆收发邮件 使用虚拟用户收发邮件安装 九.安装Courier authentication lib ...

  7. linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(二)-基于mysql的虚拟账户登陆收发邮件...

    linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(二)-基于mysql的虚拟账户登陆收发邮件 使用虚拟用户收发邮件安装 九.安装Courier authentication lib ...

  8. Centos中基于IP,域名,端口的虚拟主机搭建图文教程

    首先,检查是否已安装httpd软件包,也就是所谓的Apache rpm –qa httpd 没有回显则代表没有安装,如果安装后想删除用yum remove   安装yum install httpd ...

  9. Ubuntu Server 12.04 搭建 hadoop 集群版环境——基于VirtualBox

    1 . 下载和安装Oracle VM VitualBox http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/i ...

  10. 用VRRP虚拟路由器冗余协议实现双组双备网络搭建

    一 实验工具 eNSP 二 实验拓扑图 三 实验目的 1.LSW1为192.168.10.0/24网段的主路由,192.168.20.0/24网段的备用路由 2.LSW2为192.168.20.0/2 ...

最新文章

  1. Reporting Services 的多值参数究竟能否用在数据集获取途径为存储过程的情景呢?...
  2. CSDN博客越来越垃圾了,到处放广告
  3. Stella 知识库--解析论坛的架构(1)
  4. d3.js 封装一个方法更新柱状图,运用数据模板
  5. UVA11389巴士司机问题
  6. 网络:TCP/IP各层的协议
  7. 何洁音乐会今晚开唱 大手笔打造pure show
  8. qml dockwidget窗口停靠
  9. 在oracle 11gr2 grid独占模式下,如何使oracle数据库实例伴随OHAS的启动而启动?
  10. 基于Socket的java网络编程
  11. python3tkinter_python3使用tkinter制作动画
  12. s3c2440汇编语言,S3C2440-裸机篇-03 | GPIO的使用(点亮LED、按键检测)
  13. 普中51控制火焰传感器_火焰传感器的应用
  14. 改写二分搜索算法C++
  15. 操作系统期末大题复习
  16. which must be escaped when used within the value
  17. 27-java String 之间比较的幺蛾子
  18. python from import 讲解
  19. html 在盒子中字体垂直,第五章,css行内盒模型和文字样式
  20. Python 中的 urlencode 和 urldecode 操作

热门文章

  1. 八、软考·系统架构师——架构设计
  2. GIS在农业方面的应用
  3. IOS开发之——音乐播放器-功能封装(03)
  4. c#关于GMap离线地图加载的问题
  5. flv怎么转换成mp4?
  6. moss2007 是什么_MOSS 2007站点权限
  7. 最全的程序化交易模型设计思路在这里
  8. SpringCloud 单Eureka简单例子consumer-provider
  9. 旧文重发:从第三方服务角度看各公司技术部门如何正确计算投入产出比~
  10. 实话实说 瞧瞧医疗系统集成这些个事儿