Ich habe einen Raspberry Pi an einen RGB-LED-Streifen angeschlossen. Auf dem Pi befindet sich ein Node.JS-Server, der eine Webseite hostet, und auf dieser Webseite kann ich eine Farbe für den LED-Streifen auswählen. All das funktioniert.Wie sende ich eine Broadcast-Anfrage an einen Node.JS-Server in meinem LAN?
Das Problem ist, ich möchte in der Lage sein, die IP-Adresse dynamisch zu finden (Ich möchte nicht statische IPs tun. Ich möchte diese zu einer Familie geben, und ich will sie "nur" einmal arbeiten Ich schließe mich ihnen zum Wifi) an.
Was ich möchte, ist eine Telefon-App, die den Raspberry Pi im Netzwerk finden kann. Ich dachte darüber nach, und ich erinnerte mich daran, über Broadcast-IP-Adressen für das LAN gelesen zu haben. Ich habe sie nie zuvor benutzt, scheint aber das zu sein, was ich brauche. Die App wird gestartet und sendet eine speziell gestaltete Nachricht mit folgendem Inhalt: "Wo ist der Raspberry Pi?" und der Pi würde antworten "Hier bin ich! Ich bin bei X-Adresse!"
Ich habe noch nie versucht, eine Broadcast-IP-Adresse zu verwenden, also habe ich mich für einen Proof of Concept entschieden. Ich begann einen Node.JS-Server auf meinem Pi, die wie folgt aussieht:
var http = require('http');
var port = 8081;
var server = http.createServer(function(request, response) {
response.writeHead(200);
response.end("Pong");
});
server.listen(port, function() {
console.log((new Date()) + ' Server is listening on port ' + port);
});
Dann von meinem PC, curl 192.168.1.XXX:8081
(die bekannten IP-Adresse) und Boom. Erwartete Antwort
Aber curl 192.168.1.255:8081
ruft mir einen 502
Fehler.
Von dem, was ich online lese, sollte das die Broadcast-Adresse sein. Blockiert mein Router das wahrscheinlich? Mache ich gerade etwas grundsätzlich falsch?
Vielen Dank im Voraus. :)