Dans ce tutoriel nous allons voir comment créer un hotspot wifi pour notre Raspberry Pi. Un hotspot wifi (ou point d’accès sans fil) peut être utile si l’on veut accéder à son Raspberry Pi à distance sans avoir de routeur wifi. Il peut aussi permettre de partager une connexion ethernet (néanmoins les règles de routages et de redirections ne seront pas traitées dans ce tutoriel).
Il nous faut évidemment dans un premier temps un dongle wifi. J’utilise le dongle Edimax EW-7811UN que vous pouvez trouve sur Amazon pour une dizaine d’euros. Au vu de la petite taille de l’antenne de cet équipement, il ne faudra pas vous attendre à une portée exceptionnelle.
Tout d’abord, il vous faudra installer les paquets hostapd et dnsmasq. Le premier vous permettra de créer le hotspot wifi à proprement parlé, quant au second il s’agit d’un petit serveur DNS intégrant également le service DHCP pour une attribution automatique des adresses IP.
sudo apt-get update sudo apt-get install hostapd dnsmasq
Configuration de l’interface réseau
Il nous faut modifier le fichier de configuration des interfaces réseau :
sudo nano /etc/network/interfaces
Nous allons alors configurer un IP static sur notre interface wlan0 (l’interface concernée par le hotspot wifi), ainsi que la définir en mode master.
#allow-hotplug wlan0 #auto wlan0 iface wlan0 inet static address 192.168.1.1 netmask 255.255.255.0 wireless-mode master #wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
J’ai mis en commentaire les lignes de configuration déjà présentes. Vous pouvez les supprimer ou les conserver, mais elles devront être commentées.
Configuration du hotspot wifi
Nous allons maintenant créer le fichier de configuration de hostapd.
sudo nano /etc/hostapd/hostapd.conf
Il sera composé de :
interface=wlan0 driver=rtl871xdrv ssid=MonHotspot hw_mode=g channel=6 macaddr_acl=0 auth_algs=1 wpa=2 wpa_passphrase=masuperclefwifi wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP ignore_broadcast_ssid=0
Liste des paramètres intéressants à modifier :
- interface : Interface de votre dongle wifi, identique à celle définie précédemment.
- driver : Si vous utilisez un autre dongle wifi que le Edimax mettez la valeur nl80211, sinon mettez rtl871xdrv (on expliquera plus tard le problème concernant les drivers pour ce dongle wifi).
- ssid : Le nom de votre hotspot wifi (mettez des guillemets s’il y a un ou plusieurs espaces).
- hw_mode : La norme wifi utilisée (a, b, g ou n), malgré le faite que le dongle soit compatible wifi n, je n’ai pas réussi à faire fonctionner le hotspot wifi avec cette norme. J’ai donc défini g dans mon cas.
- channel : Le canal wifi utilisé. Les valeurs conseillées sont 1, 6 ou 11.
- wpa_passphrase : La clé wifi (le mot de passe) de votre hotspot (mettez des guillemets si il y a un ou plusieurs espaces et un minimum 5 caractères).
- ignore_broadcast_ssid : Permets de déterminer si le nom de votre réseau sera visible ou non (si la valeur est définie à 1 le nom sera caché).
Maintenant il faut spécifier à hostapd où ce trouve ce fichier de configuration en modifiant le fichier /etc/default/hostapd et en configurant le paramètre DAEMON_CONF.
DAEMON_CONF="/etc/hostapd/hostapd.conf"
Malheureusement pour nous, comme évoqué plus haut, le driver par défaut de hostapd n’est pas compatible avec le dongle wifi Edimax EW-7811UN. Néanmoins nous allons utiliser un binaire alternatif afin de pouvoir créer notre hotspot wifi avec ce dongle.
cd /usr/bin sudo mv /usr/sbin/hostapd /usr/sbin/hostapd.bak sudo wget http://code4pi.fr/wp-content/uploads/binaire/hostapd sudo chown root:root hostapd sudo chmod 755 hostapd
Cette opération permet donc de sauvegarder l’ancien binaire, de télécharger le nouveau et enfin de s’assurer qu’il possède les droits d’exécution.
Configuration de dnsmasq (serveur DHCP)
Nous allons maintenant configurer notre serveur DHCP. Pour cela il faut modifier le fichier de configuration de dnsmasq :
sudo nano /etc/dnsmasq.conf
Rendez-vous à la fin du fichier afin d’ajouter ces lignes :
interface=wlan0 dhcp-range=192.168.1.2,192.168.1.254,255.255.255.0,12h
Vous pouvez, si vous le décidez, choisir une autre plage d’adresse IP. Néanmoins il pourra être nécessaire de modifier la configuration réseau de votre interface wifi. La dernière valeur déterminera la durée du bail de cette adresse IP. Pour faire simple si votre PC se reconnecte au hotspot dans un intervalle de 12h, il récupérera automatiquement l’adresse IP qui lui était précédemment attribuée.
Afin que les services puissent démarrer en même temps que le Raspberry Pi, vous devez saisir ces 2 commandes :
sudo update-rc.d dnsmasq enable sudo update-rc.d hostapd enable
Nous sommes maintenant prêts à lancer notre hospot wifi avec ces 3 commandes (la 1ère permet d’éteindre l’interface wifi au cas ou cette dernière serait déjà configurée) :
sudo ifdown wlan0 sudo service dnsmasq restart sudo service hostapd start
Et voilà, un nouveau réseau wifi devrait être visible (selon la configuration choisie bien sûr). Grâce à dnsmasq, vous pouvez accéder à vos différents appareils connectés au hotspot wifi depuis leur nom de machine au lieu d’utiliser leur adresse IP, car ce dernier fait office de serveur dns en plus de son rôle de serveur dhcp.
Salut Benoit,
Remplacer:
sudo apt-get install hostadp dnsmasq
Par:
sudo apt-get install hostapd dnsmasq
(Erreur sur le nom hostapd …)
Je continue l’installation ! A+
David.
Merci, c’est corrigé !
Bonsoir,
J’ai un « Segmentation fault » quand je veux exécuter l’hostapd téléchargé sur code4pi.
Sinon excellent tuto !
Bonsoir,
Vous utilisez quel modèle de dongle Wifi ?
Bonjour,j ai installé volumio sur raspberry pi 3.et il possible de se connecter au raspberry via un smartphone avec mpdroid sans connection internet? Je pense a une connection wifi ou bluethoot directement d appareil a appareil.
Merci de votre aide.
Je ne sais pas comment Volumio fonctionne, mais il doit pouvoir être utilisé avec un réseau local. Pour cela, il est nécessaire de créer un Hotspot comme indiqué au sein de ce tutoriel et de s’y connecter directement avec votre téléphone Android.
bonjour, j’ai suivi le tuto, mais je n’ai pas de nouveau réseau wifi qui apparaît. la ligne « ignore ssid » est bien a 0.
pourriez-vous m’aider?
merci
Quel est le modèle de dongle utilisé ?
Eventuellement un nouveau tutoriel a été rédigé et diverses solutions à certain problèmes ont été abordées dans les commentaires