VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

时间:2024-05-20 11:49:40

需求整理

Hadoop服务器集群,在本地使用Vmware 搭建环境。因桥接与仅主机模式不适用,故选择使用NAT模式联网,为了集群方便使用,需配置静态IP,并且需要和宿主机之前互相ping通。


环境准备

  • Vmware 14.0
  • CentOS7.0
  • Vmware安装CentOS 请自行查阅相关资料

CentOS7 设置NAT、静态IP

编辑虚拟机设置 - 网络适配器 - NAT模式

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

编辑 - 虚拟网络编辑器 - 点击"更改设置"
一般会展示三块虚拟网卡[VMnet0/VMnet1/VMnet8],我们使用NAT方式,选中VMnet8 - 选中NAT模式"

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

点击 "NAT 设置

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

在弹出的设置框中查看网关IP,之后在端口转发中需要使用到。点击端口转发下"添加"

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

  • 主机端口推荐设定值范围在10000和65535之间;
  • 虚拟机IP地址 网段前三位与之前网关IP一致,保证在同一个网段,最后一位可随意设置,有效范围在128-254之间;
  • 虚拟机端口固定为22;单击确定

打开CentOS7系统 - ifconfig 查看网卡信息

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

上面ens33是网卡名,可能名称各不相同,记住网卡名,之后编辑的文件与网卡名对应

首先编辑/etc/sysconfig/network文件

	vi /etc/sysconfig/network

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

  • HOSTNAME 根据需求配置自己的主机名
  • GATEWAY 配置成之前在Vmware中看到的网关IP

其次编辑/etc/sysconfig/network-scripts/ifcfg-网卡名称文件

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

ifcfg-ens33是我本地网卡名称对应的配置文件,根据自己本地环境查找即可

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

  • BOOTPROTO:由之前的dhcp设置为static,我们需要设置成静态IP地址
  • 其中IPADDR-IP地址设置成之前在NAT设置中配置的IP地址
  • NETMASK为子网掩码 - 255.255.255.0
  • GATEWAY即默认网关地址,与/etc/sysconfig/network文件中GATEWAY一致
  • 注意:DNS1和DNS2必须填写,若不填写则无法进行域名解析,其中DNS1与GATEWAY地址相同,而DNS2则可选择常用的DNS服务器地址,这里使用的8.8.8.8是谷歌的DNS服务器

此处配置成功后,可使用命令cat /etc/resolv.conf查看文件中查看DNS服务器配置,会自动刷新,不需要自行编辑

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

最后使用命令service network restart重启网络服务,至此静态IP配置完成


虚拟机PING通宿主机

重启完系统后,发现虚拟机可以ping通宿主机,而宿主机却无法ping通我们刚才配置好的静态IP,经过排查之后发现VMnet8 的IPV4地址与我宿主机的IP不在同一个网段

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

将VMnet8的IPV4地址设置与虚拟机在同一网段即可

VMware使用NAT方式,配置静态IP,与宿主机之间互相ping通

至此,尝试由宿主机ping虚拟机设置的静态IP,就可以ping通了,且虚拟机ping宿主机也没有问题

此篇博文借鉴于https://blog.****.net/wanz2/article/details/52820876 感谢~