通信 Sniffnetの導入 Sniffnet は、インターネットトラフィックを直感的に監視・分析できるオープンソースのネットワーク監視デスクトップアプリです。 概要 Sniffnetに関しての2026-06-08時点のV1.5.0で内容が記載されています 概要 Sniffnetに関する概要です。 Sniffnet は、インターネットトラフィックを直感的に監視・分析できるオープンソースのネットワーク監視デスクトップアプリです。 注意 : BLE 通信には Wireshark + Adafruit ADA-2269 のような構成にしても対応出来ません。 基本情報 開発者 Giuliano Bellini(GyulyVGC) 開発開始 2022 年 最新版 v1.5.0(2026 年 4 月 ) GitHub 約 33,000+ stars、80名超のコントリビュータ ライセンス MIT / Apache-2.0(デュアルライセンス) 公式サイト https://sniffnet.app/ https://sniffnet.net/ 開発言語 Rust(コードの約 99%) 対応OS Windows / macOS / Linux各種(デスクトップ専用) 位置づけ Wireshark のような深いパケット解析ツールではなく、「フロー単位で今何が起きているかを把握する」用途に特化する方向のアプリです。専門知識がなくても PC 上の通信状況を把握しやすいことを目指しています。 https://sniffnet.app/ https://sniffnet.net/ 機能 Wireshark との比較 観点 Sniffnet Wireshark 対象ユーザー 初心者~中級者 専門家 操作の複雑さ 低い 高い パケットペイロード 不可 (PCAP 後に確認 ) 可能 フロー単位可視化 得意 可能だが手順が多い 地理情報・ ASN 標準搭載 プラグイン等で対応 プロセス識別 v1.5 以降 限定的 開発体制 個人中心 20 年以上の大規模チー 直感的なGUIとWiresharkの使い分け Sniffnetの特徴はなんといっても「UI」です。Wiresharkに比べてより直感的なGUIを最優先に設計しているようです。 私の使い方の想定は次の様にしようと考えています。 Sniffnet ペイロード(中身)の表示しない(表示出来ない) PC上のIP通信状態を簡単に把握 BLE は対象外 Wireshark PC上の通信状態をペイロード(中身)の表示も含めた表示 専用 USB スニファを使用したBLE通信状態の監視にも対応 (設定はやや複雑。BLE Classic は別途対応が必要) 主要機能 【プロトコル・サービス識別】 6,000 種類以上の上位レイヤサービス、プロトコル、トロイの木馬・ワームの署名を内蔵データベースで識別。 【地理情報・ ASN 】 MaxMind データベースで接続先の国と ASN( 自律システム番号=組織 ) を表示。 【ローカルネットワーク識別】 LAN と WAN を自動判別し、ローカル接続を区別。 【お気に入り (Favorites) 】 よく見るホスト・サービス・プログラムを登録し、通知や Inspect で追跡しやすく。 【 IP ブラックリスト】 設定でファイルを指定 (1 行 1 IP) 。危険な接続をハイライト。 【 ICMP / ARP 対応】 ICMP: v1.3 以降 ( メッセージ種別を Inspect で表示 ) ARP : v1.4 以降 【プロセス識別 (v1.5 の目玉機能 ) 】 長年の要望だった機能。 2026 年に実装。   - 自作ライブラリ listeners: ポートとプロセスの対応を OS 横断で取得   - picon: プログラムのアイコンを取得   - 課題 : 短命接続の取りこぼし、権限の高いプロセスの非表示など OS 制約あり 対応 OS: Windows 、 macOS 、Linux系(、 FreeBSD 、 OpenBSD 、 NetBSDなど) 【 PCAP インポート・エクスポート】 エクスポート : v1.3.0 以降 インポート   : v1.4.0 以降 (.pcap / .pcapng / .cap) 典型的な使い方 「今どこに繋がっているか」確認 → 不審な海外 IP や未知のドメインの発見 帯域の把握 → どのアプリ・サービスがどれだけ通信しているか (v1.5 のプロセス識別と相性良 ) セキュリティのざっくり監査 → ブラックリスト照合、未知プロトコルの検出 過去キャプチャの可視化 → Wireshark/tcpdump の PCAP を Sniffnet で読みやすく表示 Wireshark との連携 → Sniffnet で概要把握 → 必要なら PCAP をエクスポートして Wireshark で深掘り → BLEはWiresharkで対応         macOS版の制約 管理者権限が必須 パケットキャプチャは /dev/bpf* デバイスへのアクセスが必要で通常ユーザーからはアクセス出来ません。 起動時に管理者権限を付与する必要が有ります。 追加ドライバは不要 Windows 版では Npcap が必要になりますが、 macOS 版は libpcap / BPF が OS 標準なので不必要です。 プロセス識別(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 レンダラに切替 国旗が黒い四角 同上 画面のちらつき・異常 同上 コマンド例 : (未確認)     ICED_BACKEND=tiny-skia /Applications/Sniffnet.app/Contents/MacOS/sniffnet     ICED_BACKEND=tiny-skia sudo sniffnet   Apple Silicon(M1 以降 ) 向けと Intel 向けで別 DMG が配布されている。   アーキテクチャに合ったビルドを使うこと。 ファイルダイアログのクラッシュ(一部の新しい Mac) 2025 年時点で、 M4 Mac など一部環境でファイル選択ダイアログがクラッシュするようです。 (未確認です) 既知バグあります (GitHub Issue #878 、未解決 ) 。 影響する操作 :     - PCAP のインポート / エクスポート先の選択     - カスタムテーマの読み込み     - IP ブラックリストのインポート   ターミナル起動時のエラー例 :     unexpected NULL returned from +[NSOpenPanel openPanel] 初回起動・Gatekeeper AppStore以外からのアプリなので、初回起動時にユーザーの認証が必要になります。 macOS 固有のキーボードショートカット macOS では Ctrl の代わりに Cmd を使用 :     Cmd+Q   : アプリ終了     Cmd+,   : 設定を開く     ( その他ショートカットも同様 ) Sniffnetのテスト Sniffnetを使用するためにインストールおよび簡単なテストに関して記述しています。Sniffnetに関しての2026-06-08時点のV1.5.0で内容が記載されています。 概要 アプリ開発 / サーバー開発 /IoT 機器などの開発時に通信を伴う場合、通信状態を監視したいときがあります。現在は Wireshark を使っているのですが、軽くネットワークを見たいとき用に使いやすいソフトは無いかと探したら、 macOS に対応した Sniffnet を発見したので早速調べてインストールとテストを実施しました。 Sniffnet は、インターネットトラフィックを直感的に監視・分析できるオープンソースのネットワーク監視デスクトップアプリです。 注意 : BLE 通信には Wireshark + Adafruit ADA-2269 のような構成としても対応出来ません。 環境 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 インストール インストール手順 ここからは具体的に macOS Apple Slicon 版 Sniffnet をインストールする手順です。 以下の URL からアプリをダウンロードします。 https://sniffnet.app/ 画面右上のメニューから「 DOWNLOAD 」を選択してダウンロード画面へ移動します。 今回は「 macOS Apple Slicon 」を選択します。 トラブル ? ダウンロード出来ない状態です。 何度かトライしたらダウンロード開始しました。 Application フォルダーにコピーしてインストールします。 最初のアプリ起動 「 Snoddnet 」 ICON をダブルクリックして最初の起動をします。 「完了」を押します。 Apple のセキュリティにより直接起動は拒否されたので「システム設定 > プライパシーとセキュリティ」を開きます。 (macOSがAppleStrore以外から入手したアプリを起動するときの基本的な手順です。) 「お使いの Mac を保護するために "Sniffnet.app" がブロックされました。」の「このまま開く」ボタンを押して強制的に起動します。 「このまま開く」で起動します。 再度警告 ! 「パスワードを使用 .... 」ボタンを押して進めます。 バスワードを入力して「 OK 」ボタンを押して進みます。 Sniffnet アプリから許可を求めるのでバスワードを入力して「 OK 」ボタンで進みます。 補足 : パケットキャプチャは /dev/bpf* デバイスへのアクセスが必要で通常ユーザーからはアクセス出来ません。 起動時に管理者権限を付与する必要が有ります。 最初の画面が開きます。 日本語表示の設定 画面右上の「 Settings 」ボタンを押します。 タブの「 General > Laguage 」から「 JA   - 日本語」を選択します。 設定の変更は直ぐに適用され、表示が変更されます。 English意外に変更しても、アプリを再度起動するとEnglishに戻ります。 Windowsサイズも元に戻ります。 ダイアログを閉じてトップ画面を表示します。 トップ画面 簡易テスト トラヒック元からネットワークアダプタを選択し「 en0 」を更に選択します。 次に「開始 ! 」ボタンで試しましょう。 通信状態がリアルタイムで表示されます。 概要(Overview)画面 画面は「概要( Overview )」です。 画面の意味 この画面は「この Mac が今どこと通信していて、どのサービス・アプリが通信量を使っているか」 を見るための画面です。ただし、ここでは通信の中身、つまり HTTPS の本文や BLE パケットなどは見えません。あくまで IP 通信の相手・量・サービス・アプリの概要表示です。 左上の ネットワークアダプタ en0 は、現在監視している通信インターフェースです。 macOS では en0 は多くの場合 Wi-Fi または内蔵ネットワーク系のインターフェースです。 適用されているフィルタ : なし なので、 Sniffnet が見える範囲の通信をすべて集計しています。 中央左の円グラフは、監視開始から現在までの通信量です。 受信 : 104 KB 送信 : 15 KB ドロップした : 0 B 合計 : 119 KB つまり、この時点では受信の方が多い通信状態です。 右上の トラフィックレート は、時間ごとの通信量グラフです。 黄色 : 受信 青 : 送信 縦軸 : 通信量 横軸 : 時間 画面では、数分おきに受信の大きな山が出ています。これは Web アクセス、同期、通知、バックグラウンド通信などでデータを受信したタイミングです。 下段の 3 つの一覧 ネットワークホスト 通信相手の一覧です。 例 : facebook.com - Facebook, Inc. 212.119.29.130 - NTT America, Inc. 192.168.1.10 amazonaws.com - Amazon.com, Inc. 国旗は接続先の推定地域、鍵アイコンはローカル / プライベート系や識別情報の扱いを示す表示です。 192.168.1.10 はローカルネットワーク内の機器です。 サービス 通信に使われているサービス・プロトコルの一覧です。 例 : https — Web の暗号化通信 cleverdetect mqtt — IoT やメッセージングで使われる軽量プロトコル domain — DNS 名前解決 この画面では https が一番多く、 111 KB 通信しています。 プログラム どのアプリ・プロセスが通信しているかです。 例 : firefox vncserver cloud-drive... Astropad Work... つまり、この時点では Firefox や VNC 、クラウドドライブ系、 Astropad 関連プロセスが通信していると分かります。 上部のボタン 上部には画面切り替えがあります。 概要 : 今表示している集計画面 虫眼鏡 : Inspect / 詳細確認 ベル : 通知一覧 右上の工具アイコン : 設定 一時停止アイコンはキャプチャの停止 / 再開、隣のアイコンは表示モード変更系です。 リソース使用状態 macOSのアプリのアクセスビリティモニタでの Sniffnet のリソース使用状況です。 サムネイルモード 「サムネイルモード」ボタンを押すと概要が小さなウインドウで表示されます。 概要の情報から最低限の情報を表示する画面になります。 円グラフは、監視開始から現在までの通信量 時間ごとの通信量グラフ 通信相手の一覧 サービス・プロトコルの一覧 画面遷移 Sniffnetの画面遷移に関して記述しています。 環境 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 画面遷移 Sniffnetの画面遷移は次の図の通りです。 この図で機能と操作の全体像が分かります。 全体像 高解像でのPDFは以下のリンクからダウンロードできます。 Sniffnetの画面遷移.pdf Sniffnetの画面は少なく設定もシンプルです。 画面毎の説明は別の記事で記述予定です。 動作を簡単に説明すると次の用になります。 アプリを起動するとアクセス権を求めるダイアログが表示され許可します。 最初の画面で監視対象のネットワークなどを設定し「Start」ボタンを押して開始します。 トラフィックモニター画面ではリアルタイムでトラフィック状態「概要」が表示されます。 トラフィックモニター画面はサムネイル画面と切り替えられます。 トラフィックモニター画面は3つの画面を切り替えられます。 「トラフィックモニター画面/トラフィック調査画面/通知画面」 トラフィックモニター画面の「Network host」「Service」「Program」部分をクリックすると対象のトラフィックに絞られた「トラフィック調査画面」を表示します。 トラフィック調査画面の各データをクリックするとトラフィックの詳細を表示します。 通知は特定の条件で音共に設定に従った通知が一覧に追加されます。 通知の一覧の該当通知をクリックするとその少し詳細が表示されます。 トップ画面 環境 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 テスト環境 使用機種: MacBookPro 14インチ 2021 Apple M1 Max メモリ32GB 使用OS: macOS Tahoe 25.5 Sniffnet: macOS版 1.5.0 TOP画面概要 Sniffnetアプリを起動したときに最初に表示される「TOP画面」の説明です。 詳細は次のWebページをご参照ください。 Set up the analysis https://github.com/GyulyVGC/sniffnet/wiki/Set-up-the-analysis ICON アプリのアイコンです。特に機能はありません(^^; Settings アプリの設定画面へ移動するボタンです。 バージョン アプリのバージョンを表示しています。 各種リンクICON 左から アプリの開発ロードマップページへのリンク https://whimsical.com/sniffnet-roadmap-Damodrdfx22V9jGnpHSCGo アプリのwiki(説明)ページへのリンク https://github.com/GyulyVGC/sniffnet/wiki アプリのGithubページへのリンク https://github.com/GyulyVGC/sniffnet アプリのNewページへのリンク https://sniffnet.app/news/ アプリのスポーンサーページへのリンク https://sniffnet.app/sponsor/ 開発者 開発者Giuliano Belliniさんへのリンク https://github.com/GyulyVGC データソースの選択 画面の左半分にはデータソースの選択と使用可能なネットワークアダプターの一覧が表示されます。 実際にキャプチャ処理の実行前に必要なネットワークの状態がリアルタイムで表示されます。 フィルター設定 PCAPファイル出力設定 キャプチャボタン フィルター設定では、デフォルトでは全てのトラフィックを処理する設定です。 フィルターを設定する事でトラフィックの種類を絞り込むことが出来るようになります。 PCAPファイル出力設定では、キャプチャしたネットワークトラフィックをPCAPファイルとしてファイルに出力する事が出来ます。 「Start」ボタンは、キャブチャの開始ボタンです。 データソースの選択 Data source selection https://github.com/GyulyVGC/sniffnet/wiki/Data-source-selection ソース Sniffnetは、トラフックデータを取得するための2つのソースをサポートしています。 ネットワークアダプター PCAPファイル ネットワークアダプター アプリを使用しているPCに接続されているネットワークアダプターを表示と選択を実施します。 使用できるアクティブなIPv4およびIPv6 アドレスの一覧とそのアダプタが過去30秒間に交換したトラフィックのプレビューのグラフともに表示します。 Sniffnetはデフォルトでシステムによってメインのネットワークインターフェイスとしてマークされているアダプタを選択します。 ターミナルの「ifconfig」との比較をしてみます。 Sniffnetに現在表示されている3つのアダプタに絞ってみます。 $ ifconfig en0: flags=8863 mtu 1500 options=6460 ether xx:xx:xx:xx:xx:xx inet6 fe80::xxx:xxx:xxx:xxx%en0 prefixlen 64 secured scopeid 0xe inet6 fd1d:xxx:xxx:xxx:xxx:xxx:xxx:xxx prefixlen 64 autoconf secured inet6 xxx:xxx:xxx:xxx:xxx:xxx:xxx:xxx prefixlen 64 autoconf secured inet6 xxx:xxx:xxx:xxx:xxx:xxx:xxx:xxx prefixlen 64 autoconf temporary inet 192.168.1.162 netmask 0xffffff00 broadcast 192.168.1.255 nd6 options=201 media: autoselect status: active lo0: flags=8049 mtu 16384 options=1203 inet 127.0.0.1 netmask 0xff000000 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 nd6 options=201 awdl0: flags=8863 mtu 1500 options=6460 ether xx:xx:xx:xx:xx:xx inet6 xxx::xxx:xxx:xxx:xxx%awdl0 prefixlen 64 scopeid 0x10 nd6 options=201 media: autoselect status: active アダプタは「en0/lo0awdl0」です。 en0にはSniffnetと同様なIPv6 アドレスとして4つが割り当てられています。 IPv4アドレスが1つが割り当てられています。 lo0にはSniffnetと同様なIPv4アドレスが1つが割り当てられています。 awdl00にはSniffnetと同様なIPv4アドレスが1つが割り当てられています。 Sniffnetでは、通常アクセスするためのアドレスが表示されています。細かい設定は表示されません。 PCAPファイル Sniffnetはファイルに保存されたネットワークデータを分析する機能が有ります。 PCAP (パケットキャプチャ) はネットワークトラフィックを保存するためのファイル形式で、Wireshark や tcpdump などのさまざまなツールで作成されます。 PCAPファイルを使用して過去に記録したネットワークトラフィックをSniffnetで分析出来ます。 Wiresharkでは、PCAPNG(拡張子: .pcapng)がデフォルトです。従来形式: PCAP((拡張子: .pcap)も保存時に指定出来るようです。 PCAPファイルの保存先はデフォルト(/User//)のみがアクセス出来るようです。  v1.5.0、将来のVersionでは改良されるでしょう。 PCAPファイルの分析例 Wiresharkで出力したpcapngファイルを読み込んで分析した例です。 フィルター設定 Filters configuration https://github.com/GyulyVGC/sniffnet/wiki/Filters-configuration デフォルトでは、すべてのトラフィックがアプリケーションによって監視されています。 ここでのフィルター設定はキャプチャする時のフィルターです。表示のフィルターでは有りません。 ただし、フィルターを設定することで、分析対象を特定のトラフィックに限定することができます。 設定はコマンドラインと言う感じで、簡易的なGUIと上級者向けのテキストによる設定が欲しいところです。 フィルターはSniffnetの「TOP画面」で設定します。 フィルタはテキスト形式で指定しますが、この設定はGUIでと言うことでは無くテキストで設定します。 監視対象のトラフィックを指定するための標準化された方法であるBerkeley Packet Filter(BPF)形式で構成されます。 https://en.wikipedia.org/wiki/Berkeley_Packet_Filter 記述方法の詳細はWeページのBerkeley packet filtersに記載されています。 https://www.ibm.com/docs/en/qsip/7.5.0?topic=queries-berkeley-packet-filters 例では ソースとアドレスとTCPプロトコルのみを表示するようにしています。 PCAPファイル出力設定 ネットワークトラフィックをPCAPファイルとして出力出来ます。 ファイル名と保存先のフォルダーをしています。 PCAPファイルの保存先は変更しなでデフォルト(/User//)のままにしておきましょう。  > どうも現在のバージョンではデータソースがPCAPファイルの場合も正しく指定出来ないようです。  > v1.5.0、将来のVersionでは改良されるでしょう。 キャプチャボタン 各種設定が完了したら「Start」ボタンを押して、キャプチャを開始します。 画面回り 画面に共通な項目の説明をここでまとめて説明ています。 環境 以下の画面に共通な項目の説明をここでまとめて説明します。 概要(Overview)画面 分析(Inspect)画面 通知(Notifications)画面 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 次の画面の共通部分に関して説明します。   画面ヘッダ部分の説明 画面上部の機能に関して説明します。 左上のICONでキャプチャ処理を中止してトップ画面へ戻るボタンです。 画面中央に次の3つのICONが有ります。 左端: アプリのICONです。 と 中央: キャプチャの実行/中止ボタンです。 右端: キャプチャを小さな画面で表示するボタンです。 画面タブ部分の説明 画面のタブ機能に関して説明します。 タブは3つ有ります。 概要(Overview)画面 分析(Inspect)画面 通知(Notifications)画面 3つの画面を切り替えます。   画面フッタ部分の説明 画面下部の機能に関して説明します。 バージョン アプリのバージョンを表示しています。 各種リンクICON 左から アプリの開発ロードマップページへのリンク https://whimsical.com/sniffnet-roadmap-Damodrdfx22V9jGnpHSCGo アプリのwiki(説明)ページへのリンク https://github.com/GyulyVGC/sniffnet/wiki アプリのGithubページへのリンク https://github.com/GyulyVGC/sniffnet アプリのNewページへのリンク https://sniffnet.app/news/ アプリのスポーンサーページへのリンク https://sniffnet.app/sponsor/ 開発者 開発者Giuliano Belliniさんへのリンク https://github.com/GyulyVGC 概要(Overview)画面 キャプチャの概要画面の説明です。 概要 情報 User manual https://github.com/GyulyVGC/sniffnet/wiki Traffic overview https://github.com/GyulyVGC/sniffnet/wiki/Traffic-overview 表示内容 この画面では主に次様な情報が参照出来ます。 トラフィックソース データ表示方法 トラフィックレート 接続ホスト サービス プログラム トラフィックの概要を表示する画面です。 トップ画面で設定した内容に従ってネットワークのトラフィックのアクティビティをリアルタイム監視でする表示します。 また、キャプチャファイルを分析して表示する事が可能です。 環境 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 トラフィックソース 監視対象のネットワークアダプタに他する設定を表示しています。 ここで表示されている「ネットワークアダプタ en0 」は、現在監視している通信インターフェースです。 macOS では en0 は多くの場合 Wi-Fi または内蔵ネットワーク系のインターフェースです。 適用されているフィルタ: なし なので、Sniffnet が見える範囲の通信をすべて集計しています。 en0 の i を選択するとネットワークの IP などが表示されます。 ここでの内容は次の情報を参照してください。 データソースの選択 https://book.a10-objects.jp/books/sniffnet/page/c203d フィルター設定 https://book.a10-objects.jp/books/sniffnet/page/6c834 データ表示方法 監視対象のデータ表示方法に関する説明です。 表示は次の3つの方法が可能です。 円グラフは、監視開始から現在までの通信量です。 受信(Incming): 受信したデータの総量 送信(outgoing): 送信されたデータの総量 ドロップした(Droped): 失われたデータの総量 「bits」表示 「bytes」表示 「packets」表示   トラフィックレート 監視対象のデータを 1秒毎に更新し、 過去30秒間の分析に基づいたトラフィック率を示すライブチャートが表示されます。 グラフの上部は毎秒受信(Incming)するデータ量を表示します。 グラフの下部は毎秒送信(outgoing)したデータ量を表示します。 横軸には、監視開始からの経過時間が表示されます。 接続ホスト Network hosts https://github.com/GyulyVGC/sniffnet/wiki/Network-hosts 使用しているPCが通信しているネットワークホストの具体的な相手先情報を表示しています。 Network host Network host は接続している情報を次のように表示しています。 次の3つの情報を表示しています。 地理的位置(Geographical location) ドメイン名(Domain name) 自律システム名(Autonomous System Name) 地理的位置(Geographical location) 接続している地理的位置情報は国単位で表示し同時に国旗で表示します。 地理的な位置情報はホストのIPアドレスに基づいてで取得されます。 ドメイン名(Domain name) 逆引きDNS解決(rDNS)などで決定された物を表示しています。 rDNSが失敗した場合は、Pアドレス自体が対応するホストのドメイン名として使用しています。 自律システム名(Autonomous System Name) 自律システム(AS)は、MDBルックアップを介して自律システム名(ASN)を取得し表示します。 サービス Services https://github.com/GyulyVGC/sniffnet/wiki/Services ネットワークサービスを主体に表示しています。 Sniffnetは、上位層プロトコルなど、6000以上のサービスをサポートしています。 例: サービス(プロトコル) 関数 HTTP www通信 DNS ドメイン名を IP アドレスに変換 SSH 暗号化されたリモートログインとファイル転送 DHCP デバイスへの IP アドレスの自動割り当て IMAP メールサーバーから電子メールメッセージ処理 Service Name and Transport Protocol Port Number Registry https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml プログラム Programs https://github.com/GyulyVGC/sniffnet/wiki/Programs プログラムを主体に表示しています。 プログラム単位で接続している接続データの一覧です。 Sniffnetは次のような情報などを元に認識します。 プロセスID 実行可能ファイルのパス ネットワークポート さまざまなシステム情報を収集して関連付け   サムネイル画面 概要のサムネイル画面の説明です。 概要 概要 Sniffnet はデフォルトで画面全体を概要表示を利用します。画面を小さくして常に表示出来るサイズにするには、アプリのヘッダーにある専用アイコンをクリックして、表示をサムネイルモードに切り替えることができます。小さくした画面を他のアプリのウインドウに邪魔にならない位置に配置してネットワーク状態を監視してください。 User manual https://github.com/GyulyVGC/sniffnet/wiki Thumbnail mode https://github.com/GyulyVGC/sniffnet/wiki/Thumbnail-mode 環境 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 画面構成 概要(Overview)画面とサムネイル画面の表示の切れ換えと表示データの関係を図示しています。 サムネイルと通常 ( 概要(Overview) ) の画面の切替はベッダ部分の専用アイコンで切り替えます。 左の ICON は記録の ON/OFF です。 ヘッダ部分の動作「 画面回り 」の記事をご参照ください。 サムネイル画面では次の情報を表示しています。 通信量 トラフィックレート ザービス ネットワーク ホスト 画面詳細 サムネイル画面の詳細は次の様になリます。 分析(Inspect)画面 分析(Inspect)画面の説明記事です。 概要 概要 Sniffnet はトラフィック調査画面では通信されているデータの各接続をより詳細に検査できます。 この画面では次のデータを一覧表示し、更にフィルター出来ます。 送信元IPアドレス データを送信するホストのIPアドレス 送信元ポート 送信元ホストが使用するポート番号 宛先IPアドレス データを受信するホストのIPアドレス 宛先ポート 宛先ホストが使用するポート番号 プロトコル 通信に使用されるネットワークプロトコル User manual https://github.com/GyulyVGC/sniffnet/wiki Traffic inspection https://github.com/GyulyVGC/sniffnet/wiki/Traffic-inspection 環境 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 分析画面への遷移 概要(Overview)画面からトラフィック調査画面へ遷移する方法は次の図のようになります。 全てのトラフィック一覧 「ネットワーク接続」でフィルターされたトラフィック一覧 「サービス」でフィルターされたトラフィック一覧 「プログラム」でフィルターされたトラフィック一覧 画面上部のTAB以外は、指定したトラフィックに応じたフィルターを実施した一覧を表示します。 TABで分析画面へ移動したとき以外は、それぞれの一覧応じたフィルターが設定された一覧を表示します。 Network hostから移動した場合には、判断出来ない項目のフィルターは設定しません。 分析画面詳細 トラフィック調査画面では、内容を細かくフィルターして表示することが出来ます。 全体像 画面では次のなフィルター設定が可能です。 フィルター一覧 フィルター 種類 お気に入り登録項目の接続 Only show blacklisted トグルスイッチ ブラックリストの一致した IP の接続 Only show favorites トグルスイッチ お気に入り登録項目の接続 Country テキスト 相手側の国 (MMDB) Domain テキスト 相手側のドメイン名 (rDNS) ASN テキスト 相手側の自律システム (MMDB) Program テキスト ローカル側のアプリ フィルターリセット ボタン 全フィルター一括解除 テキスト入力型フィルター 種類がテキスト時のフィルター(Country / Domain / ASN / Program / Address / Port / Protocol / Service 等)の共通ルールは次です。 テキスト入力の例 フィルターの意味 google 部分一致 (値に google を含む接続) = google.com 完全一致 ! google 部分一致を除外 (google を含まない接続) != google.com 完全一致を除外 各フィルターはAND条件で適用されます。 フィルターの説明 各フィルターの簡単な説明を記載します。 [[ フィルター上段のフィルター説明 ]] Only show blacklisted ブラックリストのみ表示します。 インポートした IP ブラックリストに一致する IP との接続先をフィルターします。 設定は「Settings → General タブ」で、IP ブラックリストファイルを指定します。 Country 通信相手(リモートホスト)の地理的位置(国)で接続先をフィルターします。 リモート側 IP アドレスに対して MMDB データベース(標準は MaxMind GeoLite2)で国を判定しています。 Domain 通信相手(リモートホスト)のドメイン名で接続先をフィルターします。 IPアドレスに対する 逆引き DNS (rDNS) でドメイン名を取得します。 rDNS が失敗した場合は IP アドレス自体をドメイン名として使用します。 ASN (Autonomous System) 通信相手(リモートホスト)が属する AS(自律システム)で接続先をフィルターします。 ASNはインターネット上で 大規模なネットワークを管理する組織単位です。 例: Google、Amazon、Cloudflare、各 ISP などです。 SniffnetではAS名とAS番号の両方が取得されます(MMDB ルックアップ) Program 通信を行っているローカル側のアプリ/プロセスで接続先をフィルターします(v1.5 以降)。 Sniffnetは次の情報を使用し、どのプログラムが通信しているかを特定します。 プロセスID(PID)/実行ファイルのパス 開いているネットワークポート 概要(Overview)画面 のProgramsセクションに表示されるアプリ名・アイコンと同じ情報が使用されます。 フィルターリセット すべてのフィルターを一括クリアするボタンです。 [[ フィルター下段のフィルター説明 ]] Address (source) パケットの送信元 IP アドレスで接続先をフィルターします。 Port (source) パケットの送信元ポート番号で接続先をフィルターします。 Address (destination) パケットの宛先 IP アドレス で接続先をフィルターします。 Port (destination) パケットの宛先ポート番号 で接続先をフィルターします。 Prorocol トランスポート層(および関連層)のプロトコルで接続先をフィルターします。 対応プロトコルの例 プロトコル 説明 TCP Web、メール、SSH など多くのアプリ通信 UDP DNS、動画ストリーミング、ゲームなど ICMP ping、traceroute など(v1.3 以降) ARP ローカルネットワーク内の MAC アドレス解決(v1.4 以降) Service 上位レイヤー(アプリケーション層)のサービス名で接続先をフィルターします。 Sniffnet が トランスポートプロトコル + ポート番号 から推定する「種類」です。 IANA のポート割り当て規約(Nmap のサービスリストベース)に従い、6000 以上 のサービスを識別できます。 Bytesソート 通信データ量により接続テーブルをソートします。 接続詳細  接続先一覧をクリックすると次のような詳細が表示されます。 通知(Notifications)画面 通知(Notifications)画面の説明です。 概要 概要 Sniffnetは特定のネットワークイベントが発生した時にアプリ内で通知を発生することが出来ます。 デフォルトで全ての通知はOFFになっています。 使用できるイベントは次です。 データがしきい値を超え場合 お気に入り設定のデータが交換した場合 ブラックリスト設定のデータが交換した場合 また、通知(Notifications)設定画面ではリモート通知も実施できます。 環境 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 通知リスト画面の例 通知関係の画面 通知関係の画面は次の図のようになります。 画面は、トラフィック概要の画面から通知関係の画面に遷移できます。 設定画面-通知TABで通知を設定すると、設定された内容に従って通知画面に表示されます。   通知設定 設定画面-通知TABで通知の設定を行います。デフォルトは全てOFFと成っています。 次の3つのトラフィックの通知が設定出来ます。 Data threshold exceede (データがしきい値を超え場合) New data exchanged from favorites (お気に入り設定のデータが交換した場合) New data exchanged from a blacklisted IP (ブラックリスト設定のデータが交換した場合) Data threshold exceede (データがしきい値を超え場合) Sound(通知音) Sound(通知音)は、条件が発生されたときの音を指定します。 Data representation(データ表示方法) Data representation(データ表示方法)は、bits/bytes/packetsから選択します。 Threshold(しきい値) Threshold(しきい値)は、1秒間に通信されるデータ量を指しています。送信と受信の両方が該当します。 New data exchanged from favorites (お気に入り設定のデータが交換した場合) Sound(通知音) Sound(通知音)は、条件が発生されたときの音を指定します。 New data exchanged from a blacklisted IP (ブラックリスト設定のデータが交換した場合) Sound(通知音) Sound(通知音)は、条件が発生されたときの音を指定します。 ヒント 通知を有効にすることは、 カスタムフィルタの設定 ( Filters configuration )を使用して、 監視したい特定のネットワーク状況に対してアラートを設定するとより細かく設定できる様になります。 通知画面 通知一覧 通知が発生すると設定された音共に通知TABに件数が表示されます。 通知TABをクリックすると通知リストが表示されます。 通知一覧の「Data threshold exceede (データがしきい値を超え場合)」部分をクリックすると更に詳細が表示されます。 画面左にはの一覧をクリアする「ゴミ箱」ICONで次の画面のように操作するようにします。 通知設定が有りで通知無し 通知設定が無いとき リモート通知 Remote notifications https://github.com/GyulyVGC/sniffnet/wiki/Remote-notifications Sniffnet webhook notifications to monitor remote network activity https://sniffnet.app/news/remote-notifications/ リモート通知では、通知をカスタムエンドポイントに転送するための設定を行います。 通知のイベントが発生したら指定されたエンドポイントURLに対して同時に通知を行います。 この設定でSniffnetが動作していないデバイスがSniffnetの通知を受信出来る様になります。 詳しくは次のWebページをご参照ください。 Remote notifications https://github.com/GyulyVGC/sniffnet/wiki/Remote-notifications 設定画面 設定(Settings)画面の説明記事です。 概要 概要 Sniffnetの設定に関して記述しています。 次の3つの設定TABが有ります。 Notifications (通知) Style (スタイル) General (一般) - TOP画面のみで可能 User manual https://github.com/GyulyVGC/sniffnet/wiki 環境 記事の環境です。 使用機種 MacBookPro 14 インチ 2021 (Apple M1 Max メモリ 32GB) 使用 OS macOS Tahoe 25.5 Sniffnet macOS 版 V1.5.0 dmgのアプリ版 設定画面の遷移 設定画面は次の図のようになります。 Sniffnetのアプリが起動後からの設定画面への遷移です。 設定画面でのTABの遷移です。 通知設定 この設定の詳細は「通知(Notifications)画面」説明の「 通知設定 」説明をご参照ください。   スタイル設定 画面全体のスタイルを選択もしくはカスタム化した物を選択します。 設定は、直ぐに反映されます。 一般設定 アプリ全体の動作を設定します。 設定の上半分は、トラフィック処理中でも即座に変更されます。 設定の下半分は、トラフィックを処理していない「TOP画面」でのみ可能です。 画面の言語 (Language) を変更すると直ぐに変更されます。 次の画面は日本語を選択したときの表示例です。 注意 : 現在の環境ではアプリを再起動すると英語に戻るようです。