Je ne me connecte sur mon Raspberry que par ssh, vu que je n’ai pas d’écran hdmi. Mon soucis est que, puisqu’il est connecté en wifi, il me faut tout le temps chercher son IP, qui n’est jamais la même. L’idée est donc de fixer l’IP de la connexion wifi, sans passer par le serveur DHCP du routeur qui affecte une IP à la connexion. Mais comment faire ? C’est tout l’objet de ce post.
Comme toujours pour ce genre de chose : il faut y aller en ligne de commande, donc j’ai besoin d’un terminal ouvert sur mon Raspberry. je me connecte donc en ssh sur lui.
Phase un : collecte des infos
J’ai besoin pour commencer d’en savoir plus sur mon réseau. Pour cela, sur mon linux, je tape la commande suivante :
ifconfig -a
Cette commande me liste toutes les interfaces réseau ouvertes sur mon pc, et me donne par la même occasion les informations souhaitées. Sous Windowz, lancer un ipconfig -all
Je m’intéresse à l’interface eth0, qui correspond à ma carte Ethernet. J’y trouve les infos nécessaires :
- broadcast : 192.168.1.255
- masque de sous réseau : 255.255.255.0
- et l’adresse ip de ma machine actuelle : 192.168.1.100 (info inutile dans le cas présent)
- il faut aussi l’IP du routeur ou de la box : dans mon cas : 192.168.1.1
- le réseau est donc le 192.168.1.0
- Je décide que mon Raspberry sera sur l’adresse 192.168.1.120
La configuration de l’interface réseau se trouve dans le fichier /etc/network/interfaces
. Avant d’aller plus loin, il nous reste une information à obtenir pour pouvoir modifier ce fichier.
Notre réseau wifi est défini par un SSID. Si on utilise un mot de passe WPA, il faut fournir ce dernier à notre fichier de configuration sous une forme hexadécimale. Pour transformer mon mot de passe WPA en mode hexa, on exécute dans le terminal la commande suivante :
sudo wpa_passphrase MonSSID MonMotDePasseWPA
en remplaçant bien sûr par les bonnes valeurs. La commande renvoie plusieurs infos : on ne prendra que la valeur HEX. A présent, on peut ouvrir et modifier le fichier de configuration réseau. Continuons en ligne de commande et ouvrons le avec l’éditeur nano. Il faut le lancer avec un sudo, sinon, il ne sera pas possible de l’enregistrer une fois modifié.
sudo nano /etc/network/interfaces
Je recherche ensuite les lignes qui concernent la wifi, c’est à dire : wlan0. Pour conserver les valeurs par défaut de ce fichier au cas où on voudrait y revenir, le plus simple sera de mettre les infos en commentaire (en préfixant les lignes avec le signe #), puis d’écrire la nouvelle configuration.
Je commente les lignes qui concernent l’interface wlan0
# allow-hotplug wlan0
# iface wlan0 inet manual
# wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
# iface default inet dhcp
J’écris les nouvelles valeurs
auto wlan0
iface wlan0 inet static
address 192.168.1.120
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
wpa-ssid MonSSID
wpa-psk xxxxxxxxxxxxxxx
Où xxxxxxxxxxxxxxx
est la forme hexadécimale du mot de passe wifi que m’a donnée la commande précédente. Puis j’enregistre avec CTRL+ o , et je quitte avec CTRL + x
Il ne me reste qu’a redémarrer le Raspberry. Ce que je peux faire en mode terminal en écrivant :
sudo shutdown -r 0
Le Rapsberry redémarre et se connecte automatiquement sur mon réseau par la wifi, et avec l’IP 192.168.1.120. C’est gagné !