兩個坑教會我很多:1) ping的通但telnet不通有可能是Mac衝突;2) telnet通但web訪問不通,有可能是瀏覽器設置代理。
總結經驗,以備下次快速定位
背景:使用20.*.*.*網段無法訪問web界面,但使用10.*.*.*就可以
1) 首先調試機上ping ip是否通
2) 不通則檢查網絡路由信息route print,如果有路由信息,可以tracert ip跟蹤路由(默認30跳)
3) 網絡通則查看本地機器上ARP表中ip對應mac是否和目的主機一樣(Windows和Linux下都是arp -a )
4) 網絡通則ping指定MTU大包看看是否通
5) 大包也通的話則telnet ip port試試,大多數TCP端口使用telnet足夠了,UDP端口需要使用netcat。
6) 如果telnet測試端口是連通的,查看下web瀏覽器中代理服務器是否針對某個域名和ip地址進行限制了。看到代理設置中針對10.*.*.*,192.168.*.*開頭的不使用代理服務器。所以20.*.*.*到了代理服務器哪裏,而本調試機又和代理服務器之間網絡不通。
到了最後才知道原來是瀏覽器的代理服務器搗的鬼。再看代理設置中針對了http協議才使用代理服務器,那麼這是爲什麼telnet可以和端口通,而http請求不行。
7) 最後一招curl http://ip:port看看是否建連了。
瀏覽器中代理服務器
1.在瀏覽器設置頁面最下方,點擊“顯示高級設置”按鈕後,可以看到瀏覽器的不常用設置。
2、在瀏覽器高級設置瀏覽中,找到“更改代理服務器設置”,點擊後進入更改代理服務器的操作界面。
3、在更改代理服務器界面中,點擊“局域網設置”,進入局域網設置操作界面。
4、在局域網設置界面,選中“代理服務器”下的小框,即改爲啓用代理,取消選中即爲不啓用代理。(圖中爲不啓用代理)
5、如果要改爲啓用代理,那麼選中小框後,點擊後方的高級選項,進入代理設置界面。
6、在代理設置界面中填入代理地址(這個需要和你的代理服務器管理員要哦),一路確定即可。
代理設置中看到對哪些開頭的ip不使用代理服務器。比如10.*.*.*,192.168.*.*開頭的不使用代理服務器。