Préparation d'un Raspberry Pi en vue de son utilisation comme Gateway
Partager la connexion Internet Wi-Fi du Raspberry Pi vers Ethernet
À 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é.