环境:

宿主机:WIN 10 --192.168.9.87

虚拟机:CentOS ---192.168.255.129

联通模式:NAT模式

一、VM做端口映射

1.为了方便管理,设置虚拟机为静态IP

2.配置端口

3.测试ssh -p 5555 192.168.9.87 是否能转到 192.168.255.129

发现无法访问。【192.168.9.87与192.168.255.129 防火墙都已经关闭】

二、问题排查

1.127.0.0.1:5555 可以顺利访问 192.168.9.87:5555 无法访问

因此可以推断数据包到127.0.0.1 却没有到达192.168.9.87

换句话说 数据包到达本地的VM8网卡 没有到达本地连接 在192.168.255.129上检查与192.168.9.87的连通性,果然不通

2.连通性问题稍后解决。先解决目前的问题,此时有两种办法

第一种:

①宿主机进行再次端口转发 将192.168.9.87的数据转发到127.0.0.1:5555,此时宿主机需要再开通一个端口,比如8888【不能选择同一端口】

②确认宿主机ip helper服务是不是在运行

③然后cmd 运行命令

netsh interface portproxy add v4tov4 listenport=8888 connectaddress=127.0.0.1 connectport=5557 【添加转发端口】

添加成功后,可以访问 。实际上路由 外部->192.168.9.87:8888->127.0.0.1:5557->192.168.255.129

第二种:

将VM8网卡与本地连接打通 互联,开通本机路由功能【后续研究】

三、其他问题

1.在192.168.255.129 无法ping通 宿主机 192.168.9.87,可以ping通网关 192.168.255.2

2.静态IP无法访问,DHCP可以,推测是网络配置问题

3.ping VM8的网卡无法ping通

4.netstat -rn检查linux本机路由信息

发现没有0.0.0.0的路由

5.检查/etc/sysconfig/network-scripts 下的网卡配置文件后发现是里面网关配置问题,更正后重启network后正常

6.192.168.9.87:5555 这个可以访问了 192.168.9.87:8888 可以删除此条转发

netsh interface portproxy delete v4tov4  listenport=8888

四、补充

上述整个网络拓扑如下图

因此,当VM8不生效时,宿主机可以通过特定端口进行虚拟机访问,虚拟机能正常返回数据包

当NAT网关不生效时,或者虚拟机未设置网关,宿主机可以正常访问虚拟机,但是虚拟机的返回数据包将丢失

虚拟机连接外网,如果是静态IP ,则通过NAT网关到达宿主机,再通过DNS服务器进行域名解析就可以正常访问外部域名网络。

----------------------------------------------------------------------------------------------------------------------------

另外十分感谢一位大神的热心帮助,解决了困扰了半天的问题。

