外网IP,内网IP的关系
在这三类地址中,绝大多数的IP地址都是公有地址,需要向国际互联网信息中心申请注册。但是在IPv4地址协议中预留了3个IP地址段,作为私有地址,供组织机构内部使用。
这三个地址段分别位于A、B、C三类地址内: A类地址:10.0.0.0--10.255.255.255 B类地址:172.16.0.0--172.31.255.255C类地址:192.168.0.0--192.168.255.255
IP地址范围:1.0.0.1——255.255.255.254
虚拟机的网络设置
VirtualBox 可以为每一个虚拟机分配8个网卡。每一个网卡的连接方式可以选为下列之一:
- Not attached
- Network Address Translation (NAT)
- Bridged networking
- Host-only networking
- Internal networking
- Generic networking
去掉第一个和最后一个,我们关心的只剩下4个:
(以下假定host在192.168.1.*网段中)
Network Address Translation (NAT)
Host | 192.168.1.3 |
---|---|
Guest1 | 10.0.2.15 |
Guest2 | 10.0.2.15 |
... | 10.0.2.15 |
NAT是在虚拟机中访问外部网络的最简单的方式,是VirtualBox默认的网络模式。通常不需要对host和guest进行任何设置。
但由于虚拟机连接到的是VirtualBox内部的私有网络,使得虚拟机对其他虚拟机、对host以及网络上的其他计算机都是不可见的。为了使其某些端口对外部可见,需要使用 port forwarding。
通过VirtualBox界面或命令行,对名为windowsxp的虚拟机的nat网卡设置一个转发规则Rule1
VBoxManage modifyvm "windowsxp" --natpf1 "Rule1,tcp,,2222,,22"
格式:
--natpf<1-N> [],tcp|udp,[ ], ,[ ],
Bridged networking
它可以满足虚拟机中更高级的网络需求,比如运行servers等。它通过host的网卡,直接连入到host网络中。因此,虚拟机能被分配到一个中独立的IP,所有网络功能完全和在网络中的真实机器一样。
Host | 192.168.1.3 |
---|---|
Guest1 | 192.168.1.4 |
Guest2 | 192.168.1.5 |
... | 192.168.1.* |
Internal networking
用来创建虚拟机间的网络,对host以及外部的计算机不可见。
Host | 192.168.1.3 |
---|---|
Guest1 | 169.254.75.244 |
Guest2 | 169.254.75.245 |
... | 169.254.. |
Host-only networking
Host | 192.168.1.3 |
---|---|
192.168.56.1 | |
Guest1 | 192.168.56.101 |
Guest2 | 192.168.56.102 |
... | 192.168.56.* |
Host和若干个虚拟机之间的网络。Host中自动增加一个有点类似于local loopback接口,和Guest位于同一网段。
与外界的网络绝缘。不能访问外界网络,也不能被外部计算机访问。
其他
由于每个虚拟机都可以设置8个网卡,每个网卡可以选不同的模式,故而可以有各种组合,从而实现各种效果。