Wireshrk从入门到精通(实战篇)

想要抓包的时候发现不会抓包,学习了一下http://www.higlab.com/的抓包技术,挺有意思的。写点笔记

1.无法访问Internet

问题场景
用户不能访问Internet。已经确认该用户可以访问所有内网资源,包括其他工作站上的所有内容,以及运行在本地服务器上的所有应用程序

先ping网关,看能不能通,能通再ping 8.8.8.8,访问外网,8.8.8.8到不了
能ping通8.8.8.8就和dns没有什么关系了
再抓包,清一色的query查询,没有回应

前面3个ARP的作用是什么?
	确认这个ip地址有没有人用,没有人用,就可以自己用了
4号和5号一对ARP的作用?
	确认网关
一直在发送DNS请求,却没有收到任何DNS回应,又说明什么?
	DNS包封装好了,但是一直没有发出
	发现配的网关不是真正的网关
通过最终抓包,你能得出什么故障结论
	在网关配错的情况下,可以访问内网,但是出不了外网

问题场景
用户可以访问Internet。但是不能访问www.higlab.com的网站,其他应用都可以访问,这个问题只影响她一个人。

抓包发现没有DNS,判断host文件可能被篡改了。

问题场景
用户可以访问Internet。但是不能访问www.higlab.com的网站,其他应用都可以访问,经查明,机构的每一个人都无法访问这个网站

抓包发现主机发送的SYN没有回应,  服务器端有问题,可能宕机了

2.奇怪的打印机问题

问题场景:网络工程师遇到一个打印机难题,销售部的同事说,他们大批量打印作业的时候,打印机会打印几页,然后停止工作,他们改动了许多驱动配置选项,但是没有任何效果,BOSS希望你去确认是不是网络问题

抓包分析
1.观察正常的数据包过程
2.分析出现描述故障可能的原因

建立tcp连接打印了两页后打印机挂了,主机就一直发送SYN,但是打印机不理,打印机死机

3.分公司的DNS困扰

问题场景:
一家公司在总部之外开了几家分公司,部署所有分支都放置一台备用域控制,公司所有IT核心设备都放置在总部,域控制器是一台代理DNS服务器,它接受来自总部的上游
DNS服务器的资源记录信息。现在发现所有分支的用户都能访问Internet和分支的内部服务器,却不能访问总部的内部服务器。

正常上网肯定是UDP53号端口,DNS之间递归查找时,用的是TCP53号端口

可能中间路由器写了一些acl,只允许UDP53,不允许TCP53

4.无谓的争吵

问题场景
程序员开发了一个应用程序,用于把多个商店的销售报告发回总部的数据库,为了节约正常工作时间的宽带,不是实时传输而是晚上集中传输。然而在集中传输的时候,出现一些地区的数据丢失,有的数据还存在错误,有的地区出现部分数据丢失,系统管理员很懊恼,因为程序员说这是网络的问题导致的数据损坏,BOSS让你证明,不是你管辖的网络问题

抓包之前的思考
	1.我们完全不了解程序员开发的应用程序,怎么分析问题
	2.抓包才是唯一出路
	3.先抓一个包去看看,程序员用的什么协议传输数据的
	4.很low,竟然用的FTP协议
	5.这下好办多了。
	6.只需要把中间传输的FTP数据抓出来跟原始传输的数据做个MD5
	7.保证MD5值是一致的,不就能证明跟网络一毛钱关系也没有吗
	
	md5是验证数据完整性的,只要一致,就和网络没关系
	ftp.request.command=="STOR"   找传输文件名字的
	ftp-data		

5.上网为什么这么慢

问题场景
经常很多员工反映,上网速度很慢,需要系统管理员确认问题范围

抓包前的思考
	1.上网流量一般通过TCP的HTTP协议传输
	2.导致上网流量卡顿,有很多种可能性
	3.通过Wireshark抓取数据包分析问题一个很重要的步骤
	4.就是抓取正常数据包通讯过程,对比法才能很快确认问题点
	5.所以,我就看看一个正常HTTP数据通讯过程
	
上网慢原因:
	网络拥塞
	服务器没办法及时响应,处理的session太多了
	上层的HTTP可能被一些软件影响
	
SYN/ACK很久才回:(这个包一般很小,最多100字节,不会是网络延迟问题)
	线路延迟
7层协议请求发送的时间很长
	客户端延迟
7层协议数据回来的很慢
	服务器端延迟(80%的可能性)

6.SSH登录卡住了

问题场景:很多情况下我们在SSH登录一台Linux主机的时候,输入用户名和密码的时候老是出现卡住的现象,通过抓包来分析其中的根本原因

frame.number>27 and frame.number<34  看编号28到33之间的包,这些包是和ssh连接产生的包,中间time出现了很大的波动

结论问题分析
通过抓包现象,我们可以推出,这台linux服务器在接收到ssh访问请求时,会先查询该客户端IP所对应的PRT记录。
假如经过5秒还没有收到回复,就再发一次查询。如果第二次查询还是等了5秒钟还没有回复,就彻底放弃查询

解决方法:
1.在DNS上添加PRT记录,使得DNS查询成功,就不用等待这10秒了
2.关闭这台linux客户端的nameserver的DNS指向
3.关闭DNS客户端的服务功能
cat /etc/ssh/sshd_config|grep -I usedns
#UseDNS yes
vi /etc/ssh/sshd_config
UseDNS no

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值