写点什么

VirtualBox 虚拟机网络设置(四种方式),java 高级程序员简历

用户头像
极客good
关注
发布于: 刚刚

虚拟机与虚拟机关系?


默认可以相互访问,都是同处于一个网段。?


虚拟机访问主机 用的是主机的 VirtualBox Host-Only Network 网卡的 IP:192.168.56.1 ,不管主机“本地连接”有无红叉,永远通。?


主机访问虚拟机,用是的虚拟机的网卡 3 的 IP: 192.168.56.101 ,不管主机“本地连接”有无红叉,永远通。?


虚拟机访问互联网,用的是自己的网卡 2, 这时主机要能通过“本地连接”有线上网,(无线网卡不行)?


通过对以上几种网络模式的了解,我们就可以灵活运用,模拟组建出我们所想要的任何一种网络环境了。?


比如我想模拟出来一个一台主机,监控一个局域网上网情况的网络环境。?


首先我开启了两台虚拟机 vhost1 与 vhost2,当然如果硬件允许,我同样可以再增加 vhost3、vhost4…?


所有的 vhost 我都设置成 internat 内网模式,网络名称为 intnal,网关为 192.168.56.100,意思就是通过 192.168.56.100 网卡上网。其中有一台 vhost1 我设置为双网卡,一张为内网模式(192.168.56.100),一张为网桥模式(192.168.1.101)。两张网卡设置双网卡共享上网?


虚拟机之间为局域网,其中有一台虚拟机 vhost1 通过与外网相连,所有局域网中的虚拟机又通过 vhost1 来实现上外网。这样 vhost1 就可以监控整个虚拟机局域网上网情况了。?


NAT 设置端口映射?


http://huzhangsheng.blog.163.com/blog/static/34787784200802801435931/ ?


你可以设置一个虚拟机的服务(比如 WEB 服务),通过使用命令行工具 VboxManage 代理。你需要知道虚拟机的服务使用哪个端口,然后决定在主机上使用哪个端口(通常但不总是想要使虚拟机和主机使用同一个端口)。在主机上提供一个服务需要使用一个端口,你能使用在主机上没有准备用来提供服务的任何端口。一个怎样设置新的 NAT 例子,在虚拟机上连接到一个 ssh 服务器,需要下面的三个命令:?


VBoxManage setextradata 'Linux Guest' 'VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/Protocol' TCP?


VBoxManage setextradata 'Linux Guest' 'VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/GuestPort' 22?


VBoxManage setextradata 'Linux Guest' 'VBoxInternal/Devices/pcnet/0/LUN#0/Config/guestssh/HostPort' 2222?


说明:VboxManage 是一个命令行程序,请查询你的 VirtualBox 安装目录,'Linux Guest' 是虚拟主机名。guestssh 是一个自定义的名称,你可以任意设置,通过上面的三个命令,把虚拟机的 22 端口 转发到主机的 2222 端口。?


又比如,我在虚拟机 debian 上安装了 apache2 服务器,使用 80 端口,映射到主机的 80 端口。使用下面的命令。?


'C:\Program Files\innotek VirtualBox\VBoxManage.exe' setextradata 'debian' 'VBoxInternal/Devices/pcnet/0/LUN#0/Config/huzhangsheng/Protocol' TCP?


'C:\Program Files\innotek VirtualBox\VBoxManage.exe' setextradata 'debian' 'VBoxInternal/Devices/pcnet/0/LUN#0/Config/huzhangsheng/GuestPort' 80?


'C:\Program Files\innotek VirtualBox\VBoxManage.exe' setextradata 'debian' 'VBoxInternal/Devices/pcnet/0/LUN#0/Config/huzhangsheng/HostPort' 80?


注意:要使设置生效,请关掉 VirtualBox 再运行虚拟机,我把 VirtualBox 安装在 winxp 上,在虚拟机中安装 debian 4.02r ,虚拟机名是 debian ,并安装了 apache2 php5 mysql-server ,在主机上用 IE 浏览 http://localhost,成功转发到虚拟机 debian 的 apache2 web 服务器上?


上文出处: http://www.cnblogs.com/coltiam/archive/2010/03/26/1696939.html ?


