Lien vers l'accueil
On installe dnsmasq
apt install dnsmasq
Le fichier de configuration est /etc/dnsmasq.conf Supprimez-le fichier de base
rm /etc/dnsmasq.conf
Créez-en un nouveau
nano /etc/dnsmasq.conf
Placez dedans le code ci-dessous :
#L'interface wifi sur laquelle on va distribuer les adresses interface=wlx503eaa3d7d6c #Les interfaces sur lesquelles on ne distribue pas d'adresses no-dhcp-interface=lo, eth0 #La plage d'adresses distribuées dhcp-range=192.168.0.10,192.168.0.250,255.255.255.0,12h #On désactive le serveur DNS de dnsmasq (activé par défaut) port = 0 #On active les logs log-queries log-facility=/var/log/syslog
Vous pouvez ajouter ap_isolate=1 si vous utilisez un autre driver que le mac80211, mais dans notre cas, il semble que cette option ne soit pas prise en charge (https://gitlab.labs.nic.cz/turris/openwrt/commit/1420b2f40bc80fee3fc06f14cce2bd33f75aaf2d). Cette option est censée empêcher les stations de communiquer entre elles.
Redémarrez
reboot
On va maintenant vérifier que tout fonctionne. Pour cela, munissez-vous d'un ordinateur, téléphone ou tablette disposant du wifi. Ici nous utiliserons un téléphone (One Plus X sous Android 8 Oreo).
Vous devriez voir apparaître le réseau “prxc” que nous venons de créer dans la liste des réseaux wifi disponibles. Connectez-vous et authentifiez-vous avec le mot de passe choisi (dans notre configuration il s'agit de passphrase).
Sur l'image ci-dessous, on constate que notre téléphone a bien récupéré une adresse IP automatiquement. Donc le DHCP fonctionne.
Attention, si vous obtenez un problème d'authentification (et que vous avez préalablement modifié le mot de passe de l'ap dans hostapd.conf), tentez de retirer le réseau, puis de vous reconnecter en saisissant le mot de passe.
Il est possible d'obtenir la liste des stations connectées avec la commande hostapd_cli all_sta
root@debian:~# hostapd_cli all_sta Selected interface 'wlx503eaa3d7d6c' c0:ee:fb:58:69:22 flags=[AUTH][ASSOC][AUTHORIZED] aid=0 capability=0x0 listen_interval=0 supported_rates= timeout_next=NULLFUNC POLL rx_packets=0 tx_packets=0 rx_bytes=0 tx_bytes=0 connected_time=26 root@debian:~#