Como acessar o feed da câmera do Raspberry Pi a partir de uma rede local de banda larga?

8

FUNDO

A configuração atual que tenho para o Raspberry Pi é:

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

Meu provedor de serviços de Internet fornece um portal cativo, através do qual posso fazer login para acessar a Internet, e meu endereço IP público é exibido como 203.xxx.xx.xx. Quando tento acessar esse IP do navegador, sou levado para o provedor de serviços de Internet. Captive Portal Page e não tem permissão para acessar mais nada.

Existem muitas outras pessoas conectadas ao mesmo ISP e elas recebem o mesmo IP (obviamente).

O ISP não está pronto para atribuir um IP dedicado ou abrir portas para mim, para que eu possa configurar meu roteador Netgear para encaminhar portas, etc.

Questão

Instalei o movimento no meu Pi e posso acessá-lo através do 192.168.1.3:8080 através da minha LAN local, ou seja, dentro da minha rede Netgear Router. Como posso acessar de fora da minha rede, ou seja, de um local remoto como o meu escritório.

Eu não gostaria de usar software de terceiros como o teamviewer para retransmitir todo o meu sistema Pi pela Internet.

Existe alguma maneira de fazer upload do fluxo para um servidor em nuvem com eficiência e depois acessá-lo?

Shakti Phartiyal
fonte
O movimento não inclui uma opção para carregar capturas em um servidor de terceiros?
Tensibai
@Tensibai como faço para configurar isso para uma transmissão ao vivo ..
Shakti Phartiyal
Você não pode conseguir em tempo real alimentação viva assim, mais uma atualização de 1 seg, talvez não realmente uma solução para você
Tensibai

Respostas:

4

O problema que você está tentando resolver é chamado de passagem NAT , onde você está tentando se comunicar com outro dispositivo enquanto usa NAT de nível de operadora .

Potencialmente, você pode fazer proxy de todos os seus pacotes por meio de um servidor, usando um protocolo como SOCKS . Isso provavelmente não será excepcionalmente bem dimensionado, mas se você não planeja ter muitos clientes, provavelmente é aceitável. Obviamente, você terá que pagar ou executar um servidor fora da sua rede (não dentro de um NAT), o que pode ser um pouco complexo / inconveniente.

Como alternativa, você pode fazer um furo no roteador e se comunicar diretamente com os dois clientes pretendidos. De acordo com a Wikipedia, "produtos de VoIP, aplicativos de jogos on-line e software de rede P2P usam perfuração". Se o seu caso de uso for semelhante a isso, pode valer a pena considerar.

Você também pode encontrar esta pergunta no Superusuário relevante, com uma resposta do spacecrab :

Sim, opção: adquira o acesso com um serviço VPN que permita um IP estático e encaminhamento de porta, você poderá fazer com que os clientes conversem diretamente com o (s) seu (s) dispositivo (s), como seria de esperar.

Opção dois: encontre um acordo em um VPS (servidor virtual privado) e configure um software VPN popular como o OpenVPN. O resultado final é o mesmo, a parte da configuração é muito mais profunda. Boa experiência de aprendizado se você estiver tentando encontrar um motivo para passar uma tarde se educando em redes leves.

Aurora0001
fonte
Obrigado .. @ Aurora0001 parece ser uma boa maneira .. A solução VPN. Deixe-me esperar por mais algumas respostas de outra forma esta é a resposta aprovada ..
Shakti Phartiyal
@ShaktiPhartiyal Sem problemas; é sempre uma boa idéia esperar e ver se há respostas melhores por aí, e espero que minha resposta o leve ao caminho certo. Não há necessidade de aceitar imediatamente!
Aurora0001
1
@ Aurora0001 suas respostas sempre me ajudou ..
Internet das coisas Amante
@ Aurora0001, você pode me ajudar a seguir em frente com o SOCKS. algum ponto de partida?
Shakti Phartiyal
@ ShaktiPhartiyal Eu não o segui, mas o tutorial do DigitalOcean para configurar um túnel parece bem claro.
Aurora0001
4

Gostaria de saber se outra solução seria fazer com que o seu Raspberry Pi empurre o feed para um servidor em nuvem.

A outra resposta fornece a melhor maneira possível de entrar no pi de fora, mas se você não precisar fazer isso, se quiser imagens ocasionais no estilo de câmeras de segurança, poderá criar um script para assistir a uma pasta e quando aparecer uma nova imagem, carregue-a em um local remoto. Se você deseja o feed completo, pode transmitir para algo como o youtube, manter o feed privado e ir para lá sempre que quiser.

Aqui estão as etapas para o processo do youtube:

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

Veja como fazer upload automático de uma pasta:

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

David Morris
fonte
Parece uma boa coisa a completa auto .. obrigado
Shakti Phartiyal
0

Muitos provedores de ISP não permitem que clientes residenciais usem a porta 80 ou 8080. Tente usar um número de porta diferente com o Motion e também verifique com seu ISP para ver quais portas são permitidas. Você também precisa ativar o encaminhamento de porta no roteador Netgear, para que o tráfego seja roteado para o Raspberry Pi

GusGorman402
fonte