UDP Broadcast Discovery

Hallo,

ich versuche gerade, Instar Kameras im Netzwerk über einen UDP Broadcast zu finden und anschließend automatisch zu konfigurieren.
Ist es möglich, das im Instar Camera Tool implementierte Protokoll zu erhalten? Ein Reverseengineering wäre zwar möglich, aber aufwändig.

Gruß und Dankeschön, Hannes Fr.

Nachtrag: Warum tue ich das?
Ich möchte gerne die von mir geschriebene Website für meine Kameras um ein Auto-Discovery neuer Kameras erweitern.
Wenn ich also eine neue Kamera ins Netzwerk einfüge, soll Sie automatisch erkannt und konfiguriert werden, ohne dass ich das WebUI der Kamera aufrufen muss. Konfiguration über Http/GET klappt bereits (für meine fünf 2905 Kameras), Erkennung neuer Kameras wird demnächst hinzugefügt.

In der Hoffnung, dass sich jmd. meinen Bemühungen anschließt…
ich habe soweit das Paket repliziert, dass ein Identifikationspaket bei den Kameras anfordert. (getestet an einer 2905)
Das Antwortpaket sieht dann wie folgt aus:

[table=„width: 800, align: center“]
[tr]
[td]Byte[/td]
[td]1 - 4[/td]
[td]5 - 22[/td]
[td]23[/td]
[td]24 - 35[/td]
[td]36[/td]
[td]37 - 56[/td]
[td]57[/td]
[td]58-61[/td]
[td]62 - 65[/td]
[td]66 - 69[/td]
[td]70 - 73[/td]
[td]74 - 77[/td]
[td]78-81[/td]
[td]82 - 85[/td]
[td]86 - 87[/td]
[td]88[/td]
[/tr]
[tr]
[td]Inhalt[/td]
[td]0x4d4f5f49[/td]
[td]überwiegend 0x00[/td]
[td]0x00[/td]
[td]8 Byte Ascii Daten[/td]
[td]0x00[/td]
[td]20 byte Ascii Daten, 0x00 = Stop[/td]
[td]0x00[/td]
[td]4 Byte hex[/td]
[td]4 Byte hex[/td]
[td]4 Byte hex[/td]
[td]4 Byte hex[/td]
[td]0x00[/td]
[td]4 x 1 Byte dec[/td]
[td]4 x 1 byte dec[/td]
[td]2 Byte Dec[/td]
[td]1 Byte Bool(lsb)[/td]
[/tr]
[tr]
[td]Kommentar[/td]
[td]Identifyer für Instar Kameras[/td]
[td]Bedeutung unbekannt[/td]
[td]Trenner[/td]
[td]Kamera ID[/td]
[td]Trenner[/td]
[td]Name der Kamera[/td]
[td]Trenner[/td]
[td]IP-Adresse[/td]
[td]Subnetzmaske[/td]
[td]Router[/td]
[td]DNS[/td]
[td]unbekannt[/td]
[td]Firmware Vers.[/td]
[td]WebUI-Vers.[/td]
[td]Port[/td]
[td]DHCP Ja/Nein[/td]
[/tr]
[/table]

Vielleicht hat je jemand noch andere Kameras, so dass vor allem die Bytes 5 - 22 und 74 - 77 noch mit Sinn gefüllt werden können.

Gruß, Hannesfr

Auch wenn das Ganze etwas nach Selbstgespräch aussieht…

Habe jetzt die oben beschriebene Arbeit in ein php - Script implementiert. Wird das Script auf einen Webserver im gleichen Netzwerk wie die Kameras kopiert und mit einem Browser aufgerufen, listet es die im Netzwerk verfügbaren Kameras auf. Dies sollte unter Windows, MacOS und den meißten Unix - basierten Systemen funktionieren.

Es kann sein, dass es zu Fehlermeldungen kommt, wenn der Webserver nicht entsprechend konfiguriert ist. Dann sollte das Script als „root“ ausgeführt werden.

ps: man möge mir verzeihen, wenn mein php-Stil etwas stokelig ist!

Link zum Download

Über Rückmeldungen, mit welchem Kameratyp und auf welchen Systemen es funktioniert, würde ich mich sehr freuen.