Wie kann ich über ein lokales Breitbandnetzwerk auf den Kamera-Feed von Raspberry Pi zugreifen?

8

HINTERGRUND

Das aktuelle Setup für den Raspberry Pi ist:

USB Webcam -> Raspberry Pi -> Netgear Router -> Local ISP -> Internet

Mein ISP gibt mir ein Captive-Portal, über das ich mich anmelden kann, um auf das Internet zuzugreifen, und meine öffentliche IP-Adresse wird ungefähr 203.xxx.xx.xx angezeigt. Wenn ich versuche, über den Browser auf diese IP zuzugreifen, werde ich zu den ISPs weitergeleitet Captive Portal Page und darf nicht weiter darauf zugreifen.

Es gibt viele andere Personen, die mit demselben ISP verbunden sind, und sie erhalten (offensichtlich) auch dieselbe IP.

Der ISP ist nicht bereit, eine dedizierte IP zuzuweisen oder Ports für mich zu öffnen, damit ich meinen Netgear-Router so konfigurieren kann, dass Ports usw. weitergeleitet werden.

Frage

Ich habe Motion auf meinem Pi installiert und kann über 192.168.1.3:8080 über meine lokale Sprache, dh innerhalb meines Netgear Router-Netzwerks, darauf zugreifen. Wie kann ich von außerhalb meines Netzwerks zugreifen, dh von einem entfernten Ort wie meinem Büro aus?

Ich möchte keine Software von Drittanbietern wie Teamviewer verwenden, um mein gesamtes Pi-System über das Internet weiterzuleiten.

Gibt es eine Möglichkeit, den Stream effizient auf einen Cloud-Server hochzuladen und dann darauf zuzugreifen?

Shakti Phartiyal
quelle
Enthält Motion keine Option zum Hochladen von Captures auf einen Server eines Drittanbieters?
Tensibai
@ Tensibai wie konfiguriere ich das für einen Live-Feed ..
Shakti Phartiyal
Sie können keinen Echtzeit-Live-Feed wie diesen erreichen, eher ein 1-Sekunden-Update, vielleicht keine wirkliche Lösung für Sie
Tensibai

Antworten:

4

Das Problem, das Sie lösen möchten , wird als NAT-Traversal bezeichnet , bei dem Sie versuchen, mit einem anderen Gerät zu kommunizieren, während Sie NAT auf Carrier-Ebene verwenden .

Möglicherweise können Sie alle Ihre Pakete mithilfe eines Protokolls wie SOCKS über einen Server übertragen . Dies lässt sich wahrscheinlich nicht besonders gut skalieren, aber wenn Sie nicht vorhaben, zu viele Clients zu haben, ist dies wahrscheinlich akzeptabel. Sie müssen natürlich einen Server außerhalb Ihres Netzwerks (nicht innerhalb eines NAT) bezahlen oder betreiben, was etwas komplex / unpraktisch sein kann.

Alternativ können Sie ein Loch in den Router schlagen und direkt zwischen Ihren beiden beabsichtigten Clients kommunizieren. Laut Wikipedia verwenden "VoIP-Produkte, Online-Gaming-Anwendungen und P2P-Netzwerksoftware alle Locher". Wenn Ihr Anwendungsfall dem ähnlich ist, kann es sich lohnen, darüber nachzudenken.

Möglicherweise finden Sie diese Frage auch bei Super User relevant, mit einer Antwort von spacecrab :

Ja, Option: Wenn Sie den Zugriff mit einem VPN-Dienst erwerben, der eine statische IP- und Portweiterleitung ermöglicht, können Sie Clients wie erwartet direkt mit Ihren Geräten kommunizieren lassen.

Option 2: Finden Sie einen Deal auf einem VPS (Virtual Private Server) und konfigurieren Sie eine beliebte VPN-Software wie OpenVPN selbst. Das Endergebnis ist das gleiche, der Konfigurationsteil ist viel ausführlicher. Gute Lernerfahrung, wenn Sie versuchen, einen Grund zu finden, einen Nachmittag damit zu verbringen, sich über leichte Vernetzung zu informieren.

Aurora0001
quelle
Vielen Dank .. @ Aurora0001 scheint ein guter Weg zu sein .. Die VPN-Lösung. Lassen Sie mich auf ein paar weitere Antworten warten, sonst ist dies die genehmigte Antwort.
Shakti Phartiyal
@ShaktiPhartiyal Kein Problem; Es ist immer eine gute Idee, abzuwarten, ob es bessere Antworten gibt, und ich hoffe, meine Antwort bringt Sie auf den richtigen Weg. Keine Notwendigkeit, sofort zu akzeptieren!
Aurora0001
1
@ Aurora0001 Ihre Antworten haben mir immer geholfen ..
IoT Lover
@ Aurora0001 Kannst du mir helfen, wie ich mit SOCKS vorgehen soll? irgendwelche Ausgangspunkte?
Shakti Phartiyal
@ShaktiPhartiyal Ich habe es selbst nicht befolgt, aber das Tutorial von DigitalOcean zum Einrichten eines Tunnels sieht ziemlich klar aus.
Aurora0001
4

Ich frage mich, ob eine andere Lösung darin besteht, dass Ihr Raspberry Pi den Feed an einen Cloud-Server ausgibt.

Die andere Antwort bietet den bestmöglichen Weg, um von außen in Ihren Pi zu gelangen. Wenn Sie dies jedoch nicht tun müssen und nur gelegentlich Bilder im Stil einer Überwachungskamera wünschen, können Sie ein Skript erstellen, das einen Ordner überwacht und wann Ein neues Bild wird angezeigt. Laden Sie es an einen Remotestandort hoch. Wenn Sie den vollständigen Feed möchten, können Sie auf YouTube streamen, den Feed privat halten und dann dorthin gehen, wann immer Sie möchten.

Hier sind die Schritte für den YouTube-Prozess:

http://www.makeuseof.com/tag/live-stream-youtube-raspberry-pi/

So laden Sie automatisch einen Ordner hoch:

/raspberrypi/12495/is-auto-upload-possible

David Morris
quelle
Sieht nach einer guten Sache aus, die das Auto komplettiert. Danke
Shakti Phartiyal
0

Viele ISP-Anbieter erlauben Privatkunden nicht, Port 80 oder 8080 zu verwenden. Versuchen Sie, mit Motion eine andere Portnummer zu verwenden, und erkundigen Sie sich bei Ihrem ISP, welche Ports zulässig sind. Sie müssen auch die Portweiterleitung auf dem Netgear-Router aktivieren, damit der Datenverkehr an den Raspberry Pi weitergeleitet wird

GusGorman402
quelle