Android設備推送traceroute命令進行網絡診斷

文章目錄

  • 工作原理
  • 下載traceroute for android
  • 推送到安卓設備
  • 執行traceroute
  • traceroute www.baidu.com

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下

adb root
adb remount
adb push traceroute /system/bin/

執行traceroute

Linux/macOS

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

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),若超時則顯示*。

作者:帥得不敢出門

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/908725.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/908725.shtml
英文地址,請注明出處:http://en.pswp.cn/news/908725.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Linux應用】Linux系統日志上報服務,以及thttpd的配置、發送函數

【Linux應用】Linux系統日志上報服務,以及thttpd的配置、發送函數 文章目錄 thttpd服務安裝thttpd配置thttpd服務thttpd函數日志效果和文件附錄:開發板快速上手:鏡像燒錄、串口shell、外設掛載、WiFi配置、SSH連接、文件交互(RADX…

Linux 內核內存管理子系統全面解析與體系構建

一、前言: 為什么內存管理是核心知識 內存管理是 Linux 內核最核心也最復雜的子系統之一,其作用包括: 為軟件提供獨立的虛擬內存空間,實現安全隔離分配/回收物理內存資源,維持系統穩定支持不同類型的內存分配器,最優…

鼠標的拖動效果

1、變量的設置 let isDragging false; let startX; let startY; let endX; let endY; let box null;isDragging : 表示是否推拽startX、startY:表示起始坐標,相對于元素endX、endY:表示結束坐標,相對于元素box&…

SwaggerFuzzer:一款自動化 OpenAPI/Swagger 接口未授權訪問測試工具

SwaggerFuzzer 🌐 一款自動化 OpenAPI/Swagger 接口未授權訪問測試工具🚀 工具介紹:SwaggerFuzzer? 核心功能亮點🚀 快速使用🧰 支持參數 📌 項目結構📥 獲取與下載 🌐 一款自動化 …

文獻閱讀:Exploring Autoencoder-based Error-bounded Compression for Scientific Data

目錄 論文簡介動機:為什么作者想要解決這個問題?貢獻:作者在這篇論文中完成了什么工作(創新點)?規劃:他們如何完成工作?離線訓練階段:在線壓縮階段 理由:通過什么實驗驗證它們的工作…

【業務框架】3C-相機-Cinemachine

概述 插件,做相機需求,等于相機老師傅多年經驗總結的工具 Feature Transform:略Control Camera:控制相機參數Noise:增加隨機性Blend:CameraBrain的混合列表指定一個虛擬相機到另一個相機的過渡&#xff…

設計一個算法:刪除非空單鏈表L中結點值為x的第一個結點的前驅結點

目錄 單鏈表的存儲結構定義如下 快慢指針法 三指針法版本① 三指針法版本② 單鏈表的存儲結構定義如下 typedef struct{Elemtype data;struct Node* next; }LNode,*LinkList; 快慢指針法 void deleteprex(LinkList L, Elemtype e) {if (L NULL || L->next NULL ||…

【Qt】:設置新建類模板

完整的頭文件模板 #ifndef %FILENAME%_H #define %FILENAME%_H/*** brief The %CLASSNAME% class* author %USER%* date %DATE%*/ class %CLASSNAME% { public:%CLASSNAME%();~%CLASSNAME%();// 禁止拷貝構造和賦值%CLASSNAME%(const %CLASSNAME%&) delete;%CLASSNAME%&a…

?**?CID字體?**? 和 ?**?Simple字體?**?

在PDF中,字體類型主要分為 ??CID字體?? 和 ??Simple字體?? 兩大類,它們的主要區別在于編碼方式和適用場景。以下是它們的詳細對比: ??1. CID字體(CID-keyed Fonts)?? CID(Character Identifie…

計組_導學

2025.05.31:老湯講408計組學習筆記 導學 第1章計算機系統概述:對計算機系統有全局的認識第2章總線系統:簡單且獨立,不會依賴其他內容,它是被依賴的第3章主存儲器:只有了解主存儲器的內部結構,才能理解在主存中是如何存儲二進制的第4章數據的表示與運算:各種編碼以及計算…

【GPT模型訓練】第二課:張量與秩:從數學本質到深度學習的基礎概念解析

這里寫自定義目錄標題 張量(Tensor)的定義關鍵特點:示例: 張量的秩(Rank)示例:“秩”的拼音常見混淆點 總結 張量(Tensor)的定義 在數學和物理學中,張量是一…

RabbitMQ work模型

Work 模型是 RabbitMQ 最基礎的消息處理模式,核心思想是 ??多個消費者競爭消費同一個隊列中的消息??,適用于任務分發和負載均衡場景。同一個消息只會被一個消費者處理。 當一個消息隊列綁定了多個消費者,每個消息消費的個數都是平攤的&a…

【Linux操作系統】基礎開發工具(yum、vim、gcc/g++)

文章目錄 Linux軟件包管理器 - yumLinux下的三種安裝方式什么是軟件包認識Yum與RPMyum常用指令更新軟件安裝與卸載查找與搜索清理緩存與重建元數據 yum源更新1. 備份現有的 yum 源配置2. 下載新的 repo 文件3. 清理并重建緩存 Linux編輯器 - vim啟動vimVim 的三種主要模式常用操…

73常用控件_QFormLayout的使用

目錄 代碼?例: 使? QFormLayout 創建表單. 除了上述的布局管理器之外, Qt 還提供了 QFormLayout , 屬于是 QGridLayout 的特殊情況, 專 ??于實現兩列表單的布局. 這種表單布局多?于讓??填寫信息的場景. 左側列為提?, 右側列為輸?框 代碼?例: 使? QFormLayout 創…

蘭亭妙微 | 醫療軟件的界面設計能有多專業?

從醫療影像系統到手術機器人控制界面,從便攜式病原體檢測設備到多平臺協同操作系統,蘭亭妙微為眾多醫療設備研發企業,打造了兼具專業性與可用性的交互界面方案。 我們不僅做設計,更深入理解醫療場景的實際需求: 對精…

鴻蒙開發修改版本幾個步驟

鴻蒙開發修改版本幾個步驟 比如:5.0.4(16)版本改為5.0.2(14)版本 一、項目下的build-profile.json5 "products": [{"name": "default","signingConfig": "default&qu…

Flask 基礎與實戰概述

一、Flask 基礎知識 什么是 Flask? Flask 是一個基于 Python 的輕量級 Web 框架(微框架)。 特點:核心代碼簡潔,給予開發者更多選擇空間。 與 Django 對比: Django 創建空項目生成多個文件,Flask 僅需一個文件即可實現簡單應用(如 "Hello, World!")。 Flask …

Linux安全加固:從攻防視角構建系統免疫

Linux安全加固:從攻防視角構建系統免疫 構建堅不可摧的數字堡壘 引言:攻防對抗的新紀元 在日益復雜的網絡威脅環境中,Linux系統安全已從被動防御轉向主動免疫。2023年全球網絡安全報告顯示,高級持續性威脅(APT)攻擊同比增長65%,平均入侵停留時間縮短至48小時。本章將從…

Java嚴格模式withResolverStyle解析日期錯誤及解決方案

在Java中使用DateTimeFormatter并啟用嚴格模式(ResolverStyle.STRICT)時,解析日期字符串"2025-06-01"報錯的根本原因是:模式字符串中的年份格式yyyy被解釋為YearOfEra(紀元年份),而非…