Benutzer-Werkzeuge

Webseiten-Werkzeuge


tachtler:archlinux_-_ip_forward_router

ArchLinux - ip_forward - Router

Die Konfiguration eines Linux-Servers als Router ermöglicht es, z.B. eine Internet-Verbindung, welche an einem Server besteht, mit weiteren Servern im Netzwerk zu teilen, ohne das jeder einzelne Server eine eigene Verbindung in das Internet selbst herstellen muss.

Als Beispiel sollen hier ein Server als Router konfiguriert werden und ein weiterer Server die Internet-Verbindung des Routers nutzen:

 /\/\/\/\/\/\     +--------------------------+     +-------------------------------------------------+
 | Internet | <-- | net1 <-> Router <-> net0 | <-- | net0 <-> Server ohne eigene Internet Verbindung |   
 \/\/\/\/\/\/     +--------------------------+     +-------------------------------------------------+

Ab hier werden root-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um der Benutzer root zu werden, geben Sie bitte nachfolgenden Befehl ein:

$ su -
Password: 

/etc/sysctl.d/30-ipforward.conf

Damit der Server, welcher als Router fungieren soll, auch in die Lage versetzt werden kann, dass dieser auch den Netzwerkverkehr eines anderen Servers im Netzwerk forwarden (durch reichen) kann, ist es erforderlich eine Konfigurationsdatei unter nachfolgendem Pfad mit nachfolgendem Namen

  • /etc/sysctl.d/30-ipforward.conf

im Dateisystem zu erstellen und mit nachfolgendem Inhalt zu versehen:

net.ipv4.ip_forward=1
net.ipv6.conf.default.forwarding=1
net.ipv6.conf.all.forwarding=1

/etc/iptables/iptables.rules

Damit der Server, welcher als Router fungieren soll, auch das Routing im Netzwerk durchführen kann, sind nachfolgende Firewall-Regeln zwingend erforderlich, auch wenn bis dato noch keine Firewallregeln konfiguriert wurden.

Nachfolgende Regeln können durch nachfolgende Befehle gesetzt werden:

  • # iptables -t nat -A POSTROUTING ! -d 192.168.122.0/24 -o net1 -j SNAT --to-source 192.168.122.1

Aktivieren des SNAT Mechanismus, damit die IP-Adresse des Servers, welcher als Router fungieren soll, als Absendeadresse für den dahinter liegenden Server verwendet wird und nicht dessen eigene IP-Adresse.

:!: WICHTIG - Persistieren der neuen Regeln!

Nachfolgender Befehl speichert die neuen Firewallregeln zusammen mit ggf. bereits vorhandenen Firewallregeln:

# iptables-save > /etc/iptables/iptables.rules

Ein Test, ob die neuen Firewallregeln gespeichert wurden, kann durch Laden der zuvor gespeicherten Regeln mit nachfolgendem Befehl erfolgen:

# iptables-restore /etc/iptables/iptables.rules

Ein minimaler Firewallregelsatz könnte wie in nachfolgendem Beispiel gezeigt aussehen:

  • /etc/iptables/iptables.rules
# Generated by iptables-save v1.8.5 on Mon Sep  7 12:31:03 2020
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING ! -d 192.168.122.0/24 -o net1 -j SNAT --to-source 192.168.122.10
COMMIT
# Completed on Mon Sep  7 12:31:03 2020
Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
tachtler/archlinux_-_ip_forward_router.txt · Zuletzt geändert: 2021/09/08 16:03 von klaus