本机与远程主机指定端口的网络是否连通

Posted .x->y=z

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了本机与远程主机指定端口的网络是否连通相关的知识,希望对你有一定的参考价值。

       前几天系统开发微信支付,需要提供微信支付成功异步通知地址,由于开发环境在局域网,所以使用了测试域名,再用nginx将请求转发到开发者机器上,请求一直没法转发成功,提示Nginx:504 Gateway Time-out,后来在运维同事的帮助下,发现转发失败的原因是不同的环境彼此是网络隔离的,测试环境没有权限直接与开发机器通信,需要申请权限,汗,运维同事直接使用了telnet命令测试测试环境机器与开发者机器端口的网络连通性,就找到了问题所在,本篇博客记录并总结下类似问题分析步骤,此外还附带了telnet命令用法详解。

网络连通性排查步骤:

  • 确认IP地址是否正确?
  • 确认IP地址对应的主机是否已经开机?
  • 如果主机已经启动,确认主机相应端口是否开启了相关服务?(使用netstat命令查看相应端口是否有LISTEN状态的行)
  • 如果主机已经启动相关服务,确认防火墙是否放开了端口的访问?
  • 如果是阿里云服务器,是否在【安全组规则】添加了【放行规则】(阿里云安全组默认未设置任何自定义放行规则,会导致无法访问实例端口,若需访问请添加安全组规则放行对应的端口)
  • 如果是公司网络不同环境的机器,还是排查互相有无【访问权限】(比如测试环境机器与开发的机器,我碰上的问题就是测试机器无法访问开发机器)

Linux

[dsp@dsp ~]$ telnet www.baidu.com 80
Trying 220.181.112.244...
Connected to www.baidu.com.     # 说明网络连通
Escape character is \'^]\'.


Connection closed by foreign host.
[dsp@dsp ~]$ telnet example.com 12345
Trying 93.184.216.34...
telnet: connect to address 93.184.216.34: Connection timed out
Trying 2606:2800:220:1:248:1893:25c8:1946...
telnet: connect to address 2606:2800:220:1:248:1893:25c8:1946: Network is unreachable   # 说明网络不连通
[dsp@dsp ~]$ 

Windows

  命令号下键入:telnet www.baidu.com 80,若连通了则进入全黑可输入界面,否则提示连接失败。

C:\\Users\\dsp>telnet example.com 12345
正在连接example.com...无法打开到主机的连接。 在端口 12345: 连接失败

C:\\Users\\dsp>

参考文献:

  每天一个linux命令(58):telnet命令

以上是关于本机与远程主机指定端口的网络是否连通的主要内容,如果未能解决你的问题,请参考以下文章

Navicat for MySQL远程连接报10038的错误

SCP对拷如何连接指定端口远程主机

linux测试网络是不是连通的命令

关于mysql服务器3306端口不能远程连接的解决

关于mysql服务器3306端口不能远程连接的解决

关于mysql服务器3306端口不能远程连接的解决