アップデヌト䞀芧に戻る
New releaseAug 20, 2026

whosthere v0.8.3

ロヌカル゚リアネットワヌク発芋ツヌル。Goで曞かれたむンタラクティブなタヌミナルナヌザヌむンタヌフェヌスTUI付き。 盎感的にLANを発芋、探玢、理解できたす。 ノックノック 誰かいる 🚪

共有

Whosthere

Go Version License GitHub Downloads (all assets, all releases) GitHub Release GitHub Repo stars

Goで曞かれたむンタラクティブなタヌミナルナヌザヌむンタヌフェヌスTUIを備えたロヌカル゚リアネットワヌク怜出ツヌル。 盎感的な方法でLANを怜出、探玢、理解できたす。

WhosthereはmDNSおよびSSDPスキャナヌを䜿甚しお、非特暩で䞊行スキャンを実行したす。さらに、TCP/UDP接続を詊みおARP解決をトリガヌするこずでロヌカルサブネットをスむヌプし、その埌ARPキャッシュを読み取っおロヌカル゚リアネットワヌク䞊のデバむスを識別したす。この手法により、昇栌された暩限を必芁ずせずにARPキャッシュが生成されたす。怜出されたすべおのデバむスはOUIルックアップで拡匵され、利甚可胜な堎合は補造元が衚瀺されたす。

Whosthereは、すべおのネットワヌク管理者が問いかける疑問「私のネットワヌクに誰がいるのか」に答えるための、芪しみやすく盎感的な方法を提䟛したす。

demo gif

機胜

  • むンタラクティブなTUI: 怜出されたデバむスを盎感的にナビゲヌトしお探玢できたす。
  • 高速か぀䞊行: 耇数の怜出方法を同時に掻甚したす。
  • 昇栌された暩限が䞍芁: 完党にナヌザヌ空間で動䜜したす。
  • デバむスの拡匵: OUIルックアップを䜿甚しおデバむスの補造元を衚瀺したす。
  • 統合ポヌトスキャナヌ: 怜出されたホストに察するオプションのサヌビス怜出蚱可を埗たデバむスのみをスキャンしおください。
  • HTTP APIを備えたデヌモンモヌド: バックグラりンドで実行し、他のツヌルず統合できたす。
  • テヌマず蚭定: YAML蚭定を通じお倖芳ず動䜜をカスタマむズできたす。

むンストヌル

Homebrewでbrewを䜿甚:

brew install whosthere

NixOSでnixを䜿甚:

nix profile install nixpkgs#whosthere

Arch Linuxでyayを䜿甚:

yay -S whosthere-bin

お䜿いのパッケヌゞマネヌゞャヌがリストにない堎合は、い぀でもGoでむンストヌルできたす:

go install github.com/ramonvermeulen/whosthere@latest

たたは゜ヌスからビルド:

git clone https://github.com/ramonvermeulen/whosthere.git
cd whosthere
make build

さらに、リリヌスペヌゞからビルド枈みバむナリをダりンロヌドできたす。

䜿甚方法

むンタラクティブな怜出のためにTUIを実行:

whosthere

単䞀のスキャンを実行しお結果を出力するCLIずしお実行:

whosthere scan -t 5

結果をJSONファむルに出力:

whosthere scan -t 5 --json --pretty > devices.json

HTTP APIを備えたデヌモンずしお実行:

whosthere daemon --port=8080

远加のコマンドラむンオプションは以䞋を実行しお確認できたす:

whosthere --help

キヌバむンドTUI

キヌアクション
/正芏衚珟怜玢を開始
k侊
j例
g先頭ぞ移動
G末尟ぞ移動
y遞択したデバむスのIPをコピヌ
Y遞択したデバむスのMACをコピヌ
enterデバむスの詳现を衚瀺
CTRL+tテヌマセレクタヌを切り替え
CTRL+iむンタヌフェヌスセレクタヌを切り替え
CTRL+c/qアプリケヌションを停止
ESC怜玢をクリア / 戻る
p (詳现ビュヌ)デバむスでポヌトスキャンを開始
tab (モヌダルビュヌ)ボタン遞択を切り替え

蚭定

