主页 > 游戏开发  > 

学习Wireshark分析AndroidNetlog

学习Wireshark分析AndroidNetlog

Android 设备抓取的日志中,netlog 文件夹包含.cap文件可以使用Wireshark工具查看网络日志。

Wireshark 分析 DNS 步骤

在使用Wireshark分析网路日志时,要检查DNS解析是否正常,可以按照以下步骤操作:

识别DNS查询和回应 使用过滤器udp.port == 53来查看所有DNS相关的流量,因为DNS通常基于UDP协议的53端口(除非有特殊配置使用TCP)。 检查DNS响应 查看DNS响应包,确保状态码(Status Code)为NoError(0)。这意味着查询成功,没有错误。 在响应中,你应该能看到对应的Answer部分,列出解析出的A记录(IPv4地址)或其他记录类型(如AAAA、CNAME等)。 测试域名解析 如果需要查看特定域名的解析情况,可以使用过滤器。例如: dns.qry.name contains "example " 这样可以过滤出包含特定域名查询与应答的数据包。 分析响应时间 在Wireshark数据中,注意观察请求与响应之间的时间差。若响应过慢,可能暗示网络延迟或DNS服务器性能问题。 结果验证 对比应答中的IP地址与预期值,确保解析结果正确。 若发现某些查询无应答或状态码不为NoError,需要查明是解析失败、拒绝,还是超时等原因。 其他信息 CNAME跟随:若有CNAME记录,应确保CNAME能正确转换到最终A或AAAA记录。 缓存检查:若一开始没有看到DNS流量,可以检查是否存在本地缓存效应。

通过这些步骤,你可以判断DNS解析是否正常,并找出潜在的解析问题。如发现持续失败,可能需要检查网络连接、确认使用的DNS服务器是否可用,或调整DNS配置(例如,替换为公共DNS)。

DNS知识

在DNS协议中,Opcode和Status Code(通常称为Response Code或Rcode)是两个不同的概念。

Opcode 定义:Opcode字段表示DNS消息的操作码,其值为0表示这是一个标准查询(QUERY)。 作用:指示请求的类型,例如标准查询、反向查询等。在大多数情况下,Opcode为0就是标准查询。 Rcode(Response Code) 定义:Rcode字段在DNS响应中,指示查询的结果状态。常见的Rcode包括: 0 (NoError):表示无错误,查询成功。 3 (NXDOMAIN):表示域名不存在。 5 (Refused):表示服务器拒绝执行查询操作。 位置:Rcode通常是在响应消息的Flags中。

Wireshark-Netlog-一个DNS标准查询

如上显示一个DNS标准查询,而不是查询,因此没有Rcode字段,

Answer RRs

以下是可能导致Answer RRs为0的原因:

未接收到相应的响应:你所截图的只是DNS查询,非响应。如果没有对应的响应显示在捕获数据中,意味着可能响应未返回或被丢弃了。

响应中无答案:如果你查看到的响应包内的Answer RRs为0,而Rcode为0(NoError),则表示查询能够成功执行,但是请求的记录不在服务器的DNS数据库中(例如,查询的子域可能没有配置,结果为空)。

分组解读 DNS 信息 DNS 分组主要信息分类 分类 详情

Frame

包含捕获的字节数量和帧在链接层上的完整信息。这部分一般用于识别数据包在物理/数据链路层的传输细节,例如时间戳之类的信息。

Linux cooked capture v2 描述了数据包的封装方式,用于非以太网接口的捕获,显示链路层协议类型、接口索引、链路层地址类型等。 Internet Protocol Version 4(IPv4)

提供IP相关信息,包括源IP地址(Src: 10.89.31.165)和目标IP地址(Dst: 120.196.165.7)。检查源和目的地址是否符合预期是判断数据包路由正确的重要步骤。

eg:Internet Protocol Version 4, Src:10.89.31.165, Dst:120.196.165.7

User Datagram Protocol(UDP)

显示UDP源端口和目标端口(Src Port: 35148, Dst Port: 53)。端口53是DNS的默认端口。

eg:User Datagram Protocol,Src Port: 35148, Dst Port: 53

Domain Name System(DNS)

- Transaction ID: 识别请求与响应的唯一ID(0xeb8b)。

- Flags: 显示操作码(Opcode: Standard query)和此消息是否为请求或响应。

- Queries: 列出查询信息,包括请求的域名和类型(如A记录),例如查询 connectivitycheck.gstatic 的A记录(IPv4地址)。

如何找到响应数据 数据包交互 在Wireshark中,可以通过Transaction ID追踪到相应的DNS响应包。通常在相应的数据包列表中按这一ID进行过滤或查看。 点击[Response In: 7]
标签:

学习Wireshark分析AndroidNetlog由讯客互联游戏开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“学习Wireshark分析AndroidNetlog