基于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=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 的虚拟路由器搭建相关推荐
- 基于Linux的虚拟主机搭建
为了建设二级网站建设,我考察了多个开源和商业的虚拟主机和控制面板.主要察看了Linux下的. 很多工具,例如开源的VHCS,商业的Plesk功能虽然十分强大,但他们的主要服务对象是商业虚拟主机客户,和 ...
- Linux搭建基于域名的虚拟主机
搭建基于域名的虚拟主机1.首先为两个网站搭建dns服务器,并新建区域,分别为:www.benet.com和www.accp.com. 1)修改配置文件 2)修改数据文件 3)重启dns服务 2.搭建两 ...
- 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 ...
- 十八.搭建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. ...
- Ubuntu18.04配置搭建基于Gazebo的虚拟仿真平台(Px4):无人机(UAV)、无人车等模拟实验平台
这篇我觉得是写得比较详细完整的 摘自:https://dgzc.ganahe.top/ganahe/2021/uavgazebomoni.html Ubuntu18.04配置搭建基于Gazebo的虚拟 ...
- linux mysql 邮件_linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(二)-基于mysql的虚拟账户登陆收发邮件...
linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(二)-基于mysql的虚拟账户登陆收发邮件 使用虚拟用户收发邮件安装 九.安装Courier authentication lib ...
- linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(二)-基于mysql的虚拟账户登陆收发邮件...
linux 下 搭建邮件邮件服务器(Postfix+Dovecot)(二)-基于mysql的虚拟账户登陆收发邮件 使用虚拟用户收发邮件安装 九.安装Courier authentication lib ...
- Centos中基于IP,域名,端口的虚拟主机搭建图文教程
首先,检查是否已安装httpd软件包,也就是所谓的Apache rpm –qa httpd 没有回显则代表没有安装,如果安装后想删除用yum remove 安装yum install httpd ...
- Ubuntu Server 12.04 搭建 hadoop 集群版环境——基于VirtualBox
1 . 下载和安装Oracle VM VitualBox http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/i ...
- 用VRRP虚拟路由器冗余协议实现双组双备网络搭建
一 实验工具 eNSP 二 实验拓扑图 三 实验目的 1.LSW1为192.168.10.0/24网段的主路由,192.168.20.0/24网段的备用路由 2.LSW2为192.168.20.0/2 ...
最新文章
- Reporting Services 的多值参数究竟能否用在数据集获取途径为存储过程的情景呢?...
- CSDN博客越来越垃圾了,到处放广告
- Stella 知识库--解析论坛的架构(1)
- d3.js 封装一个方法更新柱状图,运用数据模板
- UVA11389巴士司机问题
- 网络:TCP/IP各层的协议
- 何洁音乐会今晚开唱 大手笔打造pure show
- qml dockwidget窗口停靠
- 在oracle 11gr2 grid独占模式下,如何使oracle数据库实例伴随OHAS的启动而启动?
- 基于Socket的java网络编程
- python3tkinter_python3使用tkinter制作动画
- s3c2440汇编语言,S3C2440-裸机篇-03 | GPIO的使用(点亮LED、按键检测)
- 普中51控制火焰传感器_火焰传感器的应用
- 改写二分搜索算法C++
- 操作系统期末大题复习
- which must be escaped when used within the value
- 27-java String 之间比较的幺蛾子
- python from import 讲解
- html 在盒子中字体垂直,第五章,css行内盒模型和文字样式
- Python 中的 urlencode 和 urldecode 操作