centos 网络配置_虚拟机不能上网?虚拟机和宿主机不能互通?一文搞定网络问题...

为了学习和使用Linux,多数人选择了使用虚拟机的方式来安装Linux系统。这样我们就可以在windows系统中安装Linux系统了,其中windows机器系统本身我们称作宿主机,安装的虚拟机系统我们简称虚拟机。

由于虚拟机提供的几种网络方式,要么是虚拟机可以ping通宿主机反之不行,要么是虚拟机之间可以互通但宿主机不能访问虚拟机,所以在实际应用中多数被两者间的网络互通和是否能上网的问题所困扰。关于VirtualBox中三种网络连接方式的介绍请参考另一篇:虚拟机不会联网?一文解读什么是桥接、NAT连接和独享连接

本文将介绍三种网络配置方式,实现虚拟机和宿主机之间互通并且可以访问互联网。首先我宿主机的IP地址为:192.168.1.117。

2b99f3b133a8796b9d2abb5b0f513477.png

查看宿主机网络IP地址

一、直接使用桥接的方式

桥接方式下,不用做太多设置,虚拟机会自动获取和宿主机同网段的IP,和宿主机网络中的其他主机处于同等地位,所以虚拟机和宿主机可以互相直接通信,且只要宿主机可以上网,虚拟机即可上网。

02f19b5798926aa2f996c519fcc8912c.png

设置虚拟机网络连接方式为桥接

经过上面的网络设置后,我们进入虚拟机系统,查看IP地址为192.168.1.220,且可以ping通www.baidu.com,可以实现和宿主机互通也可以实现上网。如图:

b5b27f531d7e8df55f88f5b276219ec5.png

虚拟机centos系统中设置网络IP地址

在宿主机中通过ping命令,测试虚拟机中的ip地址设置是否成功,ping通则说明设置成功。宿主机和虚拟机可以互通!

d539be8e248d8d529351d25f9ea21c89.png

二、使用网络地址转换NAT+端口转发的方式

使用网络地址转换加端口转发的方式,虚拟机可以直接ping通宿主机,但是宿主机无法直接ping通虚拟机。不过宿主机可以通过类似Xshell的远程连接软件,设置相关参数后即可访问虚拟机。且只要宿主机可以上网,虚拟机即可直接上网。注意是网络地址转换NAT,不是NAT网络。配置如下:

13667ef6c5904a2e6e89d5358f0bf522.png

配置虚拟机网络连接为NAT方式,并设置端口转发

设置后,虚拟机获取的IP地址为10.0.2.15。经过测试可以ping通宿主机IP,可以ping通www.baidu.com。

1dcb9f56c7b892a965043c3ae2c50524.png

在虚拟机的centos中设置ip地址

在Xshell中的配置端口转发的相关参数:

ec268f809fe4abcdf6edf248aca2d325.png

xshell中配置端口转发参数

配置完成后,登陆虚拟机,测试连接访问情况,效果图如下:

a72c3e8c4b837ce4a440411a6581a970.png

通过xshell登陆虚拟机centos系统

三、NAT网络+host-only双网卡方式

此种双网卡的方式,结合了NAT可以访问外网的优点和host-only可以实现虚拟机之间互通且宿主机可以访问虚拟机的特长,实现了两者的互通且可以上网的功能。具体配置如下:

需要先配置VirtualBox的全局变量,通过“管理”-->“全局设定”选项配置NAT和host-only的双网卡。

1、配置NAT网卡,我们使用IP地址为10.0.2.X的网段,记得开启DHCP服务。

f395c487014f15538ba1fddeabe52332.png

虚拟机中设置网络连接方式为nat+host only

2、配置host-only网卡,由于host-only方式会在本机网络中新增一块网卡,这里我们设置其IP地址段为192.168.65.X,其中此块网卡IP地址为192.168.65.1,并且开启DHCP服务。

17b4c53f3b4f2da546592fb3399af454.png

配置虚拟机的网络连接host only

虚拟机中DHCP服务器配置如下:

bf47a5de9d32037e897f5811723dbb9d.png

虚拟机中配置dhcp服务

全局配置完毕后,需要对虚拟机进行双网卡配置,分别为虚拟机添加NAT和host-only网卡。先配置nat网卡1:

0b90653adea881445d6e7137c2634a30.png

虚拟机中配置网卡1为NAT

再配置网卡2为host-only:

0fdec9813684c96f5e130ca37dddfd63.png

虚拟机中配置网卡2为host only

至此双网卡配置完毕,我们可以打开虚拟机进行网络验证。

首先看到虚拟机中的网卡变成了两块:eth0(10.0.2.8)和eth1(192.168.65.2)。

acbd61699f776b0c479183d07857b4ac.png

虚拟机centos系统中查看网卡

虚拟机ping通宿主机192.168.1.117,虚拟机ping通www.baidu.com。

464c6ebd347e4c013a554861e00d816c.png

虚拟机centos系统中ping命令测试互通

宿主机可以ping通虚拟机的192.168.65.2的地址:

9f3d1df170da3149f6787ea49489e2af.png

宿主机中通过ping命令测试互通

以上就是三种可以实现宿主机和虚拟机互相访问通信的且保证可以上网的实现,大家可以根据自己的需要选择合适的方式。

关注我@码农wu师,免费获取更多编程知识!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值