
Mac上ですべてのパケットを明確に表示できる、最高クラスのmacOSアプリ。Wiresharkの代替。
TCP Viewer は、ライブキャプチャおよびキャプチャファイル用の macOS パケットビューアです。メインアプリには AppKit を、キャプチャにはシステムの libpcap を、詳細なパケット情報にはベンダ提供の Wireshark ライブラリを使用しています。
brew install cmake ninja meson pkg-config autoconf automake libtool
サブモジュールを含めてクローンし、固定された Wireshark 依存関係をブートストラップします:
git clone --recurse-submodules <repo-url>
cd TCPViewer
cp Config/TCPViewer.local.xcconfig.example Config/TCPViewer.local.xcconfig
./scripts/bootstrap-wireshark.sh
サブモジュールなしでクローンした場合:
git submodule update --init --recursive
./scripts/bootstrap-wireshark.sh
scripts/bootstrap-wireshark.sh は最初に
scripts/bootstrap-wireshark-deps.sh を実行し、Wireshark にバンドルされているランタイムライブラリをソースからビルドして、デプロイメントターゲットを macOS 15.0 として Vendor/.install/wireshark-deps に配置します。Homebrew はビルドツールにのみ使用されます。リリースバンドルは /opt/homebrew や /usr/local から Homebrew の bottle dylib をコピーしてはいけません。
ローカルの署名、appcast、Sparkle、Sentry、およびリリース関連の値は Git に保存しないでください。Config/TCPViewer.local.xcconfig、.env、シェル環境変数、または Keychain を使用したツールなど、無視されるローカルファイルを使用してください。
Xcode の場合:
TCPViewer.xcodeproj を開きます。TCPViewer スキームを選択します。My Mac を選択します。コマンドラインでのビルド:
xcodebuild -project TCPViewer.xcodeproj -scheme TCPViewer build
Xcode が署名を要求する場合は、TCPViewer と PcapPlusPlusCore の開発チームを選択してください。
xcodebuild test \
-project TCPViewer.xcodeproj \
-scheme TCPViewer \
-destination 'platform=macOS'
TCP Viewer のリリースは、リリーススクリプトによってビルド、公証、Sparkle 用の署名、Cloudflare R2 へのアップロード、そしてオプションでリリースバックエンドへの公開が行われます。
初回リリースのセットアップ:
npm install
bundle install
gh auth login
.env.example からローカルの .env を作成し、必要なリリース値を入力してください。実際のシークレットをコミットしないでください。.env 内のコメントは # コメントのままにしてください。sentry-cli はファイル読み込み時に // コメントを受け付けないためです。
プロダクションリリースの場合は、ReleaseNote.json に対応するエントリを追加してから、次のコマンドを実行します:
npm run release
プロンプトに従って beta または production を選択します。プロダクションリリースでは、Sparkle appcast の作成、v<version> タグのプッシュ、GitHub リリースの公開も行われます。アーティファクトは以下の場所に書き込まれます:
~/Desktop/tcpviewer-production/
TCP Viewer は GPL-2.0-or-later の下でライセンスされています。これはアプリの Wireshark 統合と一致しています: libwireshark、libwiretap、および libwsutil は GPL カバーの Wireshark ライブラリです。
完全な GPL テキストは COPYING に、サードパーティの通知は THIRD_PARTY_NOTICES.md に、バイナリリースのソースコード提供条件は SOURCE_CODE_OFFER.md にあります。
TCP Viewer は、パケット解析に Wireshark を、組み込みの16進ビューアに HexFiend を基盤としています。詳細は THIRD_PARTY_NOTICES.md を参照してください。