„Computer wie ich“ in meinem Subnetz auflisten?

„Computer wie ich“ in meinem Subnetz auflisten?

Wir verfügen über ein Netzwerkprodukt auf Linux-Basis (nennen wir es „Z“) und verkaufen diese in der Regel in Chargen, sodass sie alle im selben Subnetz laufen, dieselben Aufgaben ausführen und Daten an einen einzigen Server (ebenfalls im Subnetz) zurückmelden, der sie alle koordiniert.

Auf den Einheiten läuft eine benutzerdefinierte Homebrew-Version von Linux, die auf einem 2.6-Kernel basiert.

Ich wurde gebeten, die Möglichkeit zu prüfen, die folgende Funktion hinzuzufügen:

„Jede Z-Einheit muss in der Lage sein, andere Z-Einheiten im lokalen Subnetz zu finden und ihre IPv4-Adressen aufzulisten. Die Liste mussnichtandere nicht verwandte Computer im lokalen Subnetz einschließen."

Ein Beispiel:

  • Der Benutzer kann sshin jede beliebige Z-Einheit gehen und einen Befehl (könnte ein neues Bash-Skript sein) namens „listLocalSiblings“ ausgeben.
  • Die Z-Einheit untersucht die Umgebung des lokalen Netzwerks und gibt eine einfache Textliste mit den IP-Adressen NUR der anderen Z-Einheiten aus …

192.168.1.10
192.168.1.11
192.168.1.12
192.168.1.30
192.168.1.37
192.168.1.71

Es kann mehrere unabhängige Geräte im Subnetz geben, auf denen verschiedene Betriebssysteme laufen. Ich möchte, dass dies so passiv wie möglich ist (z. B. Port-Scanning vermeiden oder einen Listener einrichten, der auf spezielle „Pings“ wartet und darauf reagiert).

Gibt es eingenerischMöglichkeit, vernetzte Geräte unter Linux zu kategorisieren?

Ich habe zwar den Luxus, dem Produkt neue Software hinzuzufügen, aber wenn es eine Möglichkeit gibt, dies auf der Grundlage einer Art intrinsischer Signatur zu tun, die jede Maschine haben könnte, wäre das vorzuziehen. Wir haben noch nie versucht, diese Maschinen dazu zu bringen, sich gegenseitig zu „sehen“, ohne tatsächlich Pfade fest zu codieren, damit sie sich gegenseitig finden.

Edit: Aus verschiedenen Gründen können wir diese Informationen nicht vom Server erhalten. Gehen wir vorerst davon aus, dass der Server abgestürzt ist oder das Ethernet-Kabel hinten herausgezogen wurde.

Dem Benutzer wird dann die Liste angezeigt, damit er damit machen kann, was er will.

Die Hardware der Z-Geräte ist im Großen und Ganzen dieselbe, obwohl die älteren Geräte erwartungsgemäß über ältere Versionen des Linux-Systems sowie ältere Motherboards und Netzwerkkarten verfügen.

Im Idealfall wäre es schön, einfach ein Bash-Skript auf jeder Einheit abzulegen und auszuführen, aber ich kenne mich mit Netzwerktools nicht gut genug aus, um zu beurteilen, ob das realistisch ist.

Antwort1

Scannen Sie mit nmap, senden Sie ein Broadcast-Paket mit nc, verwenden Sie NetBIOS oder missbrauchen Sie die Routing-Tabelle oder ARP-Pakete.

Es gibt viele vorhandene Netzwerkverkehrstypen, die verwendet werden können, ohne ein IDS auszulösen.

verwandte Informationen