Bulle Wifi - site web local diffusé en wifi par un Raspberry Pi
Fermé
Aklain52
Messages postés
8
Date d'inscription
samedi 21 octobre 2017
Statut
Membre
Dernière intervention
10 mars 2020
-
Modifié le 9 mars 2020 à 09:40
mamiemando Messages postés 33344 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 7 novembre 2024 - 12 mars 2020 à 13:48
mamiemando Messages postés 33344 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 7 novembre 2024 - 12 mars 2020 à 13:48
A voir également:
- Bulle Wifi - site web local diffusé en wifi par un Raspberry Pi
- Site de telechargement - Accueil - Outils
- Voir mot de passe wifi android - Guide
- Adresse mac wifi - Guide
- Appdata local - Guide
- Changer wifi chromecast - Guide
7 réponses
mamiemando
Messages postés
33344
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
7 novembre 2024
7 803
9 mars 2020 à 09:42
9 mars 2020 à 09:42
Bonjour,
Pourquoi n'utilises-tu pas directement un portail captif ?
Bonne chance
Pourquoi n'utilises-tu pas directement un portail captif ?
Bonne chance
Aklain52
Messages postés
8
Date d'inscription
samedi 21 octobre 2017
Statut
Membre
Dernière intervention
10 mars 2020
9 mars 2020 à 09:47
9 mars 2020 à 09:47
Parce que les portails captifs sont fait pour fonctionner avec Internet.
J'utilise un Raspberry Pi 3 A+ qui n'a pas de port RJ45.
Du coup, si j'utilise un portail Captif, il y a une erreur parce qu'il n'y a qu'une seule carte réseau.
Je me suis donc inspiré de tous les guides pour créer un portail captif pour faire mes paramétrages, mais il semble que le fait que mon Raspberry Pi ne soit pas connecté à internet, sur une seconde carte réseau, pose problème...
J'ai également fait quelques tests avec un Raspberry Pi 2 B+, mais dès que je déconnecte le câble du port RJ45, ça ne fonctionne plus non plus.
J'utilise un Raspberry Pi 3 A+ qui n'a pas de port RJ45.
Du coup, si j'utilise un portail Captif, il y a une erreur parce qu'il n'y a qu'une seule carte réseau.
Je me suis donc inspiré de tous les guides pour créer un portail captif pour faire mes paramétrages, mais il semble que le fait que mon Raspberry Pi ne soit pas connecté à internet, sur une seconde carte réseau, pose problème...
J'ai également fait quelques tests avec un Raspberry Pi 2 B+, mais dès que je déconnecte le câble du port RJ45, ça ne fonctionne plus non plus.
mamiemando
Messages postés
33344
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
7 novembre 2024
7 803
9 mars 2020 à 10:02
9 mars 2020 à 10:02
Re bonjour,
Parce que les portails captifs sont fait pour fonctionner avec Internet.
Je pose la question car peut être qu'en s'inspirant de la méthode de ces portails captifs, tu pourrais l'adapter à ta sauce.
Ensuite, ça ne me choque pas que la 4G reste prioritaire si elle est activée. Sur un smartphone tu n'as pas toujours envie d'allumer le wifi (bien plus énergivore), et le choix du réseau d'accès reste à la discrétion de l'utilisateur.
Parce que les portails captifs sont fait pour fonctionner avec Internet.
Je pose la question car peut être qu'en s'inspirant de la méthode de ces portails captifs, tu pourrais l'adapter à ta sauce.
Ensuite, ça ne me choque pas que la 4G reste prioritaire si elle est activée. Sur un smartphone tu n'as pas toujours envie d'allumer le wifi (bien plus énergivore), et le choix du réseau d'accès reste à la discrétion de l'utilisateur.
Aklain52
Messages postés
8
Date d'inscription
samedi 21 octobre 2017
Statut
Membre
Dernière intervention
10 mars 2020
Modifié le 9 mars 2020 à 10:55
Modifié le 9 mars 2020 à 10:55
En fait, ma configuration actuelle est inspirée de ces portails captifs justement.
C'est juste que, plutôt que d'utiliser quelque chose de déjà paramétré, j'ai fait mon propre paramétrage.
Quand je dis que la 4G reste prioritaire, c'est que, une fois connecté au Wifi, si l'utilisateur lance son navigateur et tape l'adresse du site (son IP ou adresse), le smartphone cherche uniquement sur la 4G... lançant Google généralement.
IOs, quant à lui, pose moins de soucis, car il va uniquement sur le Wifi.
J'ai tenté ce genre de paramétrage :
Mais sans que celà change quoi que ce soit...
C'est juste que, plutôt que d'utiliser quelque chose de déjà paramétré, j'ai fait mon propre paramétrage.
Quand je dis que la 4G reste prioritaire, c'est que, une fois connecté au Wifi, si l'utilisateur lance son navigateur et tape l'adresse du site (son IP ou adresse), le smartphone cherche uniquement sur la 4G... lançant Google généralement.
IOs, quant à lui, pose moins de soucis, car il va uniquement sur le Wifi.
J'ai tenté ce genre de paramétrage :
nano /etc/apache2/sites-enabled/captive_portal.conf
# apple RewriteEngine on RewriteCond %{HTTP_USER_AGENT} ^CaptiveNetworkSupport(.*)$ [NC] RewriteCond %{HTTP_HOST} !^192.168.1.1$ RewriteRule ^(.*)$ http://192.168.4.1/index.php [L,R=302] # android RedirectMatch 302 /generate_204 http://192.168.1.1/index.php # windows RedirectMatch 302 /ncsi.txt http://192.168.1.1/index.php RewriteCond %{REQUEST_URI} !^/captive/ [NC] RewriteRule ^(.*)$ http://192.168.1.1/index.php [L]
Mais sans que celà change quoi que ce soit...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mamiemando
Messages postés
33344
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
7 novembre 2024
7 803
10 mars 2020 à 09:43
10 mars 2020 à 09:43
Le truc que je ne comprends pas c'est pourquoi l'utilisateur aurait à la fois la 4G et le wifi allumé. Et dans ce cas, c'est son système qui va choisir d'utiliser l'un ou l'autre. Ce qui serait intéressant de voir, c'est si une connexion purement wifi lui permet d'avoir accès à Internet...
Aklain52
Messages postés
8
Date d'inscription
samedi 21 octobre 2017
Statut
Membre
Dernière intervention
10 mars 2020
10 mars 2020 à 10:29
10 mars 2020 à 10:29
Pour que ce soit plus claire, je vais partir d'un cas pratique.
Une personne du publique se présente à l'accueil de mon entreprise et patiente en salle d'attente.
Un écran de télévision diffuse de l'information.
Ces infos sont un condensé et des messages proposent de se connecter à notre réseau wifi pour en savoir plus.
La personne prends donc son smartphone, se connecte à notre wifi et lance son navigateur pour accéder à un petit site web. (c'est le but à atteindre)
Ce réseau wifi est un réseau fermé, c'est une bulle, sans connexion à internet. Le site est hébergé par le Raspberry Pi qui émet et diffuse également le réseau wifi. (le raspberry pi n'est pas relié à internet)
Mon problème est que quand les utilisateurs se connectent à mon wifi, les smartphones sous Android, détectent que ce réseau n'a pas de connexion internet. Ils restent connectés au wifi mais ne semblent pas l'utiliser.
Si l'utilisateur ouvre son navigateur, la 4G prends le relais et il finit sur internet.... et non sur mon site.
Je voudrais,
- soit pouvoir "pousser" l'ouverture du navigateur et du site à la connexion du wifi, (je ne pense pas que ce soit possible)
- soit faire en sorte que l'ouverture d'un navigateur mène systématiquement à mon site. (peut-être en lui faisant croire qu'il y a bien internet)
Mais ça fait des semaines que je bosse là dessus et je bloque.
A noter que, si l'utilisateur désactive sa 4G/3G, cela fonctionne. Mais ça fait une manip de trop, il faut que ce soit le plus simple possible.
Une personne du publique se présente à l'accueil de mon entreprise et patiente en salle d'attente.
Un écran de télévision diffuse de l'information.
Ces infos sont un condensé et des messages proposent de se connecter à notre réseau wifi pour en savoir plus.
La personne prends donc son smartphone, se connecte à notre wifi et lance son navigateur pour accéder à un petit site web. (c'est le but à atteindre)
Ce réseau wifi est un réseau fermé, c'est une bulle, sans connexion à internet. Le site est hébergé par le Raspberry Pi qui émet et diffuse également le réseau wifi. (le raspberry pi n'est pas relié à internet)
Mon problème est que quand les utilisateurs se connectent à mon wifi, les smartphones sous Android, détectent que ce réseau n'a pas de connexion internet. Ils restent connectés au wifi mais ne semblent pas l'utiliser.
Si l'utilisateur ouvre son navigateur, la 4G prends le relais et il finit sur internet.... et non sur mon site.
Je voudrais,
- soit pouvoir "pousser" l'ouverture du navigateur et du site à la connexion du wifi, (je ne pense pas que ce soit possible)
- soit faire en sorte que l'ouverture d'un navigateur mène systématiquement à mon site. (peut-être en lui faisant croire qu'il y a bien internet)
Mais ça fait des semaines que je bosse là dessus et je bloque.
A noter que, si l'utilisateur désactive sa 4G/3G, cela fonctionne. Mais ça fait une manip de trop, il faut que ce soit le plus simple possible.
mamiemando
Messages postés
33344
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
7 novembre 2024
7 803
12 mars 2020 à 13:48
12 mars 2020 à 13:48
Bonjour
Réponse courte
À mon avis c'est un problème de routage (qui se règle au niveau de la configuration du serveur DHCP).
Réponse longue
Une fois la table de routage constituée, dès qu'un paquet doit être envoyé, le système décide de la route la plus appropriée. Cette route doit couvrir la destination du paquet. Il peut rester plusieurs routes candidates. Deux paramètres sont pris en compte : la spécificité de la route (i.e. la longueur du masque de la route) et la métrique de la route.
Exemple : Ici on a deux routes, qui correspondent aux destination *.*.*.* et 192.168.0.* (voir Destination + Genmask). Si je tente de joindre 192.168.1.1, alors les deux routes sont candidates, mais comme la seconde route est plus spécifique, c'est celle qui est utilisée.
Dans ton cas, le problème revient au même. Tu as deux interfaces (wifi et 4g, peu importe), mais en jouant sur la plage de destinations retournée par le serveur DHCP, tu dois être en mesure de redescendre uniquement le préfixe de ton réseau wifi (au lieu d'une route par défaut).
Pour le moment, je pense que ton wifi redescend une route par défaut. Donc l'OS hésite entre celle de la 4G et celle du wifi. Or, comme celle du wifi n'offre pas d'accès internet, il lui assigne probablement une métrique plus forte.
Si maintenant, tu redescends par DHCP uniquement le préfixe associé à ton réseau local (e.g. une route uniquement pour, disons, 192.168.1.*) alors tu retombes dans le cas de l'exemple ci-dessus. Si ensuite l'utilisateur accède à ton serveur web via son IP locale, alors il devrait utiliser le wifi pour la contacter. A contrario, s'il veut aller mettons sur CCM, comme l'adresse de CCM est résolue par le DNS en dehors de ce préfixe il utilisera la route par défaut.
Bonne chance
Réponse courte
À mon avis c'est un problème de routage (qui se règle au niveau de la configuration du serveur DHCP).
Réponse longue
Une fois la table de routage constituée, dès qu'un paquet doit être envoyé, le système décide de la route la plus appropriée. Cette route doit couvrir la destination du paquet. Il peut rester plusieurs routes candidates. Deux paramètres sont pris en compte : la spécificité de la route (i.e. la longueur du masque de la route) et la métrique de la route.
Exemple : Ici on a deux routes, qui correspondent aux destination *.*.*.* et 192.168.0.* (voir Destination + Genmask). Si je tente de joindre 192.168.1.1, alors les deux routes sont candidates, mais comme la seconde route est plus spécifique, c'est celle qui est utilisée.
(mando@silk) (~) $ /sbin/route -n
Table de routage IP du noyau
Destination Passerelle Genmask Indic Metric Ref Use Iface
0.0.0.0 192.168.0.254 0.0.0.0 UG 600 0 0 wlp2s0
192.168.0.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp2s0
Dans ton cas, le problème revient au même. Tu as deux interfaces (wifi et 4g, peu importe), mais en jouant sur la plage de destinations retournée par le serveur DHCP, tu dois être en mesure de redescendre uniquement le préfixe de ton réseau wifi (au lieu d'une route par défaut).
Pour le moment, je pense que ton wifi redescend une route par défaut. Donc l'OS hésite entre celle de la 4G et celle du wifi. Or, comme celle du wifi n'offre pas d'accès internet, il lui assigne probablement une métrique plus forte.
Si maintenant, tu redescends par DHCP uniquement le préfixe associé à ton réseau local (e.g. une route uniquement pour, disons, 192.168.1.*) alors tu retombes dans le cas de l'exemple ci-dessus. Si ensuite l'utilisateur accède à ton serveur web via son IP locale, alors il devrait utiliser le wifi pour la contacter. A contrario, s'il veut aller mettons sur CCM, comme l'adresse de CCM est résolue par le DNS en dehors de ce préfixe il utilisera la route par défaut.
Bonne chance