虚拟机下Ubuntu上网设置

CONNY~ 2024-06-19 13:07:02 阅读 65

文章目录

一、虚拟机上网的两种方式1.1 NAT模式(Network Address Translation)1.2 桥接模式(Bridge Mode)1.3 简介 二、实际配置2.1 NAT模式配置2.2 桥接模式配置

之前跟着博客配了好几个也没用,后来自己慢慢模式实践测试,终于可以了,下面总结给大家发出来,也方便自己后续查看。

一、虚拟机上网的两种方式

网络配置很重要,虚拟机下系统上网有两种方式,一种是NAT,一种是桥接模式

虚拟机上网有两种常见的模式:NAT(网络地址转换)和桥接模式。

1.1 NAT模式(Network Address Translation)

在NAT模式下,虚拟机的网络连接通过宿主机进行转发。宿主机充当一个中介,为虚拟机提供网络连接,并为其分配一个私有IP地址。虚拟机与外部网络通信时,它的网络数据包会经过宿主机,然后由宿主机将虚拟机的私有IP地址转换成宿主机的公共IP地址,并在外部网络中进行通信。外部网络无法直接访问虚拟机,只能通过宿主机来间接访问。

在这里插入图片描述

1.2 桥接模式(Bridge Mode)

在桥接模式下,虚拟机直接与物理网络中的其他设备相连,就像是一个独立的网络设备。虚拟机会获得与宿主机处于同一物理网络中的一个唯一IP地址,它可以直接与外部网络通信。虚拟机与外部网络之间的通信是透明的,外部网络设备可以直接与虚拟机通信,就像与其他物理设备一样。

在这里插入图片描述

1.3 简介

在NAT模式下,虚拟机的网络连接通过宿主机转发,使用宿主机的公共IP地址进行通信,外部网络无法直接访问虚拟机。

在桥接模式下,虚拟机直接与物理网络相连,获得一个独立的IP地址,可以直接与外部网络通信,外部网络设备可以直接访问虚拟机。

选择使用哪种模式取决于实际需求,NAT模式更适合一些简单的网络连接,而桥接模式则提供了更灵活和直接的网络访问方式。

还不懂?好吧,我再举个例子:

当使用NAT模式时,假设你的物理机(宿主机)的公共IP地址是192.168.0.100,而虚拟机在NAT模式下分配到的私有IP地址是192.168.0.101。那么,当虚拟机想要访问外部网络时,它会通过宿主机进行转发。

例如,虚拟机上运行着一个Web浏览器,你想要访问www.example.com这个网站。虚拟机的网络数据包会经过NAT转换,然后由宿主机将请求发送给外部网络。外部网络收到请求后,将响应发送回宿主机,然后宿主机再将响应转发给虚拟机。虚拟机内的Web浏览器就可以接收到来自www.example.com的响应,并显示在虚拟机的屏幕上。

当使用桥接模式时,虚拟机直接连接到物理网络中,就像是一个独立的网络设备。假设你的物理机连接到家庭路由器,并且你的虚拟机分配到了路由器分配的IP地址192.168.0.102。在桥接模式下,虚拟机可以直接与外部网络通信。

举个例子,你可以在虚拟机上运行一个FTP服务器,并将其设置为监听端口21。当外部网络中的其他设备(如笔记本电脑或手机)通过路由器访问192.168.0.102:21时,它们实际上是直接与虚拟机上的FTP服务器建立连接,进行文件传输操作。

二、实际配置

好,废话不多说,直接配置

2.1 NAT模式配置

在这里插入图片描述

先选中网络适配器,按照上面三个步骤执行,为什么要移除再添加呢,这样配置才会立马生效!!!这就是有时候跟着其他博文配置,最终也没配置成功的原因

打开编辑器可以看到:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在NAT模式下,PC机充当了一个路由器的角色。它既要跟上层的真实路由器通信,又要跟Ubuntu虚拟机通信。玩过路由器的同学就知道,路由器的上层网段和下层网段是不允许相同的,而我们常用的路由器的网段是192.168.1.0,所以为了避免冲突,软件自己便分配了一个不常用的网段给下层的设备。但也并不保险,如果你的上层路由器网段恰恰是192.168.107.0,那么需要更改这里的网段。

到这里就可以上网啦,如果NAT模式无法满足你测试开发板的需求,那么接下来介绍桥接模式的设置。

2.2 桥接模式配置

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/c4678e61abaf4b56b70a3f4415415012.png

同样的操作,一定要先将网络适配器(有什么后面会有数字,忽略即可)移除后添加噢,不然还得重新走一遍

设置桥接网络

在这里插入图片描述

在这里插入图片描述

不知道哪个的话,去windows下去查询

在这里插入图片描述

进入虚拟机,打开终端,进行网络配置

sudo vi /etc/netplan/01-network-manager-all.yaml

修改为:

etwork: version: 2 renderer: NetworkManager ethernets: ens36: # 网卡名 dhcp4: no # 设置为静态,如果动态改为yes,下面的参数都不需要设置了 addresses: [192.168.1.120/24] # 这个需要自己修改 optional: true gateway4: 192.168.1.1 # 这个需要自己修改,默认网关,与宿主机一致 nameservers: addresses: [8.8.8.8,114.114.114.114] # DNS

例如我需要设置静态IP为:192.168.1.120,网关为192.168.1.1,这个是网关地址,可以在window下去查询,进入window命令行,输入ipconfig,我使用的是WIFI,以自己的实际为准,可以查到默认网关

在这里插入图片描述

配置好后利用命令重启网络

sudo netplan apply

接下来就可以上网啦

在这里插入图片描述

编辑不易,解决你的问题的话,博友,博友,博友啊,

留下三连!!!



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。