trace Linux and实例,traceroute在linux中的使用方法
traceroute在linux中的使用方法
一、traceroute的實現原理
1、IP協議利用存活時間TTL來發出探測包跟蹤數據包到達目標ip主機所經歷的路由網關數量,每經過一個路由器,TTL的值就減去1。當TTL值為0時,主機就取消發送數據包,并回傳一份ICMP報文。
2、在linux系統中,traceroute 命令利用ICMP協議實現定位本地計算機與目標計算機進行網絡通信過程中經歷的所有路由器。
3、IP協議包頭部中的TTL 值可以反映數據包經過的路由器的跳數,通過控制獨立ICMP 請求報文段中的TTL 值,觀察該報文被拋棄的返回信息,traceroute命令能夠遍歷到數據包傳輸路徑上的所有路由器。
二、traceroute命令使用方法
1、命令格式
traceroute [參數] [主機]
2、常用命令參數
-4 Use IPv4
-6 Use IPv6
-d --debug Enable socket level debugging
-q Set the number of probes per each hop. Default is 3
-f 設置第一個檢測數據包的存活數值TTL的大小。
-F 設置勿離斷位。
-g 設置來源路由網關,最多可設置8個。
-i 使用指定的網絡界面送出數據包。
-I 使用ICMP回應取代UDP資料信息。
-m 設置檢測數據包的最大存活數值TTL的大小。
-n 直接使用IP地址而非主機名稱。
-p 設置UDP傳輸協議的通信端口。
-r 忽略普通的Routing Table,直接將數據包送到遠端主機上。
-s 設置本地主機送出數據包的IP地址。
-t 設置檢測數據包的TOS數值。
-v 詳細顯示指令的執行過程。
-w 設置等待遠端主機回報的時間。
-x 開啟或關閉數據包的正確性檢驗。
3、使用實例
sudo apt-get install traceroute
如果是第一次使用 traceroute 命令,則可能會出現這種情況:
按照提示安裝即可: sudo apt-get install traceroute
traceroute www.baidu.com
效果截圖:
可以看到,traceroute 一臺主機時,會看到有一些行是以星號表示的。出現這樣的情況,可能是防火墻封掉了ICMP的返回信息,所以我們得不到什么相關的數據包返回數據。
traceroute -n -m 5 -q 4 -w 3 www.baidu.com
效果截圖:
-q 4每個網關發送4個數據包
-w 3 把對外發探測包的等待響應時間設置為3秒
標簽:linux,traceroute,方法,TTL,設置,主機,ICMP,數據包
來源: https://www.cnblogs.com/ustc-hwq/p/11942192.html
總結
以上是生活随笔為你收集整理的trace Linux and实例,traceroute在linux中的使用方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python json库安装_pytho
- 下一篇: linux 其他常用命令