局域网访问虚拟机内CentOS

1,154 阅读3分钟

局域网访问虚拟机内CentOS设置

1.搭建局域网

我是利用家里的wifi环境和两台笔记本搭建的一个局域网环境。

局域网.png

2.虚拟机设置

虚拟机网络连接方式

  1. 桥接模式,在这种模式下,虚拟机相当于与所在物理机同一IP段的独立计算机,与局域网内的其他计算机是没有区别的。

  2. NAT模式,这种模式下,虚拟机与所在的物理机单独组成了一个新的局域网,他们共享接入物理机的IP段。

  3. 仅主机模式,在这种模式下,物理机下所属的所有虚拟机共同组成一个局域网,他们与物理机之间是断开的,也就是说物理机和虚拟机之间是无法访问的。

思路

  • 如果局域网想要访问虚拟机的CentOS服务器,基本上有两种思路,一种是将虚拟机的网络设置成桥接模式,因为这时候,虚拟机相当于所在物理机同一IP段内的独立计算机,同在局域网内的其他机器当然可以访问虚拟机内的服务器。一般在虚拟机的设置里面找到网络设置,将其改为桥接模式,借助虚拟机的IP就可实现访问,但访问速度会很慢。(这种方法我没有试过,具体慢不慢或有多慢不清楚。)

  • 另外一种方式就是将虚拟机的网络连接设置成NAT模式。将虚拟的网络模式设置成NAT模式后,如下图所示。需要注意的是,与计算机A所在同一个局域网内的其他物理机(计算机B)是无法访问虚拟机中的服务器的。因为计算机A和虚拟机构建了一个新的局域网络,因此只有计算机A和虚拟机之间能够互相通信。对于计算机B来说,相对于他们新组的局域网,属于外网。这时候,还需要在计算机A中对其端口进行映射,将不同的端口映射到虚拟机中不同的服务器上。以达到通过访问不同的端口访问虚拟机中不同服务器的目的。这个过程与局域网中利用路由器对其中某个IP端口进行映射的原理是一样的。

这里选用NAT模式

内网.png

虚拟机NAT配置端口转发

选择【编辑】-》【虚拟网络编辑器】进入页面 image.png

点击【更改设置】-》选择NAT模式-》【NAT设置】进入页面

image.png

点击【端口转发】-》【添加】,输入相关信息,点击【确定】保存端口转发配置。可根据自己的实际情况做多个配置。

主机端口: 101
类型: TCP
虚拟机IP: 192.168.74.101
虚拟机端口: 22
描述: CentOS101

image.png

image.png

设置宿主机防火墙入站规则

在宿主机(计算机A)中【控制面板】-》【系统安全】-》【防火墙】-》【高级设置】-》【入站规则】

image.png

选择【端口】-》【下一步】 image.png

选择【TCP】-》【特定本地端口】-》【下一步】 image.png

【允许链接】-》【下一步】

image.png

【下一步】 image.png

点击【完成】,入站规则就配置好了

image.png

虚拟机防火墙关闭

systemctl stop firewalld.service  // 停止firewalld服务
systemctl disable firewalld.service // 开机禁用firewalld服务
iptables -L   //列出所有iptables规则

image.png

配置SELinux

vi /etc/sysconfig/selinux       //编辑selinux文件
SELINUX=disabled         //把文件中的SELINUX=enforcing 改成 SELINUX=disabled 即可
sestatus    //查看SELinux状态

image.png

3.链接测试

在计算机B上进行链接测试,打开Xshell 配置端口、IP

image.png

ping 计算机B 的 IP

image.png