RaspFR :: Forum

Forum de la communauté francophone de Raspberry PI.

Vous n'êtes pas identifié(e).

Annonce

Canal irc: #raspfr sur zeolia.net

#1 10-08-2016 00:10:43

golum
Membre
Inscription : 09-08-2016
Messages : 23

Accès RPI3 depuis l'extérieur avec noip

Bonjour à tous !
Je suis nouveau dans ce forum et j'espère que quelqu'un pourra m'aider...
J'ai une question réseau, domaine dans lequel je suis très mauvais...

J'ai fait un robot avec un RPI3.
J'ai défini mon RPI3 en tant que point d'accès (en DHCP pour ceux qui s'y connectent) avec hostapd et dnsmask.
J'ai définit une IP statique pour mon AP : 192.168.4.1

Ce robot a un raspicam. Je visualise l'image à partir d'une page HTML sur IP 192.168.4.1:8000. Cette page affiche l'image de la raspicam avec mjpg-streamer sur le port 10088.
Ça marche parfaitement. Je peux sans pb voir l'image mais en local, en me connectant au réseau de mon RPI3 (IP 192.168.4.1:8000).
A noter que mon RPI3 a une IP locale 192.168.1.109.

Je veux maintenant accéder à 192.168.4.1:8000 mais depuis l'extérieur.
J'ai utilisé noip mais il y a un pb...

J'ai créé un compte noip qui pointe vers l'IP de mon modem.
Sur mon routeur :
- j'ai réservé l'adresse DHCP 192.168.1.109.
- j'ai fait un transfert du port 8000 et 10088 vers 192.168.1.109

A partir du dns que je me suis défini avec noip, je peux voir ma page HTML mais pas l'image de la caméra...

Quelqu'un pourrait-il m'aider ?
Cela me serait d'un très GRAND SECOURS...

Hors ligne

#2 10-08-2016 08:39:52

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 413

Re : Accès RPI3 depuis l'extérieur avec noip

A mon avis, le souci est plutôt sur la configuration de mjpg-streamer et/ou du serveur web qui diffuse sur le réseau 192.168.4.0/24 et pas sur 192.168.1.0/24. J'imagine que depuis une machine de ton réseau local (pas celui de l'AP), tu as le même souci.

Est-ce que tu peux donner l'adresse noip pour que je puisse voir la page html ?

Hors ligne

#3 10-08-2016 10:00:42

golum
Membre
Inscription : 09-08-2016
Messages : 23

Re : Accès RPI3 depuis l'extérieur avec noip

Oui, en local, j'ai le même problème et non sur l'AP.
Je te donne l'adresse noip en MP car je ne veux pas la diffuser sur le forum...

Hors ligne

#4 10-08-2016 10:33:02

jb1
Membre
Inscription : 19-07-2013
Messages : 168

Re : Accès RPI3 depuis l'extérieur avec noip

Bonjour,
sous réserve,
noip et la box font bon ménage
mais l'utilisation de ddns de noip est fait pour une consultation extérieure à ton reseau
utilisation du smartphone par exemple

pour un test local: http://192.168.4.1:8000    le port ou service 8000 ouvert dans la box et le parefeu
pour un test depuis l'extérieur, aprés être enregistré auprés de noip.com et implémenter la box pour le nat
donc depuis ton smartphone : http://nom_choisi.ddns.org:8000
chez moi des souvenirs de vacance:
http://alpha30.ddns.net
pour alpha30 nom choisi
ddns dynamique dns
net choix arbitraire
pour la ligne ci-dessus port 80 par défault
A+
JB

Hors ligne

#5 10-08-2016 12:21:34

golum
Membre
Inscription : 09-08-2016
Messages : 23

Re : Accès RPI3 depuis l'extérieur avec noip

Bonjour jb01,
Comme je l'ai mentionné, en passant par l'extérieur (monip:8000), j'arrive à voir ma page html mais pas le streaming de la caméra.
Je n'ai pas saisi ce que tu me recommandes...

Hors ligne

#6 10-08-2016 12:38:55

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 413

Re : Accès RPI3 depuis l'extérieur avec noip

Bon, je pense avoir compris le problème, il est purement dans le html généré.

La page est accessible sur le port 10088 avec le noip, mais effectivement la vidéo n'est pas visible. J'ai donc jeté un coup d'oeil au code:

<img id="img_camera" src="http://192.168.3.1:10088/?action=stream" width="640" height="480">

Forcément, l'ip locale ne donne rien pour moi. Par contre, si je mets dans mon navigateur: http://adresse.noip:10088/?action=stream, je vois bien le stream.
Conclusion : si la page est générée en php, il faudrait que l'url du stream soit créée ainsi:

echo $_SERVER['SERVER_NAME'], ':10088/?action=stream';

Hors ligne

#7 10-08-2016 12:47:33

golum
Membre
Inscription : 09-08-2016
Messages : 23

Re : Accès RPI3 depuis l'extérieur avec noip

ok mais la page n'est pas générée par du php.
Devrais-je le faire pour ne pas mettre l'adresse du serveur en dur ?

Hors ligne

#8 10-08-2016 13:11:55

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 413

Re : Accès RPI3 depuis l'extérieur avec noip

Comment est générée la page ? Est-ce que tu en as la maîtrise ?
Si oui, j'ai diverses idées à te proposer.