个人感觉通过使用端口映射的方式很不爽,还不如直接桥接来的快,现在多数情况下连接到网络是没问题的,端口映射还需要在宿主跟虚拟机都额外开某个服务,感觉不爽。?


“网络”配置页面有 4 个方案:?


1:NAT 网络地址转换(Network Address Translation)?


2:Birdged Network 桥接?


3:Internal Network 内部网络(可以是虚拟机与虚拟机之间)?


4:Host-Only 只与主机通信(大概吧)?


安装完 VirtualBox2.2 后,主机多了一个“VirtualBox Host-Only Network ”本地网卡。?


--------------------------------------------------------------------?


我的网络环境:?


主机:?


系统:xp?


“本地连接”的 IP:由于是笔记本,经常换工作网络环境,都是通过 DHCP 分配的,有时候还无网络,“本地连接”有红叉(对主机与虚拟机通信有影响)。?


“VirtualBox Host-Only Network 网卡”IP:192.168.56.1 ,因为 VirtualBox 的 DHCP 服务器 IP 是 192.168.56.100,要在同一网段。?


虚拟机:要能与主机互相通信,要能访问互联网(不须要被互联网访问)。?


系统:win2003?


网卡 1,网卡 2,网卡 3 后面说各网卡的配置情况?


----------------------------------------------------------------------?


--------------------------- 各网卡的配置情况 --------------------------------------------?


网卡 1: 用 NAT 方案?


IP:10.0.2.15?


网关:10.0.2.2?


DNS:10.0.2.3?


为什么这样配置?因为 VirtualBox 的帮助中,有以下一段说明(英译汉):?


一台虚拟机的多个网卡可以被设定使用 NAT, 第一个网卡连接了到专用网 10.0.2.0,第二个网卡连接到专用网络 10.0.3.0,等等。默认得到的客户端 ip(IP Address)是 10.0.2.15,网关(Gateway)是 10.0.2.2,域名服务器(DNS)是 10.0.2.3,可以手动参考这个进行修改。?


NAT 方案优缺点:?


笔记本已插网线时: 虚拟机可以访问主机,虚拟机可以访问互联网,在做了端口映射后(最后有说明),主机可以访问虚拟机上的服务(如数据库)。?


笔记本没插网线时: 主机的“本地连接”有红叉的,虚拟机可以访问主机,虚拟机不可以访问互联网,在做了端口映射后,主机可以访问虚拟机上的服务(如数据库)。?


网卡 2:用 Birdged Network 方案?


IP:一般是 DHCP 分配的,与主机的“本地连接”的 IP 是同一网段的。虚拟机就能与主机互相通信。?


笔记本已插网线时:(若网络中有 DHCP 服务器)主机与虚拟机会通过 DHCP 分别得到一个 IP,这两个 IP 在同一网段。 主机与虚拟机可以 ping 通,虚拟机可以上互联网。?


笔记本没插网线时:主机与虚拟机不能通信。主机的“本地连接”有红叉,就不能手工指定 IP。虚拟机也不能通过 DHCP 得到 IP 地址,手工指定 IP 后,也无法与主机通信,因为主机无 IP。?


这时主机的 VirtualBox Host-Only Network 网卡是有 ip 的,192.168.56.1。虚拟机就算手工指定了 IP 192.168.56.*,也 ping 不能主机。?


网卡 3: 用 Host-Only 方案?


ip: VirtualBox 的 DHCP 服务器会为它分配 IP ,一般得到的是 192.168.56.101,因为是从 101 起分的,也可手工指定 192.168.56.*。?


笔记本已插网线时:虚拟机可以与主机的 VirtualBox Host-Only Network 网卡通信?


笔记本没插网线时:虚拟机可以与主机的 VirtualBox Host-Only Network 网卡通信?


这种方案不受主机本地连接(网卡)是否有红叉的影响。?


------------------------------------------------------------------?


以上三种方案,可以右击虚拟机窗口最下边 两个小电视 的图标快速切换。满足各种网络环境。?

用户头像

极客good

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
VirtualBox虚拟机网络设置(四种方式),java高级程序员简历