Vorbereiten eines Raspberry Pi zur Verwendung als Gateway
Raspberry Pi WLAN-Internetverbindung an Ethernet freigeben
In diesem Schritt muss der Raspberry Pi über WLAN mit dem Internet verbunden sein und die PLC muss über die Ethernet-Verbindung mit dem Raspberry Pi verbunden sein.
Sie konfigurieren nun den Raspberry Pi so, dass die WLAN-Internetverbindung an Ethernet freigegeben wird. Führen Sie die folgenden Befehle auf dem Raspberry Pi aus.
1. (Optional) Aktualisieren Sie den Raspberry Pi:
sudo apt-get update
sudo apt-get upgrade
2. Um den DHCP-Client zu konfigurieren, öffnen Sie die Konfigurationsdatei
sudo vi /etc/dhcpcd.conf
und fügen Sie denyinterfaces eth0 am Ende der Datei ein. Schließen Sie die Konfigurationsdatei (Esc, :w (Enter), :q (Enter)).
3. Öffnen Sie als Nächstes die Netzwerkschnittstellen
sudo vi /etc/network/interfaces
und fügen Sie die folgenden Zeilen am Ende der Datei ein:
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
Schließen Sie die Netzwerkschnittstellendatei (Esc, :w (Enter), :q (Enter)).
4. Installieren und konfigurieren Sie den DHCP-Dienst, um jedem Gerät am Ethernet-Port automatisch IP-Adressen zuzuweisen. Installieren Sie dnsmasq und erstellen Sie eine neue Konfiguration:
sudo apt-get install dnsmasq
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo vi /etc/dnsmasq.conf
Fügen Sie die folgenden Zeilen in die Datei ein
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
und schließen Sie die Konfiguration (Esc, :w (Enter), :q (Enter)).
5. Starten Sie den Raspberry Pi neu.
sudo reboot
Anschließend müssen wir die SSH-Verbindung erneut öffnen.
6. Nun leiten wir die Internetverbindung vom WLAN an den Ethernet-Port weiter, an dem die PLC angeschlossen ist, indem wir die IPv4-Weiterleitung einrichten. Öffnen Sie die Datei /etc/systcl.conf file:
sudo vi /etc/sysctl.conf
Entfernen Sie das Kommentarzeichen # in der folgenden Zeile (Zeile 28):
net.ipv4.ip_forward=1
Speichern und schließen Sie die Datei (Esc, :w (Enter), :q (Enter)).
7. Aktivieren Sie die IP-Weiterleitung, indem Sie den folgenden Befehl ausführen:
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
8. Nun installieren wir iptables und fügen Firewall-Regeln hinzu. Führen Sie die folgenden Befehle nacheinander aus:
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. Prüfen Sie, ob die Änderungen übernommen wurden, und speichern Sie die Regeln:
sudo iptables -L -n -v
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
Um diese Regeln nach jedem Neustart automatisch neu zu laden, bearbeiten Sie die Datei /etc/rc.local:
sudo vi /etc/rc.local
Fügen Sie die folgende Zeile vor exit 0 ein:
iptables-restore < /etc/iptables.ipv4.nat
Speichern und schließen Sie die Datei (Esc, :w (Enter), :q (Enter)).
10. Um die Firewall-Einstellungen zu prüfen, führen Sie
route
aus. Die Routing-Tabelle sollte wie folgt aussehen:
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
Nun können Sie in der SEW OrchestrationSuite prüfen, ob die Verbindung zum Gateway hergestellt wurde und ob die PLC verbunden ist.