L'idée la plus simple (tu peux oublier la précédente): ne met pas d'url à ton image:

<img id="img_camera" src="/?action=stream" width="640" height="480">

Ca a un double avantage:
- le serveur détermine automatiquement l'emplacement où il doit aller (relatif à la page où tu es, pas à l'url)
- c'est une seule connexion, donc l'authentification pour l'accès à la page fonctionne pour l'image (le stream) aussi.

Hors ligne

#9 10-08-2016 13:45:30

golum
Membre
Inscription : 09-08-2016
Messages : 23

Re : Accès RPI3 depuis l'extérieur avec noip

Ça à l'air de fonctionner mais je n'ai pas testé en dehors de chez moi...
Peux-tu le tester pour moi avant que je remette un mot de passe ?
(dns name que je t'ai donné en MP sur port 10088)

Dernière modification par golum (10-08-2016 13:48:42)

Hors ligne

#10 10-08-2016 15:26:37

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 413

Re : Accès RPI3 depuis l'extérieur avec noip

Ca marche nickel, sauf que les commandes de déplacement et vitesse ne font rien. Je peux essayer le bouton stop ? big_smile

Hors ligne

#11 10-08-2016 16:16:19

golum
Membre
Inscription : 09-08-2016
Messages : 23

Re : Accès RPI3 depuis l'extérieur avec noip

Je viens d'essayer aussi depuis l'extérieur et ça marche au poil !!!
Normal qu'il ne bouge pas, j'ai déconnecté la liaison à la broche GPIO pour d'autres tests...
Un grand merci à toi !!!!
D'autres profiteront peut-être de la résolution de ce problème... En tout ca, je n'ai vu nul part dans les forums le fait de ne pas mettre d'adresse serveur...

<img id="img_camera" src="/?action=stream" width="640" height="480"

Tu as eu une idée brillante !

Dernière modification par golum (10-08-2016 20:15:03)

Hors ligne

#12 10-08-2016 17:38:08

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 413

Re : Accès RPI3 depuis l'extérieur avec noip

En fait, c'est plus ou moins la base de tous les liens internes à un site, je ne sais même pas pourquoi je n'y ai pas pensé immédiatement.

Hors ligne

#13 10-08-2016 20:04:07

golum
Membre
Inscription : 09-08-2016
Messages : 23

Re : Accès RPI3 depuis l'extérieur avec noip

Oups ! J'ai crié victoire un peu trop tôt...je n'avais pas tout testé...

Voici mon petit soucis :
- lorsque je vais sous monip:10088, je vois ma page web ainsi que la caméra mais mes macros webiopi ne fonctionnent pas
- lorsque je vais sous monip:8000, je vois ma page web, je ne vois pas la caméra mais mes macros fonctionnent

A noter que dans mon fichier de config de webiopi, j'ai déclaré le port 8000 dans la section [HTML]
Je ne peux pas y déclarer le port 10088 car je serais en conflit avec le streaming...

Voici le code erreur javascript lorsque je vais sur monip:10088 en faisant un 'reculer' :

POST http://monip:10088/macros/DoArriereStart/ net::ERR_CONNECTION_RESET


Une idée CrazyCat ?
J'ai enlevé le mot de passe de webiopi si tu veux vérifier...

Il faudrait peut-être spécifier où chercher les macros (sur quel port) ?

Dernière modification par golum (10-08-2016 20:27:50)

Hors ligne

#14 10-08-2016 20:36:57

golum
Membre
Inscription : 09-08-2016
Messages : 23

Re : Accès RPI3 depuis l'extérieur avec noip

J'ai trouvé un début de solution : mettre http://monip:10088/?action=stream
au niveau de l'image de la caméra dans le fichier html et accéder à la page par monip:8000

Par contre, je crois avoir un soucis avec l'accès via mon AP sur le port 8000... je confirme...
Normal, le streaming essaie de se faire sur http:monip alors que je suis en local, direct sur le Rpi3 via wifi...

Il doit y avoir une solution...

La voici :
Remplace dynamiquement le port du serveur de l'image :

<script type="text/javascript">
document.getElementById("img_camera").src="http://" + window.location.host.replace('8000','10088') + "/?action=stream";
</script>

Ça fonctionne avec monip:8000 et 192.168.3.1:8000

Dernière modification par golum (10-08-2016 22:49:27)

Hors ligne

#15 11-08-2016 10:45:51

CrazyCat
Chat
Inscription : 14-01-2016
Messages : 413

Re : Accès RPI3 depuis l'extérieur avec noip

Donc, webiopi crée/utilise un serveur et mjpg-streamer en utilise un autre ?
Ce que je ne comprends pas, c'est que ta page sur le port 8000 est la même que celle sur le port 10088 (quand on ne met pas le ?action=stream). Il doit certainement y avoir un moyen de résoudre le conflit et de faire fonctionner les deux avec le même serveur web.

Hors ligne

#16 11-08-2016 19:47:24

golum
Membre
Inscription : 09-08-2016
Messages : 23

Re : Accès RPI3 depuis l'extérieur avec noip

J'avais essayé de le faire quand j'étais dans ma phase d'installation de mjpg-streamer et on m'a dit (dans un autre forum) que c'était impossible !

Dernière modification par golum (11-08-2016 19:54:22)

Hors ligne

Pied de page des forums