VM 端口映射问题的更多相关文章

  1. 外机连接本机的虚拟机服务器_VM端口映射

    说明:有时候我们把服务器放在虚拟机上的时候只能本机在网页上连接,但是如果想要别的电脑也能访问的话,需要在VM上做一个映射.实现如下: 设置VM端口映射 一.打开VM->编辑->虚拟网络编辑 ...

  2. Linux安装VritualBox实现虚拟机win2003端口映射 支持远程

    1. 使用VNC登录到Linux系统 2. 安装VritualBox 找到VritualBox的软件包 这里的是run格式的 可以直接在终端运行  需要几分钟时间 3.VritualBox新建虚拟机 ...

  3. 详解VirtualBox虚拟机网络环境解析和搭建-NAT、桥接、Host-Only、Internal、端口映射

    本文以VirtualBox为例 如果出现主机无法ping通虚拟机的情况,请首先确认虚拟机防火墙已关闭. 一.NAT模式 特点: 1.如果主机可以上网,虚拟机可以上网 2.虚拟机之间不能ping通 3. ...

  4. VirtualBox虚拟机网络环境解析和搭建-NAT、桥接、Host-Only、Internal、端口映射

    一.NAT模式 特点: 1.如果主机可以上网,虚拟机可以上网 2.虚拟机之间不能ping通 3.虚拟机可以ping通主机(此时ping虚拟机的网关,即是ping主机) 4.主机不能ping通虚拟机 应 ...

  5. linux主机下的Vmware Workstation配置NAT设置 端口映射-Ubuntu为例

    最近折腾虚拟机,由于是在linux下进行的,而相关资料比较少,所以遇到了一些问题. 一个就是配置vmware workstation的NAT设置.因为一般来说,NAT可以共享主机的ip,从而能以主机身 ...

  6. 16. docker 网络 端口映射

    一.本地操作 1.如何将 nginx 暴露给外界 创建 nginx 服务器 docker run  --name web -d nginx 查看 nginx 的 ip地址 docker network ...

  7. Windows10环境配置nat123端口映射访问mysql

    背景:因工作需要,在宽带路由器内部设置一个台式机(可上网),配置成数据库服务器.分散各处的多台外网机可以通过jdbc连接该数据库服务器进行开发.要进行端口映射. 环境: 宽带通 Windows10企业 ...

  8. Tp-link TL-WR841N无线路由器端口映射到外网如何设置

    针对TP-LINK的无线路由器进行演示如何设置端口映射和访问控制,演示使用的具体型号是TP-LINK TL-WR841N 3G无线路由器如何设置端口映射. 什么是端口映射? 端口映射又称端口转发,有的 ...

  9. TTradmin v1.1 - 免端口映射穿透任何内网、基于radmin核心的即时远程协助

        TTradmin 是一款免端口映射可直接穿透任何内网,基于radmin核心的即时远程协助软件.在使用的时候只需要保证“协助端”和“被协助端”使用同一个验证码即可实现安全便捷的远程控制,不需要进 ...

随机推荐

  1. 14. js字符串截取substring用法

    columnIds = columnIds.substring(0, columnIds.length-1);

  2. 转载:python 的包导入

    python 包 多个关系密切的模块应该组织成一个包,以便于维护和使用.这项技术能有效避免名字空间冲突.创建一个名字为包名字的文件夹并在该文件夹下创建一个__init__.py 文件就定义了一个包.你 ...

  3. VC中明明已经添加了头文件却还提示未定义的问题

    我在VS中编译程序遇到这个错误:error C3861: 'ReadDirectoryChangesW': identifier not found, even with argument-depen ...

  4. Linux kafka 单机安装

    Kafka地址(选择最新地址1.1.1) http://archive.apache.org/dist/kafka/

  5. 解决eclipse新建项目看不到src/main/java目录办法

    1.eclipse->window->preferences->java->compiler->选择本地要用的Java版本 2.eclipse->window-&g ...

  6. DataGrip 连接数据库查询出来的结果乱码的问题

    打开连接数据源选项 选择 Advanced----Charset  填入 GBK 应用即可 目前遇到的是连接 SYbase数据库

  7. ubuntu 安装 oracle sql developer

    安装java-jdk 这一部分教程很多,可按照网上教程进行安装 安装sqldeveloper 下载 sqldeveloper Linux RPM http://www.oracle.com/techn ...

  8. python正则表达式查找汉字

    使用正则表达是查找汉字之前,要将所有的字符串都转码成utf8 import re string_test = "This is test string 这是测试字符串" strin ...

  9. python tuple排序

    tuple排序,按照索引0,1,2,3...依次比较 a = [3,1,0,9,6,2,4,8,7,5] a.sort(key = lambda x: (x%2, x, x%3)) # 先按照x%2的 ...

  10. zstack使用笔记之端口转发

    根据官方教程,使用端口转发,可以把公网流量转发到内网 实验环境是这样的 公网网段:172.17.3.x 内网网段:192.168.1.x 首先创建云路由网络,这个就不说了,根据教程大家都可以创建出来, ...