Android设备网络故障排查

本文介绍了如何在Android设备上使用tcpdump工具进行网络故障排查,包括获取root权限、复制tcpdump到设备、设置权限、使用tcpdump命令抓包、过滤网络流量以及分析异常情况。通过抓包和分析数据包,可以诊断目标地址访问异常的问题,例如检查防火墙配置或网络连接状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安卓设备在内网中访问指定目标地址出现异常的问题排查

前言

Android手机tcpdump抓包
本次使用设备为Android虚拟设备(已获取root权限)

正文

网络障碍排查

  1. 进入设备
adb shell

如果有多个设备则先查看设备列表并指定设备

adb devices
adb -s [设备名称] shell
  1. 复制tcpdump
find / -name "tcpdump" 2>/dev/null

我们发现 android已经内置了 tcpdump 目录在/system/xbin/tcpdump
如果没有安卓设备内没有搜到的话,就网上下载tcpdump复制到手机

cp /system/xbin/tcpdump /sdcard/tmp/tcpdump
  1. 提权tcpdump
chmod 777 /sdcard/tmp/tcpdump

如果可以直接使用tcpdump可跳过2-3步骤

  1. tcpdump命令简介
查看所有可以抓包的网络接口
tcpdump -D
抓包使用的网络接口
tcpdump -i [interface]
tcpdump -i any
限制 tcpdump 抓包的数量
tcpdump -c [num]
tcpdump -c 5
-n 选项显示 IP 地址 -nn 选项显示端口号
过滤host
tcpdump host ip
tcpdump -i any -c 5 -n -nn
-w /sdcard/capture.pcap 可将网络数据包保存到文件后 pull到pc上使用wireshark分析
# 常用命令
# 所有网卡,不看域名看ip,只查看5行
tcpdump -i any -c 5 -n -nn
# 所有网卡,看https请求,不限制行数
tcpdump -i any port 443 -n -nn

tcpdump各种信号类型含义

F : FIN - 结束; 结束会话
S : SYN - 同步; 表示开始会话请求
R : RST - 复位; 中断一个连接
P : PUSH - 推送; 数据包立即发送
A : ACK - 应答

正常一个http请求应该有 S-P-F,如果发出一个请求出现 [S.][.][.][.]…却不见[P.]和[F.]很可能就是网路不通了,然后再去相应目标地址抓包查看或查看防火墙配置等。

  1. 用进程名获取端口
netstat -anp | grep [packagename]
tcpdump -i any port [端口号] -n -nn

总结

很实用的Android设备网络故障分析方法,实际上出现问题的原因多还是些传统问题,如目标地址的网络防火墙,宿主机网络异常等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gallonyin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值