Aller au contenu principal

Préparation d'un Raspberry Pi en vue de son utilisation comme Gateway

Partager la connexion Internet Wi-Fi du Raspberry Pi vers Ethernet​

info

À cette étape, le Raspberry Pi doit être connecté à Internet via le Wi-Fi et le PLC doit être connecté au Raspberry Pi via la connexion Ethernet.

Vous allez maintenant configurer le Raspberry Pi afin de partager la connexion Internet Wi-Fi vers Ethernet. Exécutez les commandes suivantes sur le Raspberry Pi.

1. (Facultatif) Mettez à jour le Raspberry Pi :

sudo apt-get update
sudo apt-get upgrade

2. Pour configurer le client DHCP, ouvrez le fichier de configuration

sudo vi /etc/dhcpcd.conf

et collez denyinterfaces eth0 à la fin du fichier. Fermez le fichier de configuration (Esc, :w (Enter), :q (Enter)).

3. Ensuite, ouvrez les interfaces réseau

sudo vi /etc/network/interfaces

et collez les lignes suivantes à la fin du fichier :

auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.66.1
netmask 255.255.255.0
network 192.168.66.0
broadcast 192.168.66.255

Fermez le fichier d'interface réseau (Esc, :w (Enter), :q (Enter)).

4. Installez et configurez le service DHCP afin d'attribuer automatiquement des adresses IP à chaque appareil connecté au port Ethernet. Installez dnsmasq et créez une nouvelle configuration :

sudo apt-get install dnsmasq
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo vi /etc/dnsmasq.conf

Ajoutez les lignes suivantes au fichier

interface=eth0
listen-address=192.168.66.1
dhcp-range=192.168.66.50,192.168.66.100,12h
server=8.8.8.8
bind-interfaces
domain-needed
bogus-priv

puis fermez la configuration (Esc, :w (Enter), :q (Enter)).

5. Redémarrez le Raspberry Pi.

sudo reboot

Ensuite, nous devons rouvrir la connexion SSH.

6. Nous transférons maintenant la connexion Internet du Wi-Fi vers le port Ethernet auquel le PLC est connecté, en activant le transfert IPv4. Ouvrez le fichier /etc/systcl.conf file:

sudo vi /etc/sysctl.conf

Décommentez la ligne suivante en supprimant le # (ligne 28) :

net.ipv4.ip_forward=1

Enregistrez et fermez le fichier (Esc, :w (Enter), :q (Enter)).

7. Activez le transfert IP en exécutant la commande suivante :

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

8. Nous installons maintenant iptables et ajoutons des règles de pare-feu. Exécutez les commandes suivantes une par une :

sudo apt install iptables
sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
sudo iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT

9. Vérifiez que les modifications ont bien été effectuées et enregistrez les règles :

sudo iptables -L -n -v
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

Pour recharger automatiquement ces règles après chaque redémarrage, modifiez le fichier /etc/rc.local :

sudo vi /etc/rc.local

Collez la ligne suivante avant exit 0 :

iptables-restore < /etc/iptables.ipv4.nat

Enregistrez et fermez le fichier (Esc, :w (Enter), :q (Enter)).

10. Pour vérifier les paramètres du pare-feu, exécutez

route

La table de routage devrait ressembler à ceci :

Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.2.1 0.0.0.0 UG 304 0 0 wlan1
192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
192.168.2.0 * 255.255.255.0 U 304

Vous pouvez maintenant consulter la console SDA pour vérifier si la connexion à la Gateway a été établie et si le PLC est connecté.