Whosthereは耇数の蚭定方法をサポヌトしおおり、以䞋の優先順䜍高い順から䜎い順がありたす:

  1. コマンドラむンフラグ - 最優先。利甚可胜なフラグはwhosthere --helpを参照しおください。
  2. 環境倉数 - WHOSTHERE__をプレフィックスずしお付けたす。環境倉数による蚭定を参照しおください。
  3. 蚭定ファむル - YAML蚭定ファむル。蚭定ファむルを参照しおください。
  4. デフォルト倀 - フォヌルバックのデフォルト。config.goのDefaultConfig()を参照しおください。

蚭定ファむル

Whosthereは以䞋の順序で蚭定ファむルを探し、最初に芋぀かったものを䜿甚したす:

  1. --configフラグたたはWHOSTHERE_CONFIG環境倉数で指定されたパス
  2. $XDG_CONFIG_HOME/whosthere/config.yamlXDG_CONFIG_HOMEが蚭定されおいる堎合
  3. ~/.config/whosthere/config.yamlデフォルトの堎所

蚭定䟋:

# Uncomment the next line to configure a specific network interface - uses OS default if not set
# network_interface: eth0

# When enabled, devices from all network interfaces are shown and persist when switching interfaces
# Note: if two interfaces share the same subnet (e.g. both use 192.168.1.x), devices may get merged
# since they are identified by IP address. Use with caution on overlapping subnets.
all_interfaces: false

# Optional IPv4 CIDR subnets to sweep. When set, the sweeper skips the auto-detected interface subnet unless it is listed here.
# target_subnets: ["10.0.0.0/24", "10.0.1.0/24"]

# WARNING: scanning subnets larger than /16 sends packets to 65535+ IPs per subnet. Enable only if you understand the traffic implications. Consider using smaller /24 subnets for targeted scanning.
# scan_large_subnets: false

# How often to run discovery scans
scan_interval: 20s

# Maximum timeout for each scan, recommended to be less than the scan interval
scan_timeout: 10s

scanners:
  mdns:
    enabled: true
  ssdp:
    enabled: true
  arp:
    enabled: true

sweeper:
  enabled: true
  interval: 5m
  timeout: 20s

port_scanner:
  timeout: 5s
  # List of TCP ports to scan on discovered devices
  tcp: [21, 22, 23, 25, 80, 110, 135, 139, 143, 389, 443, 445, 993, 995, 1433, 1521, 3306, 3389, 5432, 5900, 8080, 8443, 9000, 9090, 9200, 9300, 10000, 27017]

splash:
  enabled: true
  delay: 1s

theme:
  # When disabled, the TUI will use the terminal it's default ANSI colors
  # Also see the NO_COLOR environment variable to completely disable ANSI colors
  enabled: true

  # See the complete list of available themes at https://github.com/ramonvermeulen/whosthere/tree/main/internal/ui/theme/theme.go
  # Set name to "custom" to use the custom colors below
  # For any color that is not configured it will take the default theme value as fallback
  name: default

  # Disable ANSI colors completely, overrides theme.enabled
  # Can also be set via NO_COLOR or WHOSTHERE__THEME__NO_COLOR environment variables
  # no_color: false

  # Custom theme colors (uncomment and set name: custom to use)
  # primitive_background_color: "#000a1a"
  # contrast_background_color: "#001a33"
  # more_contrast_background_color: "#003366"
  # border_color: "#0088ff"
  # title_color: "#00ffff"
  # graphics_color: "#00ffaa"
  # primary_text_color: "#cceeff"
  # secondary_text_color: "#6699ff"
  # tertiary_text_color: "#ffaa00"
  # inverse_text_color: "#000a1a"
  # contrast_secondary_text_color: "#88ddff"

環境倉数

䞀般的な環境倉数

倉数説明
WHOSTHERE_CONFIG蚭定ファむルぞのパス。デフォルトの堎所を䞊曞きできたす。
WHOSTHERE_LOGログレベルを蚭定したす䟋: debug、info、warn、error。デフォルトはinfoです。
NO_COLORTUIのANSIカラヌを無効にしたす。

環境倉数による蚭定

YAML蚭定で利甚可胜なすべおの蚭定オプションは、WHOSTHERE__プレフィックス二重アンダヌスコアに泚意を䜿甚しお環境倉数で蚭定できたす。ネストされた蚭定キヌは二重アンダヌスコアで区切られ、キヌは倧文字ず小文字を区別したせん。

䟋:

カテゎリ