虚拟机中的网络配置
本文介绍三种虚拟机中常用的网络配置模式:NAT(网络地址转换模式)、Bridged nerworking(桥接网络模式)和 Host-only(主机模式)。
Network Address Translation (NAT)
NAT 模式使用了 NAT 服务来给虚拟网络提供网络连接。
这种模式下,虚拟机能访问外部网络,外部无法直接连接到内部网络,除非使用端口映射 port forwarding。
NAT 一般与 DHCP 一起使用,以动态分配虚拟机内网 IP,无序手动配置内外部网络环境。当然,为了让虚拟机每次开机时拥有固定的 IP,也可以关闭掉 DHCP 服务,转而自己配置虚拟机的网络。虚拟机是 linux 的情况下,可以通过修改/etc/network/interfaces 实现开机固定 IP,示例如下:
1 2 3 4 5 6 7 8 9 10 11 12 |
|
实现原理如图:
Bridged networking(桥接)
在桥接模式下,本地物理网卡和虚拟网卡通过虚拟交换机进行桥接(无需在 host 上再开启新的虚拟网卡),物理网卡和虚拟网卡在拓扑图上处于同等地位,虚拟机就像是一台真实主机一样存在于局域网中。
桥接模式无法与 DHCP 一起使用,需要手动的配置虚拟机的网络参数,包括 IP、网关、子网掩码和 dns。其中网关、子网掩码、dns 都应该与 host 设置相同值。在 linux 虚拟机中的设置示例如下:
1 2 3 4 5 6 7 8 9 |
|
实现原理如图:
相比 NAT,桥接模式有一个前提条件,就是要获得另外一个 host 所在网段的 IP。在内网环境中还很容易,如果是 ADSL 宽带就比较麻烦了,ISP 一般是不会大方的多提供一个公网 IP 的,那种情况下,使用 NAT 或许是更好的选择。
Host-only networking(主机)
以 host 为网关建立了新的虚拟网络,虚拟机无法访问外部网络,因此很安全。
和 NAT 一样,也使用了 DHCP 服务做虚拟网络内的 IP 自动分配。
另外,host-only 模式下也可以进行扩展配置,让虚拟网络的机器也能访问到外网,比如自定制 nat 和 dhcp 的使用等等。
如图:
参考资料
图片引用自 :解析虚拟 VMware 三种网络模式根本区别