🛠 Piloter le Pi 2 en SSH et stabiliser son réseau
Objectifs
Installer et sécuriser l'accès SSH au Raspberry Pi 2, comprendre sa particularité réseau (Ethernet 10/100 via la puce combo LAN9514, aucun WiFi embarqué) et corriger le défaut connu des cartes v1.2 : l'adresse MAC aléatoire à chaque démarrage, qui casse les baux DHCP et les règles de pare-feu.
Matériel
- Raspberry Pi 2 Model B (v1.2 à BCM2837 : attention au problème de MAC)
- Câble Ethernet vers la box/routeur (pas de WiFi ni Bluetooth embarqués)
- Un ordinateur sur le même réseau
Code complet
# 1. Activer SSH : sudo raspi-config -> Interface -> SSH -> Oui
# (sur l'image neuve : creer un fichier vide nomme ssh dans la partition boot)
sudo systemctl enable --now ssh
# 2. Recuperer l'adresse IP obtenue par DHCP
ip -4 addr show eth0 | grep inet
# 3. Cartes v1.2 : epingler une MAC fixe (sinon elle change a chaque boot)
MAC="b8:27:eb:12:34:56"
sudo sed -i "s/\s*rootwait/& smsc95xx.macaddr=${MAC}/" /boot/cmdline.txt
sudo reboot
# 4. Après redemarrage : vérifier puis se connecter depuis un autre poste
ip link show eth0 | grep ether
ssh pi@192.168.1.50
# 5. Debit maximal attendu (bus USB 2.0 partage, Ethernet 100 Mbps)
iperf3 -c 192.168.1.10
Vérification attendue
Après activation, sshd tourne (systemctl status ssh) et la connexion aboutit depuis l'autre poste. Après l'astuce macaddr, la même adresse MAC réapparaît à chaque redémarrage et le bail DHCP reste stable. iperf3 doit approcher 90 Mbit/s : c'est la limite matérielle des 100 Mbps et du bus USB partagé, pas un défaut.
Erreurs fréquentes
- « Host key vérification failed » après un reflash : supprimer la clé du poste client (ssh-keygen -R 192.168.1.50).
- IP qui change sans cesse : cause typique sur v1.2 (MAC aléatoire) — appliquer le correctif smsc95xx.macaddr ci-dessus.
- Attendre le WiFi : le Pi 2 n'a ni WiFi ni Bluetooth ; seul un dongle USB ajoute le sans-fil.
- Lenteurs réseau : le port Ethernet et les 4 ports USB partagent un unique bus 480 Mbps ; ne pas surcharger les deux.
Autres tutoriels pour cette carte
Exemples de code pour cette carte
led_blink.pyPythonbutton_led.pyPythonservo_sweep.pyPythondht_temp.pyPythonoled_i2c.pyPythonmcp3008_read.pyPython