-
虚拟机使用物理主机上的网络适配器直接连接到物理网络中。
-
这意味着虚拟机就像是通过网线直接连接到路由器一样,成为物理网络中的一个独立设备。
-
虚拟机可以获取一个永久的IP地址,通过DHCP或手动设置。
-
虚拟机和物理主机都可以访问对方以及公共网络中的其他设备,比如文件服务器、打印机等。
-
对网络其他设备来说,虚拟机就是一个独立的计算机,不知道它其实运行在虚拟环境中。
-
让虚拟机支持移动使用,可以选择自动更新IP地址设置,随着物理网络的变化同步变化。
所以简单说,桥接网络让虚拟机直接“桥接”到主机所在的物理网络中,成为该网络中的一个独立实体,实现虚拟机与物理网络的透明连接。这种方式最直接最简单地让虚拟机访问外部网络。
是的,你理解正确。用桥接网络配置虚拟机的含义就是:
-
虚拟机和宿主机(本机)共享同一个物理网络适配器,都通过这个适配器连接到外部网络。
-
对外看,虚拟机就是一个独立的计算机,和宿主机共用一个IP地址段,都可以直接访问外部网络。
-
虚拟机获取的IP地址和宿主机是不同的,但都属于同一个网络划分。
-
虚拟机和宿主机之间,以及它们与外部网络中的其他设备,都可以直接连接通信,互相访问资源。
-
桥接让虚拟机看起来就是一个真实存在的网络设备,和宿主机公用同一个网线连接到路由器。
所以总之,桥接模式下,虚拟机和宿主机在网络层面上看起来就如同两个实际运行在同一个物理网络上的独立设备。它们共享同一个网络适配器,彼此与外部都可以直接正常通信访问。
网络适配器的概念和与其他网络设备的关系:
-
网络适配器(Network Adapter):计算机用来连接网络的硬件设备,比如网卡。它负责将计算机上的网络连接转化为计算机可以识别的物理信号。
-
与光猫的关系:光猫是集交换+路由+门户授权等功能的设备,通过光纤作为传输介质连接到互联网。计算机通过网卡连接到光猫提供的以太网端口,实现与互联网的连接。
-
与WiFi的关系:WiFi就是使用无线技术(wifi信号)连接的网络适配器。室内无线路由器相当于光猫,计算机通过安装wifi网卡实现无线连接。
-
与网线的关系:使用网线直接连接计算机网卡与路由器的以太网端口,也实现了联网。这是有线连接的一种,速度更快可靠性好,但不如WiFi便携。
总之,网络适配器负责计算机与外部网络设备(如光猫、路由器)之间的物理连接,可以是有线也可以是无线;而光猫、WiFi路由器等设备提供最后通往互联网的网关接入服务。它们通过各种传输 medium 相连实现整体网络连接。
是的,桥接模式下虚拟机和宿主机的原理,就是:
-
它们共用同一个物理网络接口(网卡)连接到外部网络。
-
外面看这两个设备都在同一个广播域内,同属一个网段。
-
但是给它们分配的IP地址是不同的,不会重复。
-
例如一个路由器提供的局域网192.168.1.0/24网段:
-
宿主机 ipaddr: 192.168.1.100
-
虚拟机 ipaddr: 192.168.1.101
-
它们的网关都指向同一个路由器
所以简单来说,桥接模式是通过:
-
共用同一个物理网络接口
-
但给不同设备分配不同非重复IP
-
使它们看起来像是同一物理网络下的两个独立主机
从而实现虚拟机直接连接外网,与宿主机和其他设备一起作为同一个广播域中的网络主机来通信。
桥接模式和NAT模式在虚拟机网络连接方式上有以下主要区别:
-
桥接模式:
- 虚拟机直接连接到同一物理网络,获取外部IP地址
- 虚拟机视为网络中一个独立主机
- 易于直接互连,但IP地址需手动管理
-
NAT模式:
- 虚拟机仅在内部网络中获取IP地址
- 虚拟机对外 traffic 通过宿主机网卡映射外部IP
- 宿主机实现虚拟机与外网通信的地址转换
- IP地址自动管理,但网间通信需映射端口
比较来说:
-
桥接方式更直接简单,虚拟机完全等同真实主机。
-
NAT方式虚拟机仅在内网可见,简化IP管理但需要NAT映射支持外网访问。
-
桥接适用于需要直接对外开放服务的虚拟机。
-
NAT适用于不需要对外直接访问的内部服务VM。
所以两种模式选择根据虚拟机的网络连接需求来定。一般来说NAT使用更普遍一些。
NAT模式下,虚拟机网络连接的工作原理是:
-
虚拟机安装进来后,会在虚拟交换机中自动获取一个内网IP地址,例如192.168.1.101
-
宿主机连接外网,使用真实公网IP,例如220.181.38.107
-
当虚拟机想访问外网时,它发起的请求会带有内网IP 192.168.1.101
-
宿主机的NAT功能将会捕获这类报文,记录语句IP和端口映射关系表
-
宿主机使用自己的公网IP 220.181.38.107向外网发起请求
-
NAT表帮助外网服务器识别是哪个内网IP的请求,回包也找到映射后返回给客户端
-
这样外界看不到内网设备,但内网可以通过NAT与外网通信
-
虚拟机IP自动分配管理,但要外连需映射对应端口,如2280->22
所以NAT实现了虚拟机访问外网的地址转换,隐藏了内网网络结构与设备信息。
NAT实现地址转换主要依靠的是路由器/防火墙等设备的网络地址转换(NAT)功能,不是通过交换机来实现的。
具体过程是:
-
虚拟机通过虚拟交换机获取内部IP,如192.168.1.102
-
虚拟机发出外网请求报文,目标地址是外网服务器IP,源地址是内部IP 102
-
该报文通过虚拟化软件 forwarded 到宿主机
-
宿主机上运行的NAT软件或功能模块捕获这个报文
-
NAT根据自身规则,将源地址从102转换为宿主机公网IP,比如101.68.200.25
-
经过宿主机发往外网,外网服务器收到源地址是101.68.200.25
-
返回报文,NAT根据记录映射源IP和端口,还原为内部102后返回虚拟机
所以NAT类似一个本地VPN,通过地址转换隐藏内部网络,但不是依靠交换机,而是利用NAT软件模块完成源地址转换。所有的转发都是在网络层完成,不通过交换功能。
主要看成是一个类似本地VPN服务的地址转换功能,而不是通过交换机转发数据包实现的。
虚拟机的主机模式与桥接模式和NAT模式有以下不同:
- 主机模式(Host-only):
虚拟机获得一个专用的主机网络地址,只能与宿主机直接通信,不能访问外网。
- 工作原理:
虚拟机和宿主机通过一个专用虚拟网络接口连接,形成一个逻辑隔离的私有网络。
- IP地址范围:
使用像192.168.56.0/24这样的专用地址空间。
- 应用场景:
适合虚拟机之间需要直接互联的情况,例如测试环境中的多个虚拟机。
- 与桥接模式不同:
桥接模式下虚拟机是真实网络节点,主机模式下是一个逻辑隔离网络。
- 与NAT模式不同:
NAT模式下可以访问外网,主机模式完全隔绝外网访问。
总之,主机模式 build 一个宿主机和虚拟机之间的专用网络,用于二者直接通信,而隔绝外网访问,更高级别的封装与隔离。
在主机模式下,虚拟机之间的网络连接是通过虚拟交换机来实现的:
-
主机模式下会创建一个虚拟网络接口,比如virt0。
-
这个virt0接口实际上是一个混杂模式的虚拟交换机。
-
宿主机和每个虚拟机都会被分配到这个虚拟交换机上,获得独立的IP地址。
-
虚拟交换机负责转发宿主机和不同虚拟机之间的数据包。
-
数据包在虚拟交换机内转发,不会涉及真实的物理交换机或网络设备。
-
虚拟机看起来就是直接连接在同一个层2交换网络上的。
-
实现了宿主机和各虚拟机在同一个虚拟局域网内通信。
所以简单说,主机模式下使用虚拟交换机模拟了一个完全封闭的虚拟局域网环境,各个VM直接通过交换机连接,实现了封锁于外部网络的内部互联能力。这就是主机模式的运作原理。