Android设备推送traceroute命令进行网络诊断

文章目录

Traceroute(追踪路由) 是一个用于网络诊断的工具,主要用于追踪数据包从源主机到目标主机所经过的路由路径,以及每一跳(路由器)的响应时间、IP 地址等信息。它通过逐层发送特定类型的网络数据包,并分析返回的响应来实现路由追踪。

工作原理

Traceroute 的核心原理基于 ICMP 协议 和 TCP/UDP 协议,具体步骤如下:

  1. 发送探测数据包
    初始时,设置数据包的 TTL(生存时间)值为 1,第一个路由器收到数据包后会将 TTL 减 1 至 0,此时路由器会返回一个 ICMP 超时报文,告知源主机该路由器的存在和响应时间。
    随后,逐步增加 TTL 值(如 2、3、4...),重复上述过程,直到数据包到达目标主机或超过预设的最大跳数(默认通常为 30 或 64)。
  2. 判断目标是否可达
    当 TTL 值足够大时,数据包到达目标主机。若目标主机开放了指定端口(如 UDP 的 33434 端口),则会返回 ICMP 端口不可达报文,表示追踪完成;若使用 TCP 协议,目标主机会返回 SYN/ACK 响应(针对开放端口)。

下载traceroute for android

  1. 进入traceroute-android-executable github主页
  2. 如下图点击libs
  3. 选择合适的bin,32位系统选择armeabi-v7a,64位选择arm64-v8a
  4. 点击traceroute
  5. 点击下载,如下图右下角有个下载的图标,点击下载可执行文件

推送到安卓设备

得有root权限,否则推送不了或者无法执行,比如下图放到/sdcard中是执行不了的

推送到/system/bin下

bash 复制代码
adb root
adb remount
adb push traceroute /system/bin/

执行traceroute

Linux/macOS

bash 复制代码
traceroute [选项] 目标主机
  • 常用选项:
    -I:使用 ICMP 协议(默认)。
    -T:使用 TCP 协议(针对特定端口,如 80 或 443)。
    -U:使用 UDP 协议(默认)。
    -n:不解析 IP 地址的域名,直接显示 IP。
    -p:指定 TCP/UDP 端口(仅用于 - T/-U 选项)。

    示例:

    bash 复制代码
    traceroute -I www.baidu.com  # 使用ICMP追踪百度
    traceroute -T -p 443 www.google.com  # 使用TCP 443端口追踪谷歌

traceroute www.baidu.com

bash 复制代码
traceroute to www.baidu.com (183.2.172.17), 30 hops max, 60 byte packets
1  XiaoQiang (192.168.31.1)  162.510 ms  160.598 ms  158.673 ms
2  192.168.3.1 (192.168.3.1)  157.332 ms  156.154 ms  155.153 ms
3  * * *
4  100.64.0.1 (100.64.0.1)  170.763 ms  170.129 ms  169.556 ms
5  61.146.241.237 (61.146.241.237)  168.678 ms * 119.145.223.201 (119.145.223.201)  167.655 ms
6  * * *
7  113.96.5.202 (113.96.5.202)  198.940 ms * 113.96.4.6 (113.96.4.6)  196.529 ms
8  * * *
9  14.29.117.170 (14.29.117.170)  28.338 ms  26.507 ms  25.786 ms
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *
  • 各列含义:
    第 1 列:跳数(TTL 值)。
    第 2 列:路由器的 IP 地址(或域名)。
    第 3-5 列:三次探测的响应时间(ms),若超时则显示*。

作者:帅得不敢出门

相关推荐
TlSfoward7 小时前
如何用 TLS 与 HTTP 指标降低误伤 TLSFOWARD抓包工具
网络·网络协议·http
跨境小陈7 小时前
2026 年如何使用 Python 抓取 Reddit 数据
开发语言·网络·python
喵都学不动了7 小时前
Android 自动化测试完全指南(新人版)
android
码云骑士8 小时前
76-全量微调vs-LoRA-vs-QLoRA-三种微调方式对比与选型
android
光头闪亮亮8 小时前
Fyne ( go跨平台GUI )项目实战-WebView 组件开发技术详解
android·go
嵌入式小周8 小时前
Genymotion 安卓模拟器在 Intel 芯片 Mac 上的运行(附带下载方式)
android·macos
汤愈韬9 小时前
关于OSPF中一类、二类、三类LSA的一些思考
网络·网络协议
我送炭你添花9 小时前
HART协议详解:00 为什么工业世界仍然需要HART?
网络·机器人·自动化·智能工厂
vortex510 小时前
网络路径探测三大技术:原理、缺陷与选型指南
网络
草莓熊Lotso10 小时前
【Linux网络】深入理解Linux IO多路复用:select服务器完善、内核原理与poll实战
linux·运维·服务器·c语言·网络·c++