基础的网络监察能力是每一个程序员的必知必会的能力;通常我们都是在无法访问一个URL,一个IP,一个服务之后才会去想要调查到底是网络服务的那个部分出问题了。
网络通信永远都是从一台请求发起机器(SOURCE),抵达一台目标机器的(DEST)
查看dns是否可以解析?
执行:SOURCE
如果可以解析,那么这台机器能够连接上DNS服务器获得解析,或者hosts文件中有对应的配置。nslookup hostname
例如:nslookup www.baidu.com
查看两台机器是否能够连通?
执行:SOURCE
如果不能ping通,目标ping ip|hostname
例如:ping 192.168.1.1
查看特定端口是否可以访问?
执行:SOURCEtelnet ip|hostname port
例如:telent 192.168.1.1 443
注释:
如果端口都无法访问,那么浏览器自然无法访问(浏览器的访问原理是先完成DNS解析(IP地址本来不需要解析),然后通过IP+PORT和url的path部分去请求目标服务器内容)
查看本机的端口监听状态?
执行:DEST
windowsnetstat -an | find "443"
linux || Macnetstat -an | grep 443