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


           前几天系统开发微信支付,需要提供微信支付成功异步通知地址,由于开发环境在局域网,所以使用了测试域名,再用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:Usersdsp>telnet example.com 12345
    正在连接example.com...无法打开到主机的连接。 在端口 12345: 连接失败
    
    C:Usersdsp>

    参考文献:

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

  • 相关阅读:
    LeetCode-Maximum Gap
    LintCode-Implement Queue by Stacks
    LintCode-Search Range in Binary Search Tree
    LintCode-BackPack II
    LintCode-Minimum Subarray
    LintCode-Sort Letters by Case
    LintCode-Longest Common Subsequence
    POJ 2226
    POJ 2724
    POJ 3692
  • 原文地址:https://www.cnblogs.com/gotodsp/p/8806658.html
Copyright © 2020-2023  润新知