虚拟机-网络配置

简介

虚拟机的网络配置是虚拟化技术中非常重要的一环。它决定了虚拟机如何与外部网络进行通信,以及虚拟机之间的网络连接方式。一般有以下 3 种模式。

仅主机模式

虚拟机和宿主机可以互相访问,不能访问外部网络。几乎不用这种模式。

桥接模式

介绍

虚拟机直接连接到物理网络,获得一个独立的IP地址,可以像物理机一样直接访问网络。虚拟机和宿主机共用宿主机的真实网卡,进行对外互联网访问。

VM 配置

服务器配置

首先查看物理机网关配置,比如说宿主机的网卡配置如下图所示: 网关是192.168.1.1 宿主机ip是192.168.1.19 子网掩码是255.255.255.0

进入虚拟机的/etc/sysconfig/network-scripts目录修改虚拟机的网卡配置,我的网卡名称是ens33,你的可能不一样。

桥接模式分成两种网络 IP 分配机制,一种是自动分配 ip ,一种是固定静态 ip 。

动态

接的自动模式,会根据宿主机网卡的网段内自动为虚拟机分配一个 ip 地址。
修改虚拟机网卡配置,设置为自动模式,修改为一下内容:其中###备注的为必填项

TYPE="Ethernet" ### 设备类型:以太网 
PROXY_METHOD="none" # 代理模式:关闭
BROWSER_ONLY="no" # 支持浏览器:否
BOOTPROTO="dhcp" ### 引导协议:none(手动配置和)/dhcp(动态IP)/ static(静态IP)
DEFROUTE="yes"  # 设置该网卡为默认路由
IPV4_FAILURE_FATAL="no" # 是否开启ipv4错误检测
IPV6INIT="yes" 
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33" ### 网卡连接名称
UUID="cff363cf-0dca-40c4-afc3-e203c75e44a5"
DEVICE="ens33" ### 网卡设备名称
ONBOOT="yes" #### 开机或者重启时自动启动该网卡配置

静态IP

桥接的静态模式,根据虚拟机的网卡配置分配IP
手动写死IP等信息,修改为一下内容:其中###备注的为必填项

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" ### 设置为静态ip
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="cff363cf-0dca-40c4-afc3-e203c75e44a5"
DEVICE="ens33"
ONBOOT="yes"

IPADDR=192.168.1.22  ### 设置的静态ip地址,在网段内自己定一个即可,重启虚拟机也不会变
NETMASK=255.255.255.0 ### 掩码,要和物理机的网卡保持一致
GATEWAY=192.168.1.1  ### 网关,要和物理机的网卡保持一致
DNS1=192.168.1.1  ### DNS,要和物理机的网卡保持一致,一般和网关一样即可

验证

无论是动态还是静态,最后通过命令systemctl restart network 重启网络配置即可。

通过命令 ifconfig ens33 查看网卡的配置是否生效

测试宿主机和虚拟机能相互ping通, 虚拟机能ping通互联网就成功了。

NAT模式

介绍

NAT(Network Address Translation)网络是虚拟机通过宿主机共享网络连接,虚拟机获得的IP地址是私有地址,需要通过宿主机进行NAT转换才能访问外部网络。这种方式简单易用,适合个人使用。

VM 配置

首先设置虚拟机的网络配置为 nat 模式,配置如下:

服务器配置

通过上面的虚拟机 VM 配置,可以知道虚拟机的虚拟网卡配置, 网关是192.168.119.2 子网掩码是255.255.255.0
和桥接模式一样也有两种 ip 配置,自动和静态,同理配置 /etc/sysconfig/network-scripts 目录下的网卡配置文件即可。

自动

NAT 的自动模式,会根据虚拟机的虚拟网卡的网段内自动为虚拟机分配一个 ip 地址。
修改虚拟机网卡配置,设置为自动模式,修改为一下内容:其中###备注的为必填项。
设置后会为虚拟机分配一个192.168.119.* 的随机 ip 地址。

TYPE="Ethernet" ### 设备类型:以太网 
PROXY_METHOD="none" # 代理模式:关闭
BROWSER_ONLY="no" # 支持浏览器:否
BOOTPROTO="dhcp" ### 引导协议:none(手动配置和)/dhcp(动态IP)/ static(静态IP)
DEFROUTE="yes"  # 设置该网卡为默认路由
IPV4_FAILURE_FATAL="no" # 是否开启ipv4错误检测
IPV6INIT="yes" 
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33" ### 网卡连接名称
UUID="cff363cf-0dca-40c4-afc3-e203c75e44a5"
DEVICE="ens33" ### 网卡设备名称
ONBOOT="yes" #### 开机或者重启时自动启动该网卡配置

静态

NAT的静态模式,手动写死IP等信息,修改为一下内容:其中###备注的为必填项

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" ### 设置为静态ip
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="cff363cf-0dca-40c4-afc3-e203c75e44a5"
DEVICE="ens33"
ONBOOT="yes"

IPADDR=192.168.191.5  ### 设置的静态ip地址,在网段内自己定一个即可,重启虚拟机也不会变
NETMASK=255.255.255.0 ### 掩码,要和虚机网卡保持一致
GATEWAY=192.168.119.2  ### 网关,要和虚机网卡保持一致
DNS1=192.168.119.2  ### DNS,要和虚机网卡保持一致,一般和网关一样即可

最后通过命令systemctl restart network 重启网络配置即可。

总结

桥接和NAT模式的区别仅仅只是虚拟机和宿主机之间通信的网卡不同。

桥接的通信网卡是宿主机的真实网卡

NAT的通信网卡是虚拟机的虚拟网卡

他们都有自动和静态的区别, 直接通过修改配置文件的即可,自动的配置都一样, 静态的配置只要保证网关、掩码、DNS 和通信网卡的配置一样即可。

SystemCaller
SystemCaller

https://gravatar.com/noisily745e35dad0

文章: 47

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注