两个坑教会我很多: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.*.*开头的不使用代理服务器。
网友评论