概要
Whosthere は、Goで開発された モダンなTUI型LAN探索ツール。 mDNS/SSDP/ARP など複数の手法で権限不要の高速スキャンを実現。 OUI参照 によるメーカー情報表示や ポートスキャナ 機能搭載。 デーモンモード でHTTP APIも提供、カスタマイズ性も高い。 Linux/macOS 対応、ネットワーク管理者向けの直感的な操作感。
Whosthereの特徴
- Go製TUIアプリ による直感的な端末操作
- mDNS/SSDP/ARP による並列デバイス探索
- 管理者権限不要 のユーザースペース動作
- OUI参照 でメーカー名を自動表示
- 統合ポートスキャナ によるサービス発見(許可されたデバイスのみ推奨)
- デーモンモード&HTTP API で他ツールとの連携容易
- テーマ/設定 をYAMLで柔軟にカスタマイズ
- Linux/macOS に対応(Windowsは今後対応予定)
インストール方法
- Homebrew によるインストール
brew tap ramonvermeulen/whostherebrew install whosthere
- Go によるインストール
go install github.com/ramonvermeulen/whosthere@latest
- ソースビルド
git clone https://github.com/ramonvermeulen/whosthere.gitcd whostheremake build
基本的な使い方
- TUIで対話的探索
whosthere
- デーモンモード(HTTP API有効)
whosthere daemon --port 8080
- 追加コマンドラインオプション
whosthere --helpで確認
サポートプラットフォーム
- Linux
- macOS
- Windows (将来的に対応予定、貢献歓迎)
TUI キーバインド一覧
/:正規表現検索開始k:上へj:下へg:先頭へG:末尾へy:選択デバイスのIPコピーenter:デバイス詳細表示CTRL+t:テーマ切替CTRL+c:アプリ終了ESC:検索クリア/戻るp(詳細画面):ポートスキャン開始tab(モーダル):ボタン選択切替
環境変数
WHOSTHERE_CONFIG:設定ファイルのパス指定WHOSTHERE_LOG:ログレベル設定(debug, info, warn, error)
設定ファイル(YAML)
- 優先読み込み順
WHOSTHERE_CONFIG環境変数で指定$XDG_CONFIG_HOME/whosthere/config.yaml~/.config/whosthere/config.yaml
- 主な設定項目
scan_interval:探索間隔(例:20s)scan_duration:各探索の最大時間splash:スプラッシュ画面表示設定theme:テーマ名やカスタム色scanners:mdns/ssdp/arpの有効化port_scanner:タイムアウト/スキャンポートリストnetwork_interface:特定インターフェース指定(省略可)
デーモンモード HTTP API
- エンドポイント一覧
GET /devices:全デバイス一覧取得GET /device/{ip}:特定デバイス詳細取得GET /health:ヘルスチェック
テーマ設定
- 設定ファイルまたはTUI(CTRL+t)で切替可能
- 公式テーマ一覧 : https://github.com/ramonvermeulen/whosthere/tree/main/internal/ui/theme/theme.go
- カスタムテーマ :色指定で独自テーマ作成可
ログ出力
- TUI以外 :標準出力にも出力
- ファイル出力先
$XDG_STATE_HOME/whosthere/app.log~/.local/state/whosthere/app.log(XDG未設定時)
既知の問題・注意事項
- クリップボード機能要件
- Linux(X11):
libx11-6等クライアントライブラリ - Linux(Wayland):未サポート、XWayland推奨
- macOS/Windows:追加依存なし
- Linux(X11):
- ビルド要件(Linux)
- X11開発パッケージ(
libx11-dev等)
- X11開発パッケージ(
利用上の注意
- 許可されたネットワーク のみで利用推奨
- 無断スキャンは違法・非倫理的 な場合あり
- 必ず事前に権限を取得 すること
コントリビューション・開発参加
- 機能要望・バグ報告・改善提案歓迎
- GitHubリポジトリ でIssue/Pull Request受付
- 大規模変更前には必ずIssueで相談 推奨
Whosthere は、誰がネットワーク上にいるのかを 直感的・安全に把握 したいネットワーク管理者のための 強力なLAN探索ツール です。