网络异常排查

网络异常排查

 

关键字:网络排查

PING(优先)(判断网络是否正常)

命令

ping IP/域名

示例

 

观察响应是否正常,再判断时间是否过久,正常100ms内,超过250ms会出现不稳定,超过300ms算不正常,需要从网络,运营商,路由等各方面进行排查.

判断端口是否正常

同时需要确认目标主机是否开放ping命令,如果目标主机禁止了ping,则通过tracert 判断数据包是否到达或通过telnet 观察目标端口是否可到达.

如果是ping域名不通,需要检测域名解析是否正常(获取域名实际IP后进行ping测试)

TELNET(判断目标程序是否可以访问)

命令

telnet IP/域名 端口

示例

端口异常

端口正常

端口不正常需要通过多种方式判断,优先判断目标服务主机本地是否可以TELNET或访问到服务,再依次判断内网,路由,外网(如果是云主机,需要判断安全组是否有设置)

主机正常,内网不正常,检查防火墙

主机正常,内网不正常,且存在多路由,原路由检查后,再检查延伸路由

主机正常,内网正常,外网不正常,检查外网映射;检查安全组.

补充:需要注意程序或服务是否允许外网访问,很多程序,默认是只允许本地访问,这样即使telnet通,程序也无法使用.

 

NSLOOKUP(判断域名解析是否正常)

命令

nslookup 域名

示例

正常解析

解析异常

说明

只有在ping通IP的前提下,判断域名解析才有意义.

IP正常,域名不通常见处理

通过nslookup命令判断域名解析是否正常

直接写死host文件

C:\Windows\System32\drivers\etc\hosts

注:不推荐,避免后续IP切换导致潜在异常. 需要确认好目标服务器IP是否为动态.

尝试刷新DNS

 

需要跟域名管理人确认好是否已设置解析

修改DNS

114.114.114.114

223.5.5.5

223.6.6.6

TRACERT(判断数据包到目标网络哪个线路异常)

命令

tracert IP/域名

示例

本机->内网->运营商->目标运营商->目标机房->目标内网->目标服务器

观察每次跳跃点,通过分析跳跃点,排查数据包在哪个阶段的路由跳转异常,根据实际情况处理.

 

网络异常排查

 

 

php模拟app请求数据

Fiddler 监听手机请求地址详细教程

http://jingyan.baidu.com/article/925f8cb81e3a52c0dde05616.html

filddler抓包可以解决http 和 https的数据。Wireshark 设置相对繁琐。

需要注意:https情况下,数据预览是需要点击解密操作才可进行查看。

 

提供chrome一个插件”EditThisCookie” 可以直接将cookie设置到指定的域名中,方便一类,登录后,直接进行页面访问的操作,相对php模拟要方便些。

提供一个cookie串转json格式的脚本:

		$cookie = 'xxx=xxx;xxx=xx;';
		$cookies = preg_split ( '/\;\ /', $cookie );
		$json_cookie = array ();
		foreach ( $cookies as $_cookie ) {
			$_cookie = explode ( '=', $_cookie );
			$json_cookie [] = array (
					'domain' => 'xxxx.com',
					'expirationDate' => '1518752038',
					'hostOnly' => false,
					'httpOnly' => false,
					'path' => '/',
					'secure' => false,
					'session' => false,
					'storeId' => '0',
					'session' => 'false',
					'name' => $_cookie [0],
					'value' => $_cookie [1] 
			);
		}
		echo json_encode ( $json_cookie );
		exit ();