详解:CentOS 7 NAT模式的网络配置

打开虚拟机发现并没有网络选项 

一、解决虚拟机ping通主机 

解决方法1: 启动VMware NAT Service

(1)首先查看主机的ip地址,win+R打开搜索框,输入cmd 

(2)输入ipconfig查看网络配置信息 
ipconfig
(3)找到  VMware Network Adapter VMnet8: IPv4 地址的ip地址

(4)接着在虚拟机的终端使用ping命令,看是否能通主机,结果是网络不可达 

 (5)使用win+R输入services.msc 查看主机的服务

(6) 找到VMware NAT Service 并启动服务

(7)回到虚拟机,发现网络连接选项出来了 

(8)点击进行连接即可

(9)如果出现了这个标志说明成功连接网络 

 (10)进入虚拟机的终端再次进行ping命令,发现可以连通主机


解决方法2:打开公用配置文件的入站连接

如果虚拟机还是不能ping通主机可能被主机的防火墙拦截了。 

(1)打开主机的控制面板,如果桌面没有的可以直接搜

(2)点击系统和安全 

(3)点击 Windows Defender 防火墙 

(4)点击高级设置 

(5)点击Windows Defender 防火墙属性

(6)将公共配置文件的入站连接改为允许 

(7)改成允许,点击应用并确定 

(8)最后回到虚拟机看是否能ping通主机 


解决方法3:关闭防火墙

如果虚拟机还是不能ping通主机,可以试试直接关闭防火墙

(1)点击启用或关闭选项

(2)点击关闭再确定 

(3)最后回到虚拟机看是否能ping通主机  


二、解决主机ping通虚拟机

(1)打开终端输入ifconfig命令查看虚拟机的网络配置信息(主要是查看虚拟机的ip地址)

ifconfig

 (2)打开主机终端,使用ping命令看是否能ping通虚拟机 

如果出现以下问题:

#注意:如果你用下面的方式查找虚拟机的ip地址可能是错误的!!!

结果如下: 

解决方法1:网络配置文件更改

(1)打开主机的控制面板,如果桌面没有的可以直接搜

(2)点击 网络和Internet 

(3)点击网络和共享中心 

(4)点击更改高级共享设置 

(5)点击所有网络 

(6)点击启动 后保存更改

(7)使用ping命令,发现主机可以连通虚拟机 


解决方法2:关闭虚拟机防火墙的命令

(1)打开虚拟机终端,输入systemctl stop firewalld.service //停止firewall
systemctl stop firewalld.service
 (2)输入:systemctl disable firewalld.service //禁止firewall开机启动
systemctl disable firewalld.service 
(3)检查虚拟机网卡:
1.先切换到目录:cd /etc/sysconfig/network-scripts/
cd /etc/sysconfig/network-scripts/
2.再查看: 
ls
3.找到一个ifcfg-ens开头的文件: 我的文件是ifcfg-ens33然后打开这个文件

 

4.使用vi / vim 编辑文件
vim ifcfg-ens33
 5.将ONBOOT=no改为yes ,这文件我之前修改过。

内容如下:

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=466a31dc-3485-4d97-bcae-a3fd15fd2f5d
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.226.50
PREFIX=24
GATEWAY=192.168.226.2
DNS1=8.8.8.8
(4)使用ping命令,发现主机可以连通虚拟机  


注意可能出现的情况 !!!

(1)当你的电脑重启后,进入虚拟机如果出现如下图的情况:网络连接选项都没有!!!(天塌了)

别急!!!问题就是主机没有开启 VMware NAT Service 自启动!!!

(1)再次进入服务

(2) 找到 VMware NAT Service 先进行启动

(3) 单机鼠标右键选择属性

(4) 将手动启动类型改为自动

(5) 选择自动类型后点击应用再确定即可

(6)回到虚拟机,发现网络连接选项出来了 

(7)点击连接即可 


三、原理介绍

在NAT(网络地址转换)模式下,虚拟机能够连上网的原理涉及以下几个关键点:

1. NAT的工作原理

        NAT是一种网络地址转换技术,它允许一个网络中的多个设备共享一个公共IP地址访问外部网络。在NAT模式下,虚拟化软件在宿主机上创建了一个虚拟的NAT路由器,用于将虚拟机的私有IP地址转换为宿主机的公共IP地址。

2. 虚拟网络适配器

        虚拟机通过虚拟网络适配器(vNIC)与宿主机的虚拟网络交换机(如VirtualBox的VirtualBox Host-Only Network或VMware的VMnet8)连接。

3. 虚拟NAT设备

        在NAT模式下,宿主机的虚拟化软件会创建一个虚拟NAT设备,这个设备负责将虚拟机的私有IP地址转换为宿主机的公共IP地址,并管理数据包的转发。

以下是NAT模式下虚拟机连网的详细原理:

3.1 私有网络

        虚拟机被分配一个私有IP地址,这个地址通常来自一个专门为内部网络保留的IP地址范围,如RFC 1918地址(例如192.168.x.x, 10.x.x.x, 172.16.x.x等)。

3.2 虚拟NAT路由器
  • 源地址转换(SNAT):当虚拟机发送数据包到外部网络时,NAT路由器会修改数据包的源IP地址,将其从虚拟机的私有IP地址转换为宿主机的公共IP地址。
  • 端口映射:NAT路由器还会跟踪每个数据包的源端口,确保返回的数据包能够正确地转发回相应的虚拟机。
3.3 数据包传输流程

以下是虚拟机通过NAT模式发送和接收数据包的流程:

  1. 发送数据包

    • 虚拟机产生一个数据包,数据包的源IP地址是虚拟机的私有IP地址,目标IP地址是外部网络的一个地址。
    • 数据包首先被发送到虚拟网络适配器,然后到达宿主机的虚拟网络交换机。
    • NAT路由器接收到数据包后,修改数据包的源IP地址为宿主机的公共IP地址,并记录源端口和虚拟机的私有IP地址及端口的映射关系。
    • 修改后的数据包被发送到宿主机的物理网络适配器,并最终到达外部网络。
  2. 接收数据包

    • 外部网络返回的数据包的目标IP地址是宿主机的公共IP地址。
    • 宿主机的物理网络适配器接收到数据包后,根据目标端口查找之前建立的映射关系。
    • NAT路由器根据映射关系将数据包的目标IP地址和端口转换回虚拟机的私有IP地址和端口。
    • 数据包被转发到虚拟机的虚拟网络适配器,最终到达虚拟机。

4. DHCP服务

        在NAT模式下,通常还会有一个DHCP服务器为虚拟机自动分配IP地址、子网掩码、默认网关和DNS服务器地址。

5. 端口转发

        如果虚拟机需要提供网络服务,可以通过端口转发将宿主机的某个端口映射到虚拟机的特定端口,从而允许外部网络访问虚拟机上的服务。


虚拟机联网的详细过程: 

  1. 虚拟网络接口

    • 假设我们在宿主机上使用VirtualBox或VMware等虚拟化软件创建了一个虚拟机,并为该虚拟机分配了一个虚拟网络接口(通常是虚拟网卡)。
  2. NAT转换器

    • 宿主机上会运行一个NAT转换器,它负责将虚拟机的内部IP地址转换为主机的外部IP地址。

以下是具体的联网过程:

