अपडेट पर वापस जाएँ
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 स्कैनर का उपयोग करके बिना विशेषाधिकार वाले, समवर्ती स्कैन करता है। इसके अतिरिक्त, यह ARP रिज़ॉल्यूशन को ट्रिगर करने के लिए TCP/UDP कनेक्शन का प्रयास करके लोकल सबनेट को स्वीप करता है, फिर आपके लोकल एरिया नेटवर्क पर डिवाइस की पहचान करने के लिए 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)

KeyAction
/Start regex search
kUp
jDown
gGo to top
GGo to bottom
yCopy IP of selected device
YCopy MAC of selected device
enterShow device details
CTRL+tToggle theme selector
CTRL+iToggle interface selector
CTRL+c/qStop application
ESCClear search / Go back
p (details view)Start port scan on device
tab (modal view)Switch button selection

कॉन्फ़िगरेशन

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

श्रेणियाँ