admin管理员组文章数量:1591452
1、背景环境
在我们需要进行集群部署的软件学习的时候,最必要的是搭建好一个服务器环境,其中的关键需求就是能够让服务器互联。因此,我写了这篇文章的重要任务就是分享如何能够将服务器互联,也就是搭建多节点的虚拟机环境。
通过本文你可以了解到的内容有:
- ① 计算机网络的基本内容;
- ② VMware Workstation 的虚拟网络配置;
- ③ Linux 网络基础命令以及网络配置方法。
实验环境:
- VMware® Workstation 16 Pro
- Ubuntu 22.04.1 LTS
2、计算机网络基础
在开始虚拟网络配置之前,我们需要回答这样一个问题:电脑是如何上网的?
当然这个问题不难回答,我们用网线连接电脑或者用无线网卡连接 WIFI 就可以上网了,但是我想进一步回答这个问题,让我们一起讨论其中的基础服务。
-
局域网(LAN,Local Area Network):指在一个相对较小的地理范围内连接多台计算机设别,比如办公室、家庭等等。
-
广域网(WAN,Wide Area Network):指一种覆盖范围非常广泛的计算网络,可以跨越多个城市、国家,甚至洲际。
-
网关(Gateway):指一种网络设备或软件,用于连接两个不同的网络或协议,并在它们之间进行数据交换。
一般, 我们家里的网络就是局域网或者叫内网,而广域网相对的就是互联网或者叫外网,想要让内网和外网相连接,就需要网关。
路由器(Router) 是常用的网络设备,它主要用于连接两个或多个网络,并且在这些网络之间转发数据包,起到一个网关的作用。
在我们购买了网络服务后,互联网提供商会分配一个公共 IP 地址给到路由器,这样我们所有的上网请求最终都将通过这个公共的 IP 地址去请求,并且也通过这个 IP 地址来接收服务器的响应。
这里我们就会有一些疑问:
- 1、我有手机、平板、电脑等等这些设备,怎么通过一个 IP 地址来去访问的呢?
- 2、假设我有100台电脑,我难道要一个个地去给它们配置 IP 地址吗?
- 3、我上网的时候,为什么我可以通过输入网址来去访问网站而不是 IP 地址?
【问题一の解决】
网络地址转换(NAT,Network Address Translation):是一种将私有 IP 地址转换为公共 IP 地址的技术,它允许多个设备共享一个公共 IP 地址,从而节省 IP 地址资源。
【问题二の解决】
动态主机配置协议(DHCP,Dynamic Host Configuration Protocol):是一种自动分配 IP 地址的协议,它简化了网络管理,避免了手动配置每个设备的 IP 地址。
【问题三の解决】
域名系统(DNS,Domain Name System):将我们容易读的域名转换为计算机可以读的 IP 地址,比如将 www.example
转为 12.13.33.43
。
3、虚拟网络连接模式
我们先了解到 VMware Workstation 中常见的网络连接模式。
在编辑->虚拟网络编辑器中,我们一般会有三个虚拟网络分别是 VMnet0
、VMnet1
和 VMnet8
,分别负责进行不同的连接模式,并且在启用了 DHCP
功能的时候,虚拟机地址是动态分配的。
(1)桥接模式 Bridged Mode
- 定义:桥接模式将虚拟机的网络适配器直接连接到物理网络,就像虚拟机和主机在同一个交换机上。这样,虚拟机可以像物理机一样获取IP地址,并与网络中的其他设备通信。
- 优点:虚拟机可以直接访问局域网中的其他设备,适合需要与其他设备进行直接通信的场景。
- 缺点:需要确保网络中有足够的 IP 地址分配给虚拟机。
虚拟机 <-> 虚拟机 | 虚拟机 -> 宿主机 | 宿主机 -> 虚拟机 | 虚拟机 -> 互联网 | 互联网 -> 虚拟机 | |
---|---|---|---|---|---|
桥接模式 | √ | √ | √ | √ | √ |
【注意】:桥接模式下,可以将虚拟机和宿主机理解为同一局域网下的设备,因此它们之间是能够相互通信的,也因为虚拟机和宿主机处于同一个网段,所以互联网会将虚拟机视作同一网关下的不同设备来进行访问。
(2)NAT模式 Network Address Translation Mode
- 定义:NAT 模式通过主机的网络连接来访问外部网络,同时用虚拟网卡实现主机网络与虚拟机网络通信。虚拟机通过 NAT 设备和 DHCP 服务器获取 IP 地址,并通过主机的 IP 地址访问外部网络。
- 优点:虚拟机可以访问外部网络,而不需要额外的 IP 地址,适合需要访问外部网络但不需要被外部网络访问的场景。
- 缺点:因为虚拟机和主机共享一个网络标识,所以外部网络无法直接访问虚拟机。
虚拟机 <-> 虚拟机 | 虚拟机 -> 宿主机 | 宿主机 -> 虚拟机 | 虚拟机 -> 互联网 | 互联网 -> 虚拟机 | |
---|---|---|---|---|---|
网络地址转换 | √ | √ | √ | √ | × |
【注意】:当我们尝试把 VMnet8
虚拟网卡禁用时,会发现宿主机无法 ping 通虚拟机,而虚拟机可以 ping 通宿主机。这是因为在 NAT 模式下,虚拟网卡被禁用后,宿主机无法通过 NAT 设备去找到虚拟机的 IP 地址;而虚拟机仍然可以通过宿主机的物理网卡进行通信,因为这时宿主机就相当于一个路由器。
(3)主机模式 Host-Only Mode
- 定义:主机模式将虚拟机与主机隔离开来,只允许虚拟机与主机之间通信。虚拟机通过虚拟网卡和虚拟交换机与主机通信。
- 优点:适合需要隔离虚拟机与外部网络的场景,确保虚拟机的安全性。
- 缺点:虚拟机无法访问外部网络。
虚拟机 <-> 虚拟机 | 虚拟机 -> 宿主机 | 宿主机 -> 虚拟机 | 虚拟机 -> 互联网 | 互联网 -> 虚拟机 | |
---|---|---|---|---|---|
仅主机模式 | √ | × | √ | × | × |
【注意】:虚拟机是无法 ping 通宿主机的原因可能是仅主机模式下是没有 NAT 设备的,因此也就没有从 VMnet1
到 LAN
的网关,所以虚拟机无法 ping 通宿主机;但是因为有虚拟网卡,所以宿主机可以 ping 通虚拟机。
4、虚拟机多节点环境配置
根据上述内容来说,我们想配置一个多节点的 Linux 虚拟机环境的话,就要这样做:
- 1、打开虚拟网络编辑器,设置
VMnet8
也就是 NAT 模式下的 子网IP 和 子网掩码; - 2、分别给虚拟机配置静态 IP 地址,这样方面对每个设别进行管理。
这里,给到实践要配置的具体参数,参数完全可以根据实际需求进行更改,
VMnet8 子网IP | VMnet8 子网掩码 | VMnet8 网关 | Master IP地址 | Node1 IP地址 | Node2 IP地址 |
---|---|---|---|---|---|
192.168.247.0 | 255.255.255.0 | 192.168.247.2 | 192.168.247.128 | 192.168.247.129 | 192.168.247.130 |
①设置 VMnet8
虚拟网络的子网、掩码、网关
②配置静态 IP 地址
首先我们切换到 root
模式,在管理员模式下,编辑 /etc/netplan/01-network-manager-all.yaml
的文件。
su root
vim /etc/netplan/01-network-manager-all.yaml
然后,大概的文件格式如下,我们把 DHCP
服务关闭,并且设置对应的网关,此外 DNS
服务可以设置为网关或者其他的知名 DNS
服务器。
# Let NetworkManager manage all devices on this system
network:
ethernets:
ens33: # network adapter
dhcp4: false
dhcp6: false
addresses:
- 192.168.247.128/24 # static IP
routes:
- to: default
via: 192.168.247.2 # gateway
nameservers:
addresses:
- 192.168.247.2 # local domain
- 8.8.8.8
version: 2
renderer: NetworkManager
接着,我们将设置好网络配置应用一下,然后看看有没有设置成功。
netplan apply
ip address
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:cd:f1:4d brd ff:ff:ff:ff:ff:ff
altname enp2s1
inet 192.168.247.128/24 brd 192.168.247.255 scope global noprefixroute ens33
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fecd:f14d/64 scope link
valid_lft forever preferred_lft forever
最后,我们只需要对虚拟机进行克隆,并且修改对应的静态 IP 地址就可以了。
③测试虚拟机的互联
Master
虚拟机视角分别 ~·
Master
虚拟机 -> Node1
虚拟机 / Node2
虚拟机
参考内容
- 配置桥接模式网络
- 配置网络地址转换
- Linux IP 和 网关配置
- Linux 网络 IP route 命令
- 配置仅主机模式网络连接
- 路由器基础服务详解 - DHCP, DNS, NAT
- Ubuntu 22.04 LTS 静态 IP 配置及源更新
- Ubuntu 22.04 如何配置静态 IP、网关、DNS
- 一文详解vmware虚拟机nat、桥接、仅主机模式的区别
- VMware 虚拟机三种网络模式 桥接模式、NAT模式、仅主机模式
版权声明:本文标题:【Linux|网络】Ubuntu 22.04.1 LTS 虚拟网络连接模式、多节点实验环境搭建 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1728115200a1145953.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论