想改一下虚拟机Ubuntu的网络配置,发现大寄特寄,于是迅速学习一下虚拟机网络模型,顺便复习下Ubuntu的网络配置

一、虚拟机网络模型

在虚拟化技术没出现之前,构成网络的元素都是实体的物理设备,比如交换机、路由器、网线等等,人们想要构建一个小型的局域网自己玩玩,都要买各种设备,成本高还不灵活。虚拟化技术普及之后,云计算开始大行其道,我们在自己的单机上就可以建各种虚拟机,想怎么玩就怎么玩。
目前虚拟机的网络模型常见的有桥接模式,NAT模式,主机模式,内部网络模式,这一点的选择在VMware Workstation创建虚拟机的环境可以自行选择网络模型。

(1)桥接模式(Bridge Adpater)

虚拟机桥接网络模型就是使用虚拟交换机(Linux Bridge),将虚拟机和物理机连接起来,它们处于同一个网段,IP 地址是一样的。在这个网络模型中满足以下特点,虚拟机之间可以彼此通信,虚拟机和主机之间可以彼此通信,当主机连上网时,虚拟机也可以上网。桥接网络一般也只适用于桌面虚拟机或者小规模网络这种简单的形式。

(2)NAT模式

又可以分为NAT和NAT网络两种,根据 NAT 的原理,虚拟机所在的网络和物理机所在的网络不在同一个网段,虚拟机要访问物理所在网络必须经过一个地址转换的过程,也就是说在虚拟机网络内部需要内置一个虚拟的 NAT 设备来做这件事。NAT和NAT网络的区别主要在于虚拟机能否相互通信。这种网络模型具有如下特点,虚拟机可以访问主机,但是主机不能访问虚拟机,除非设置了端口转发,如果主机可以上外网,那么虚拟机也可以。
在NAT中,主机上的虚拟机之间是互相隔离的,彼此不能通信,它们有独立的网络栈,独立的虚拟 NAT 设备,当然如果设置了端口转发也是可以进行通信的。

在NAT网络中,虚拟机之间共享虚拟 NAT 设备,彼此互通。

二、Ubuntu的网络配置

(1)网络配置工具Netplan

我的系统环境如下,一开始不知道有这个工具,在配置文件里面暴风寻找发现找不到,最后发现原来内置了这个玩意。Netplan是一个用于配置 Linux 网络的简单工具。 通过 Netplan ,你只需用一个 YAML 文件描述每个网络接口需要配置成啥样即可。 根据这个配置描述, Netplan 便可帮你生成所有需要的配置,不管你选用的底层管理工具是啥。

1
2
3
xichengchangjinglu@xichengchangjinglu-virtual-machine:/etc/netplan$ uname -a
Linux xichengchangjinglu-virtual-machine 5.15.0-52-generic #58-Ubuntu SMP Thu Oct 13 08:03:55 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

工作原理
Netplan 从 /etc/netplan/*.yaml 读取配置,配置可以是管理员或者系统安装人员配置; 也可以是云镜像或者其他操作系统部署设施自动生成。 在系统启动阶段早期, Netplan 在 /run 目录生成好配置文件并将设备控制权交给相关后台程序。

命令
Netplan 操作命令提供两个子命令:

  • netplan generate :以 /etc/netplan 配置为管理工具生成配置;
  • netplan apply :应用配置(以便生效),必要时重启管理工具;

因此在调整 /etc/netplan 配置后,需要执行netplan apply命令方能生效。

(2)网络配置实践

我们可以在配置文件中进行修改,Ubuntu也为我们提供了很便捷的可视化修改方法,在设置中打开如下界面即可进行快速配置。
![V7FW_U3JX@]R3_2CB8BHI9E.png](https://pic2.zhimg.com/80/v2-52ee8971e6c71bcdaf16ec93d53ed1a3_720w.webp?source=1940ef5c)