步骤1:虚拟机发起网络请求

  • 虚拟机内部的应用程序发起一个网络请求,比如尝试访问一个网站(例如 http://www.example.com)。

步骤2:虚拟机内部网络栈处理

  • 虚拟机的操作系统将请求发送到其网络栈,然后通过虚拟网络接口发出。

步骤3:NAT转换

  • NAT转换器接收到虚拟机的网络请求,它将虚拟机的内部IP地址(例如 192.168.56.101)和端口(例如 12345)转换为主机的对外IP地址(例如 203.0.113.1)和一个随机的高端口(例如 54321)。

步骤4:外部网络通信

  • 转换后的请求现在看起来像是从宿主机发出的。宿主机的网络栈将请求发送到外部网络。

步骤5:响应返回

  • 目标服务器(www.example.com)处理请求并返回响应。响应的目的地是宿主机的对外IP地址和端口(203.0.113.1:54321)。

步骤6:NAT转换器接收响应

  • 宿主机的网络栈接收到响应后,NAT转换器识别出这是之前虚拟机请求的响应。

步骤7:NAT转换器转发响应

  • NAT转换器将响应的目的地IP地址和端口转换回虚拟机的内部IP地址和端口(192.168.56.101:12345),然后将响应转发给虚拟机。

步骤8:虚拟机接收响应

  • 虚拟机的网络栈接收到响应,并将其传递给发起请求的应用程序。

        通过这个过程,虚拟机能够在NAT模式下访问外部网络,同时外部网络无法直接访问虚拟机,因为NAT转换器隐藏了虚拟机的内部网络结构,这为虚拟机提供了一定程度的安全保护。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/57695.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Bug:通过反射修改@Autowired注入Bean的字段,明确存在,报错 NoSuchFieldException

【BUG】通过Autowired注入了一个Bean SeqNo,测试的时候需要修改其中的字段。通过传统的反射,无论如何都拿不到信息,关键是一方面可以通过IDEA跳转,一方面debug也确实能看到这个字段。但是每次调用set方法报错:NoSuchFi…

腾讯云轻量服务器Lighthouse的前世今生

目录 序一、名字的由来二、Lighthouse的定位是什么,与CVM的差异化有哪些三、Lighthouse是如何实现简单易用的四、Lighthouse对于开发者有哪些具体的利好 序 印象中,腾讯云轻量应用服务器Lighthouse是在2020年正式上线的。 在其一经推出后,就…

【C++进阶】之C++11的简单介绍(三)

📃博客主页: 小镇敲码人 💚代码仓库,欢迎访问 🚀 欢迎关注:👍点赞 👂🏽留言 😍收藏 🌏 任尔江湖满血骨,我自踏雪寻梅香。 万千浮云遮碧…

Vue项目实战-新能源汽车可视化(一)(持续更新中)

一.项目代码 1.App.vue <template><!-- 模板--><div id"wrapper"><div style"width: 100%"><el-tabs v-model"activeName" id"tabs"> <!-- 标签栏里包含了三个标签面板&#xff0c;分别是研发与维…

web前端-html:简单创建表格表单相结合的网页

效果&#xff1a; <body><form action"这里如果为空表单提交后不会有任何操作"method"get"<label for"edit">用户名</label><input type"text" name"用户名" id"最好不要空&#xff0c;id属性…

【论文学习与撰写】论文里配图的题注、多张图片同列排版格式等

目录 1、插入题注 2、多张图排版 1、插入题注 word--引用--插入题注&#xff0c;就会出来这个 直接点确定的话&#xff0c;是会出来图1/图2/图3.。。。之类的 那是因为标签设置的是 图 如图新建标签为&#xff1a; 图 1. 那么&#xff0c;插入题注之后&#xff0c;就会…

【分立元件】贴片电阻的额定功率

贴片电阻器通过电流后将会发热。而贴片电阻的额定功率(Power Rating)是在额定环境温度中可在连续工作状态下使用的最大功率值。 此外,由于使用温度的上限是确定的,因此在高于额定环境温度的条件下使用时,需要按照以下的功率降额曲线来降低功率。额定环境温度是能够…

ionic Capacitor 生成 Android 应用

官方文档 https://ionic.nodejs.cn/developing/android/ https://capacitorjs.com/docs/getting-started 1、创建新的 Capacitor 应用程序 空目录下面 npm init capacitor/app2、install Capacitor npm install npm start在这里插入图片描述 3、生成dist目录 npm run buil…

SpringBoot篇(缓存层)

目录 前言 缓存是什么&#xff1f; 一、SpringBoot内置缓存解决方案 1. 简介 2. 手机验证码案例 二、SpringBoot整合Ehcache缓存 1. 简介 2. 总结 三、SpringBoot整合Redis缓存 1. 简介 2. 总结 四、SpringBoot整合Memcached缓存 1. 简介 2. 安装 3. 变更缓存为M…

5G 现网信令参数学习(1) - MIB

MIB消息中的参数 systemFrameNumber 000101B, subCarrierSpacingCommon scs30or120, ssb-SubcarrierOffset 6, dmrs-TypeA-Position pos2, pdcch-ConfigSIB1 { controlResourceSetZero 10, searchSpaceZero 4 }, cellBarred notBarred, intraFreqReselection allowed, sp…

1024程序员节特惠题解!

#题外话&#xff1a;/ #先看题目 题目传送门https://www.luogu.com.cn/problem/P1035#思路&#xff1a;直接模拟&#xff08;Shift1&#xff09; #代码&#xff1a; #include <bits/stdc.h> using namespace std; int main(){double cnt0,k,sum0,x;cin>>k;while…

2.1 > Shell 是什么、如何更熟练的使用 Bash Shell

Shell 基础知识 Shell是计算机操作系统中的一个命令行解释器&#xff0c;由C语言编写&#xff0c;用于用户与操作系统之间进行交互。用户可以通过Shell输入命令&#xff0c;操作系统接收到这些命令后执行相应的操作。Shell一般还提供了编程语言的基本功能&#xff0c;允许用户…

【Mac 上将 MOV 格式转换为 MP4 格式的简易指南】

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

R语言笔记(四):函数

文章目录 一、Function basics1、Creating your own function2、Function structure3、Using your created function4、Multiple inputs5、Default inputs 二、Return values and side effects1、Returning more than one thing2、Side effectsExample of side effect: plot 三…

从零开始学python必看,最强“Python编程三剑客(pdf)”

目录 三剑客PDF传送门&#xff1a;三剑客 第一本&#xff1a;《Python编程&#xff1a;从入门到实践》 1.1《Python编程&#xff1a;从入门到实践》第一部分&#xff1a;基础知识 1.2《Python编程&#xff1a;从入门到实践》第二部分&#xff1a;项目 第二本&#xff1a;《…

Metasploit渗透测试之模块学习与开发

# 概述 Metasploit 框架采用模块化架构&#xff0c;即所有漏洞利用、有效载荷、编码器等都以模块形式存在。模块化架构使框架功能的扩展更加容易。任何程序员都可以开发自己的模块&#xff0c;并将其轻松移植到框架中。 # 1、使用辅助模块 在之前的"信息收集和扫描 &qu…

【设计模式-原型】

**原型模式&#xff08;Prototype Pattern&#xff09;**是一种创建型设计模式&#xff0c;旨在通过复制现有对象的方式来创建新对象&#xff0c;而不是通过实例化类来创建对象。该模式允许对象通过克隆&#xff08;复制&#xff09;来创建新的实例&#xff0c;因此避免了重新创…

QT-使用QSS美化UI界面

一、QSS简介&#xff1a; Qt Style Sheet&#xff1a;Qt样式表&#xff0c;用来自定义控件外观的一种机制&#xff0c;可以把他类比成CSS&#xff08;CSS主要功能与最终目的都是能使界面的表现与界面的元素分离&#xff09;。QSS机制使应用程序也能像web界面那样随意地改变外观…

构建后端为etcd的CoreDNS的容器集群(二)、下载最新的etcd容器镜像

在尝试获取etcd的容器的最新版本镜像时&#xff0c;使用latest作为tag取到的并非最新版本&#xff0c;本文尝试用实际最新版本的版本号进行pull&#xff0c;从而取到想的最新版etcd容器镜像。 一、用latest作为tag尝试下载最新etcd的镜像 1、下载镜像 [rootlocalhost opt]# …

基于vue框架的的高校消防设施管理系统06y99(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;设备分类,设备信息,维修人员,报修信息,维修进度,院系,消防知识,培训记录,培训信息,备件信息,备件申请,派发信息,采购信息 开题报告内容 基于Vue框架的高校消防设施管理系统开题报告 一、项目背景与意义 随着高校规模的不断扩大和校园建…