如何通过 NAT 模式连接VMware虚拟机以及存在和不存在ens33文件的解决方案

2023-11-02 17:20

本文主要是介绍如何通过 NAT 模式连接VMware虚拟机以及存在和不存在ens33文件的解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 1 VMware配置
    • 1.1 打开vmvare虚拟网络编辑器
    • 1.2 取消使用本地DHCP
    • 1.3 NAT设置
  • 2 虚拟机的配置
    • 2.1 存在ens33
      • 2.2.1 修改ifcfg-ens33文件
        • 2.2.1.1 为什么设置BOOTPROTO=static?
        • 2.2.1.2 如何选择使用static还是dhcp?
      • 2.2.2 关闭防火墙
    • 2.2 不存在ens33
      • 2.1 设置IP地址、子网掩码和网关
      • 2.2 设置DNS
      • 2.3 设置主机名
      • 2.4 重启虚拟机
      • 2.5 网卡服务开机自启动
    • 2.5.1 rc.local
    • 2.5.2 授予权限
  • 3 连接测试
  • 总结


前言

NAT 模式
NAT 模式就是让虚拟机借助 NAT (网络地址转换)功能,通过宿主机来访问外部网络。
本文在保证虚拟机的网络可以查到ip的情况下,让宿主机通过远程连接工具连接到虚拟机。


1 VMware配置

该配置的目的是:检查Linux虚拟机的网络连接模式,确保它是NAT模式

1.1 打开vmvare虚拟网络编辑器

在VMware界面,点击编辑==>虚拟网络编辑器
在这里插入图片描述

1.2 取消使用本地DHCP

选择VMnet8(NAT模式),取消勾选使用本地DHCP服务,若使用DHCP服务的话,会动态分配IP。
在这里插入图片描述
注:如果此处未选择DHCP服务,那么在ems33中建议配置BOOTPROTO=static。如果配置BOOTPROTO=dhcp则会产生ens33无法获取ip的现象,该现象在开机时,可以获取ip地址,但是过一段时间会无法连接。

1.3 NAT设置

1.2设置完成后,点击NAT模式(与虚拟机共享主机的IP地址)==>NAT设置。
在这里插入图片描述

解释如下:
192.168.79.0 //所表示的网段IP
255.255.255.0 //所表示的是子网掩码
192.168.79.2 //为网关地址,我们在设置虚拟机的IP时,不能使用0、2这几个地址。


2 虚拟机的配置

打开虚拟机,准备配置设置虚拟机IP、网关、DNS和主机名。
首先需要确认本机是否存在ens33文件,如果存在连接就比较简单:

2.1 存在ens33

2.2.1 修改ifcfg-ens33文件

vim /etc/sysconfig/network-scripts/ifcfg-ens33
一般需要修改以下三个选项:
BOOTPROTO=static
NETMASK=255.255.255.0
ONBOOT=yes 
2.2.1.1 为什么设置BOOTPROTO=static?
因为在虚拟机1.2的配置中,取消了dhcp服务器,已经无法动态分配地址。如果配置BOOTPROTO=dhcp则会产生ens33无法获取ip的现象,该现象在开机时,可以获取ip地址,但是过一段时间会无法连接。
2.2.1.2 如何选择使用static还是dhcp?

static:虚拟机较少,可以选择自己去分配。
dhcp:需要处理大量虚拟机,或者不想自己去分配ip。

2.2.2 关闭防火墙

systemctl disable firewalld
reboot

然后用远程工具就可以直接连接了!

2.2 不存在ens33

需要手动配置就比较麻烦一些,过程如下所示:

2.1 设置IP地址、子网掩码和网关

vim /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE=ens33
BOOTPROTO=static
IPADDR=192.168.79.129
GETWAY=192.168.79.2
NETMASK=255.255.255.0
ONBOOT=yes 

解释如下:
DEVICE=ens33 //网络设备的名称
BOOTPROTO=static //网络分配方式为静态
IPADDR=192.168.79.129 //设置的IP地址
NETMASK=255.255.255.0 //子网掩码
GATEWAY=192.168.79.2 //网关
ONBOOT=yes //指系统启动时是否激活网卡
注:除了修改配置外,还需要禁用NetworkManager,可以参考这篇文章:Linux Centos7安装后,无法查询到IP地址,无ens0,只有lo和ens33的解决方案

