Trippy - ネットワーク診断ツール チートシート
trippy (バイナリ: trip) は Rust で書かれたネットワーク診断ツールで、traceroute と ping を 1 つのライブ TUI に融合します。すべてのホップについて、送受信パケット数、損失 %、および最後/平均/最良/最悪/標準偏差のレイテンシ、さらにジッター分析、ヒストグラム、GeoIP、および DNS 解決を表示します。ICMP、UDP、TCP プローブをサポートし、複数のターゲットを同時にトレースできるため、従来の traceroute + ping よりも「ネットワークがどこで破断しているのか」という質問に答えるのがはるかに高速です。
インストール
| プラットフォーム | コマンド |
|---|
| Cargo (すべてのプラットフォーム) | cargo install trippy |
| macOS (Homebrew) | brew install trippy |
| Arch Linux | sudo pacman -S trippy |
| Debian/Ubuntu | sudo apt install trippy |
| Fedora | sudo dnf install trippy |
| Nix | nix-env -iA nixpkgs.trippy |
| Windows (Scoop) | scoop install trippy |
権限
ICMP/ロー ソケットには昇格されたアクセス権が必要です。
sudo trip example.com
# または、1 回限りの能力を付与 (Linux)、その後 sudo なしで実行します。
sudo setcap cap_net_raw+ep $(which trip)
基本的な使用方法
| コマンド | 説明 |
|---|
trip example.com | ホストをトレース + ping (ICMP、ライブ TUI) |
trip example.com google.com | 複数のターゲットを同時にトレース |
trip 1.1.1.1 | IP を直接トレース |
trip --help | 完全なオプション一覧 |
trip --version | バージョン |
プロトコルおよび プローブ オプション
| オプション | 説明 |
|---|
-i, --interface eth0 | 特定のソース インターフェイスを使用 |
--icmp | ICMP プローブ (デフォルト) |
--udp | UDP プローブ |
--tcp | TCP プローブ (ファイアウォール経由に適切) |
-p, --target-port 443 | ターゲット ポート (UDP/TCP) |
--first-ttl N | 指定の TTL から開始 |
--max-ttl N | ホップの最大数 |
-4 / -6 | IPv4 / IPv6 を強制 |
タイミングおよび レート
| オプション | 説明 |
|---|
--min-round-duration 100ms | ラウンドあたりの最小時間 |
--max-round-duration 1s | ラウンドあたりの最大時間 |
--initial-sequence N | シーケンス番号の開始 |
--read-timeout 1s | プローブごとの読み取りタイムアウト |
--grace-duration 100ms | 遅延応答を待機 |
DNS および GeoIP
| オプション | 説明 |
|---|
-r, --dns-resolve-method system | リゾルバー: system, resolv, google, cloudflare |
-z, --dns-lookup-as-info | ホップごとの AS (自律システム) 番号を表示 |
--dns-resolve-all | ホストのすべての IP を解決 |
--geoip-mmdb-file GeoLite2-City.mmdb | ホップごとに都市/国の GeoIP を追加 |
インタラクティブ キー
| キー | アクション |
|---|
↑ / ↓ | ホップを選択 |
Tab | ターゲット間で切り替え |
z | ホップ チャートを切り替え |
h | ヘルプを切り替え |
q | 終了 |
Esc | パネルを閉じる |
レポート (非対話型)
trippy はスクリプトとチケット用に 1 回限りのレポートを出力できます。
| コマンド | 説明 |
|---|
trip example.com -m report | テーブル レポートを出力して終了 |
trip example.com -m json | JSON 出力 |
trip example.com -m csv | CSV 出力 |
trip example.com -m stream | 連続テキスト ストリーム |
trip example.com -m flows | 異なるルーティング フロー (ECMP) を表示 |
一般的なワークフロー
# レイテンシはどこにあるか? AS 情報を使用して 30 ホップ キャップでトレース
sudo trip example.com -z --max-ttl 30
# ICMP をドロップするファイアウォール経由で診断
sudo trip example.com --tcp -p 443
# 2 つのアップストリームを並べて比較
sudo trip 1.1.1.1 8.8.8.8
# サポート チケットに添付するレポートをキャプチャ
sudo trip example.com -m json > trace-report.json
Trippy と従来のツール
| ツール | ping+traceroute を組み合わせ | マルチターゲット | TUI | プロトコル |
|---|
| trippy | はい | はい | リッチ | ICMP/UDP/TCP |
| mtr | はい | いいえ | 基本的 | ICMP/UDP |
| traceroute | いいえ | いいえ | いいえ | ICMP/UDP/TCP |
| ping | いいえ | いいえ | いいえ | ICMP |
リソース