Setup:
- Raspberry 2B
- Raspberry Pi OS Lite : Bullseye
- Clé usb wifi Tenda U3
Contexte
J’ai installé un serveur Proxmox pour mon homelab mais je n’ai ni abonnement ADSL ni fibre avec un boitier de l’opérateur qui me permette de donner accès à Internet à mes VMs Proxmox. J’ai plutôt un boitier wifi 4G+ qui me permet d’avoir Internet à la maison.
La première solution rapide que j’ai trouvé est de me connecter avec mon MacBook au wifi puis de faire un partage de connexion via un adaptateur USB-C/RJ45. Avec cette solution, il faut tout le temps que le serveur Proxmox soit connecté au MacBook.
La seconde solution à laquelle j’ai pensée est de recycler mon vieux Raspberry Pi 2B en routeur. Le Raspberry Pi dispose d’une interface réseau filaire, j’ai acheté une clé Usb Wifi pour qu’il puisse également se connecter sur le boitier wifi 4G+. L’idée est de connecter le Raspberry Pi au réseau Wi-Fi sans fil disposant d’une connectivité internet et acheminer le trafic internet vers l’interface du réseau câblé. De cette manière, je pourrai utiliser le Raspberry Pi comme un routeur câblé.
Configurations réseaux
Créer ou modifiez le fichier /etc/wpa_supplicant/wpa_supplicant.conf avec les informations du Wifi auquel le Raspberry va se connecter
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="Airbox-5F86"
scan_ssid=1
psk="5xZbNu62CzcE" #le mot de passe du wifi
key_mgmt=WPA-PSK
}
Créer ensuite un fichier de configuration réseau pour l’interface wifi wlan0 :
vim /etc/network/interfaces.d/wlan0
Rajouter le contenu suivant puis enregistrer :
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Créer un fichier de configuration réseau pour l’interface filaire eth0 :
vim /etc/network/interfaces.d/eth0
Rajouter le contenu suivant puis enregistrer :
auto eth0
iface eth0 inet static
address 192.168.100.1
netmask 255.255.255.0
Désactivez ensuite le service dhcpcd à l’aide de la commande suivante :
sudo systemctl disable dhcpcd
Redémarrez le Raspberry Pi pour vérifier que les modifications sont prises en compte et que la connexion au wifi se fait automatiquement.
sudo reboot
Une fois votre Raspberry Pi démarré, vérifiez la configuration réseau de l’interface réseau wlan0 comme suit :
ip addr show wlan0
wlan0 devrait être connecté au point d’accès wifi et obtenir une adresse IP via DHCP. Vérifiez également la configuration réseau de l’interface eth0 comme suit :
ip addr show eth0
Configuration du serveur DHCP
Installez le serveur DHCP ISC avec la commande suivante :
sudo apt install isc-dhcp-server
Modifier ensuite le fichier /etc/dhcp/dhcpd.conf et ajouter les lignes suivantes à la fin.
authoritative;
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.50 192.168.100.240;
option routers 192.168.100.1;
option subnet-mask 255.255.255.0;
}
Ouvrez maintenant le fichier de configuration /etc/default/isc-dhcp-server et rajouter eth0 à la variable INTERFACESv4
Redémarrer le service isc-dhcp-server et vérifiez sont status :
sudo systemctl start isc-dhcp-server
sudo systemctl status isc-dhcp-server
Configurer le pare-feu et activer le transfert de paquets
Installez firewalld puis vérifiez son status comme suit :
sudo apt install firewalld
sudo systemctl status firewalld
Autorisez maintenant le trafic DHCP à travers le pare-feu à l’aide de la commande suivante :
sudo firewall-cmd --add-service=dhcp --permanent
Autoriser le transfert de paquets IP avec la commande suivante
sudo firewall-cmd --add-masquerade --permanent
Tests
Une fois que le Raspberry Pi a démarré, connectez sont port RJ45 à un switch puis connecter un ordinateur au swtich pour tester si ce dernier reçoit automatiquement des paramètres réseaux (IP, configuration de route) et arrive à se connecter à Internet. Dans mon cas, j’ai directement connecté le Raspberry à mon Mac, j’ai désactivé le wifi puis j’ai fait les tests.
Test de ping sur l’IP du routeur Raspberry (192.168.100.1)
Test de ping sur google.fr
Speedtest pour voir les débits montant et descendant
Et voilà, il ne me reste plus qu’à acheter un switch en attendant l’ADSL puis la fibre.