VirtualBox Ubuntu20.04 网络设置
虚拟机需要既能与宿主机通讯,又能访问公网,在 VirtualBox 可通过 Nat 实现连接外网,通过 Host-Only 实现与宿主机通讯。
VirtualBox 网络的几种连接方式
- NAT 模式
- 如果主机可以上网,虚拟机可以上网
- 虚拟机之间不能ping通
- 虚拟机可以ping通主机(此时ping虚拟机的网关,即是ping主机)
- 主机不能ping通虚拟机
- 桥接模式
- 如果主机可以上网,虚拟机可以上网
- 虚拟机之间可以ping通
- 虚拟机可以ping通主机
- 主机可以ping通虚拟机
- 以上各点基于一个前提:主机可以上网
- 如果主机不可以上网,所有1-4特点均无
- Host-Only Adapter 模式
- 虚拟机不可以上网
- 虚拟机之间可以ping通
- 虚拟机可以ping通主机(注意虚拟机与主机通信是通过主机的名为VirtualBox Host-Only Network的网卡,因此ip是该网卡ip 192.168.56.1,而不是你现在正在上网所用的ip)
- 主机可以ping通虚拟机
NAT 和 Host-Only 双网卡设置
先装个网络工具,可执行 route
等命令
## ubuntu 下
sudo apt install net-tools
关闭虚拟机,打开管理>>全局设定>>网络,点击右侧 + 就会创建一个 NatNetwok,点击 ⚙ 进行设置
进入管理>>主机网络管理器,创建适配器并启用,手动配置网卡
DHCP 设置如下,可根据自己需要设置
在系统网络设配器可看到
右键虚拟机设置,网卡1设置 NAT 模式
网卡2设置 Host-Only ,界面名称选择刚创建的适配器
启动虚拟机,这里用的是 ubuntu 20.04 版本, sudo vi /etc/netplan/00-installer-config.yaml
编辑文件,须严格按照 yaml 文件格式填写。
# This is the network config written by 'subiquity'
network:ethernets:enp0s3:addresses: []dhcp4: trueenp0s8:dhcp4: falseaddresses: [192.168.56.102/24]nameservers:addresses: [192.168.56.1]version: 2
:x
保存后 sudo netplan apply
让网络设置生效
enp0s3 就是 NAT 网络的网卡,enp0s8 则是 Host-Only 网络,两个网卡设置别搞反了。
不用设置网关 gateway4,用默认的就行,设置错了可能反而有问题。
route
命令看下路由表,如果设置错了外网不通可看下有没有配错,我一开始 enp0s8
设置错了 gateway4 不是用的 default 网关导致外网不通。
nathan@ubuntu20:~$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.0.2.2 0.0.0.0 UG 100 0 0 enp0s3
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s3
10.0.2.2 0.0.0.0 255.255.255.255 UH 100 0 0 enp0s3
192.168.56.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s8
ip addr
看下最终的网络
nathan@ubuntu20:~$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 08:00:27:54:b0:94 brd ff:ff:ff:ff:ff:ffinet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic enp0s3valid_lft 85761sec preferred_lft 85761secinet6 fe80::a00:27ff:fe54:b094/64 scope link valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000link/ether 08:00:27:e4:75:f1 brd ff:ff:ff:ff:ff:ffinet 192.168.56.102/24 brd 192.168.56.255 scope global enp0s8valid_lft forever preferred_lft foreverinet6 fe80::a00:27ff:fee4:75f1/64 scope link valid_lft forever preferred_lft forever
让后宿主机可通过 192.168.56.102 连接虚拟机了。
附 CentOS 7 的配置
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=7f1bc04e-54e7-49f6-8597-29085d9ec3de
DEVICE=enp0s3
ONBOOT=yes
IPADDR=192.168.56.101
ip addr
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 08:00:27:87:2e:ee brd ff:ff:ff:ff:ff:ffinet 192.168.56.101/24 brd 192.168.56.255 scope global enp0s3valid_lft forever preferred_lft foreverinet6 fe80::b853:ee1c:d582:c407/64 scope link valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 08:00:27:fe:67:25 brd ff:ff:ff:ff:ff:ffinet 10.0.3.15/24 brd 10.0.3.255 scope global dynamic enp0s8valid_lft 86292sec preferred_lft 86292secinet6 fe80::2926:9286:bfb2:d040/64 scope link valid_lft forever preferred_lft forever
参考
- [1] VirtualBox Ubuntu16虚拟机网络环境NAT/Host Only模式
- [2] VirtualBox双网卡虚拟机LinuxNAT不能上网
VirtualBox Ubuntu20.04 网络设置相关推荐
- 解决Ubuntu20.04网络配置的问题
在Ubuntu20.04版本中,没有/etc/network/interfaces文件,而是使用/etc/netplan/01-network-manager-all.yaml文件配置网络 目录 网络 ...
- virtualbox ubuntu20.04 配置共享文件夹
主机:Windows 10 虚拟机:VirtualBox + Ubuntu20.04 1. 在VBox中设置如下 2. 进入Ubuntu 20.04 系统安装增强工具 点击设备 >>> ...
- 在 VirtualBox 中 CentOS 网络设置
转自:本文发表于水景一页.永久链接:<http://cnzhx.net/blog/minimal-centos-in-virtualbox/>.转载请保留此信息及相应链接. 4. 设置¶ ...
- 在ubuntu20.04中设置锁屏背景(亲测有效)
在ubuntu20.04中设置锁屏背景 1.新建文件夹 打开终端 输入: cd ~ mkdir software cd software/ mkdir images 在根目录创建一个software文 ...
- 树莓派Ubuntu 20.04网络设置
树莓派Ubuntu 20.04网络设置 参考文档:Wi-Fi or Ethernet 参考文档:树莓派Ubuntu网络设置 参考文档:Netplan--新一代网络配置工具 参考文档:Netpan官方文 ...
- Ubuntu20.04防火墙设置(简易教程)
前言 在现在这个网络越发便捷的社会,各种网络勒索病毒层出不穷,即使是Google浏览器也是在不断的更新版本修复漏洞.很多人认为只有Windows系统才容易中病毒,若使用Linux系统就不容易中病毒 ...
- 【开箱即用】VirtualBox Ubuntu20.04.6、22.04.2虚拟机下载
简介 今天继续我们的开箱即用系列. 为了简化Ubuntu虚拟机的制作,减少重复劳动,提高生产效率,本公众号提供了基于VirtualBox制作的Ubuntu纯净虚拟机,供学习交流使用. 下载 Ubunt ...
- Ubuntu20.04网络配置
前言 网络配置 静态指定 动态分配 保存生效 前言 在Ubuntu20.04版本之后,网络配置引入了netplan来进行管理, 与之前修改/etc/network/interfacese不一样了. 网 ...
- Ubuntu20.04网络连接不上
1.查看本机网卡命令 ip a 得到本机网卡编号 2.编辑连接文件(无则创建) sudo vim /etc/network/interfaces auto lo iface lo inet loopb ...
最新文章
- npm install 提示权限不足 Error: EPERM: operation not permitted, unlink XXX
- python 保存内容到记事本里面
- 如何判断设备是上电复位还是软复位(主动调用复位接口或者看门狗复位,W600)
- 四川c语言二级成绩查询,四川省计算机等级考试二级C语言考试分析(hcy__ ).ppt
- HTML+CSS+JS实现 ❤️绘制卡丁车动漫特效❤️
- (转)淘淘商城系列——商品搜索功能Service实现
- 为解决半导体供应短缺问题,全球半导体厂商迅速增产
- 我爱人71年3月出生,档案招工表填成74年了,如何办理退休?
- Strom 可定制任务调度策略(Pluggable Scheduler)
- 漏洞:互联网时代的阿喀琉斯之踵 挖掘漏洞哪家强?
- SHEL中调用uci
- 物联计算机大赛,计算机与物联网学院在本次计算机设计大赛中喜获佳绩
- 牛客 · 奇♂妙拆分
- termux python_【小白教程】Termux实现安卓手机Python编程
- 日志配置:logging.file.path与logging.file.name的区别
- 百度联盟原负责人周品创办B2C网站
- MEM工程硕士考试经验
- Compose学习笔记1-compose、state、flow、remember
- 计算机学院军训特色标语,各具学院特色的军训口号
- 多线程编程:两个人A、B同时对一个账户取钱(A从ATM取,B从柜台取)