メインコンテンツへスキップ

macOS版の制約

管理者権限が必須

パケットキャプチャは /dev/bpf* デバイスへのアクセスが必要で通常ユーザーからはアクセス出来ません。
起動時に管理者権限を付与する必要が有ります。

追加ドライバは不要

Windows版ではNpcapが必要になりますが、macOS版はlibpcap / BPFOS標準なので不必要です。

プロセス識別(v1.5)のmacOS固有の限界

実装方式:
    - Apple libproc(非公開・変更されうる API)でポートとプロセスを照合
    - スナップショット方式(その瞬間のシステム状態を読む)

結果、次の様な状態が発生するとパケットを取りこぼしやすいです。
    - 短命な接続(一瞬で終わる通信)
    - 権限の高いシステムプロセス(ユーザースペースから見えない)
    - 複数プロセスが同じソケットを共有している場合
      (最初に見つかったプロセスだけ表示)

macOS 独自よりの正確な実装は実施されていないです。
    - pktap: パケットにプロセス名・PID を付与できる疑似インターフェース
      (tcpdump -i pktap など)Sniffnet は標準 libpcap 経由のため未使用。
    - Network Extension / カーネルフックは Apple entitlement が必要。
      Sniffnet は「軽量・非侵襲」を優先して採用していない。

VPN / トンネルインターフェースの制約

macOS + libpcap 全般の制約から来ています。

    - utun0 など VPN 用インターフェースで復号後のトラフィックが見えないことがある
    - トラフィックが別経路(物理 NIC 上の ESP など)でしか見えない場合がある
    - Cisco VPN など一部構成ではキャプチャ自体が不可能と報告されている

VPN 越しの通信を追いたい場合、物理 NIC(Wi-Fi / Ethernet)側を選ぶ必要が多い。

グラフィック・UI の既知問題

iced のデフォルトレンダラ(wgpu / Metal)が環境によって不安定なことがあるようです。


症状


対処


起動直後に panic


ICED_BACKEND=tiny-skia で CPU レンダラに切替

国旗が黒い四角


同上


画面のちらつき・異常


同上