windows 的 tracert 只能送出 ICMPv6 封包

linux 的 traceroute 可以送出 TCP , UDP , ICMPv6 封包

所以我們用 linux traceroute 來說明

 

送出 UDP 封包 , TTL 從 1 開始

traceroute -6 -z 2 -q 1 -s 2001:b021:34:208:20f:b0ff:fec8:8a26 -n 2001:4860:4860::8888

 

送出 TCP 封包 , TTL 從 1 開始

traceroute -6 -z 2 -q 1 -T -s 2001:b021:34:208:20f:b0ff:fec8:8a26 -n 2001:4860:4860::8888

 

送出 TCP 封包 , TTL = 32

traceroute -6 -f 32 -m 32 -z 2 -q 1 -T -s 2001:b021:34:208:20f:b0ff:fec8:8a26 -n 2001:4860:4860::8888

 

上面指令中的 2001:b021:34:208::/64 是 client 曾經拿過的 prefix , 但對 router 來說是無效的

取得無效 prefix 的方式如下

 

這是設備接線示意圖

pc -- switch -- router -- IPv6 server

 

router 成功連線取得 PD1 後 , pc 會拿到 prefix1

此時將 switch 和 router 斷線

將 router 重新啟動

router 重新成功連線取得 PD2 後

將 switch 和 router 的網路線接回去 , pc 會拿到 prefix2

這樣 pc 就會有 prefix1 和 prefix2

 

參數說明

-z : 送出封包的間隔 , 以秒為單位 , 若沒指定 , 預設是 0 秒

-q : 每個 hop 送出的封包數 , 預設是 3 個

-s : 指定 source IPv6 address

-T : 使用 TCP 封包

-n : 不要解析 IPv6 address

-f : 指定開始的 TTL , 沒指定預設從 1 開始

-m : 設定最大 TTL 值

 

更多說明請參考 man traceroute

 

待續

看完文章請按 讚 or 推 , 感謝啦 ~ 

文章標籤
創作者介紹

Kai-Cho 的環遊世界

Kai-Cho 發表在 痞客邦 PIXNET 留言(0) 人氣()