2.2 设置DNS

vim /etc/resolv.conf

在这里插入图片描述

namerserver配置为网关地址

2.3 设置主机名

vim /etc/sysconfig/network

在该文件中写入以下配置:

NETWORKING=yes
HOSTNAME=KBDCT-TEST

主机名为:[root@后面的名称]

vim /etc/hostname

如果该文件无信息,则填入主机名即可;
如果有信息,则确认主机名是否正确。

2.4 重启虚拟机

service network restart //重启网卡
reboot //重启虚拟机

此时有可能出现一个问题,使用查询网卡状态

systemctl status network

在这里插入图片描述
发现网卡状态是dead。
此时输入:

systemctl start network
systemctl status network

在这里插入图片描述
证明网卡服务是正常的,只是没有启动,所以需要配置网卡服务的开机自启动。

2.5 网卡服务开机自启动

2.5.1 rc.local

设置开机自启动方式有很多,此处选择修改rc.local的方式。

vi /ect/rc.local

在文件中输入以下信息:

systemctl start network

在这里插入图片描述

2.5.2 授予权限

加入上述启动命令后,使用chmod提升文件权限,并重启虚拟机。

sudo chmod +x /etc/rc.local
reboot

3 连接测试

此时可以直接使用外部的远程连接工具连接虚拟机,此处以finalshell为例:
在这里插入图片描述


总结

关键点在于:
(1)VMware的配置;
(2)虚拟机的网卡配置,包含存在和不存在ens33两种情况的解决方案。

这篇关于如何通过 NAT 模式连接VMware虚拟机以及存在和不存在ens33文件的解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/332106

相关文章

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

Vuex Actions多参数传递的解决方案

《VuexActions多参数传递的解决方案》在Vuex中,actions的设计默认只支持单个参数传递,这有时会限制我们的使用场景,下面我将详细介绍几种处理多参数传递的解决方案,从基础到高级,... 目录一、对象封装法(推荐)二、参数解构法三、柯里化函数法四、Payload 工厂函数五、TypeScript

MySQL中的交叉连接、自然连接和内连接查询详解

《MySQL中的交叉连接、自然连接和内连接查询详解》:本文主要介绍MySQL中的交叉连接、自然连接和内连接查询,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、引入二、交php叉连接(cross join)三、自然连接(naturalandroid join)四

jupyter代码块没有运行图标的解决方案

《jupyter代码块没有运行图标的解决方案》:本文主要介绍jupyter代码块没有运行图标的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录jupyter代码块没有运行图标的解决1.找到Jupyter notebook的系统配置文件2.这时候一般会搜索到

python连接本地SQL server详细图文教程

《python连接本地SQLserver详细图文教程》在数据分析领域,经常需要从数据库中获取数据进行分析和处理,下面:本文主要介绍python连接本地SQLserver的相关资料,文中通过代码... 目录一.设置本地账号1.新建用户2.开启双重验证3,开启TCP/IP本地服务二js.python连接实例1.

Ubuntu中远程连接Mysql数据库的详细图文教程

《Ubuntu中远程连接Mysql数据库的详细图文教程》Ubuntu是一个以桌面应用为主的Linux发行版操作系统,这篇文章主要为大家详细介绍了Ubuntu中远程连接Mysql数据库的详细图文教程,有... 目录1、版本2、检查有没有mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.

Python3.6连接MySQL的详细步骤

《Python3.6连接MySQL的详细步骤》在现代Web开发和数据处理中,Python与数据库的交互是必不可少的一部分,MySQL作为最流行的开源关系型数据库管理系统之一,与Python的结合可以实... 目录环境准备安装python 3.6安装mysql安装pymysql库连接到MySQL建立连接执行S

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

Linux samba共享慢的原因及解决方案

《Linuxsamba共享慢的原因及解决方案》:本文主要介绍Linuxsamba共享慢的原因及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux samba共享慢原因及解决问题表现原因解决办法总结Linandroidux samba共享慢原因及解决