前幾天系統開發微信支付,須要提供微信支付成功異步通知地址,因爲開發環境在局域網,因此使用了測試域名,再用Nginx將請求轉發到開發者機器上,請求一直無法轉發成功,提示Nginx:504 Gateway Time-out,後來在運維同事的幫助下,發現轉發失敗的緣由是不一樣的環境彼此是網絡隔離的,測試環境沒有權限直接與開發機器通訊,須要申請權限,汗,運維同事直接使用了telnet命令測試測試環境機器與開發者機器端口的網絡連通性,就找到了問題所在,本篇博客記錄並總結下相似問題分析步驟,此外還附帶了telnet命令用法詳解。html
網絡連通性排查步驟: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 ~]$
命令號下鍵入:telnet www.baidu.com 80,若連通了則進入全黑可輸入界面,不然提示鏈接失敗。安全
C:\Users\dsp>telnet example.com 12345 正在鏈接example.com...沒法打開到主機的鏈接。 在端口 12345: 鏈接失敗 C:\Users\dsp>