Routing: Weiterrouten von IPs auf lokale IPs

Von Lars Gremme Juli 8, 2018

IPv4:

In der /etc/network/interfaces unter vmbr0: Aktivieren des Masqurade-Funktion, sodass Pakete auf diesem Subnetz ins Internet geroutet werden können. Dazu bekommt der Server mit der Routing-Funktion eine interne IP.

sysctl -w net.ipv4.conf.enp4s0.forwarding=1
sysctl -w net.ipv4.conf.vmbr0.forwarding=1
sysctl -w net.ipv4.conf.all.forwarding=1
post-up iptables -t nat -A POSTROUTING -s '192.168.0.0/24' -o enp4s0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '192.168.0.0/24' -o enp4s0 -j MASQUERADE

Aufbau eines Destination-NAT, um auf der Routing-IP einzelne Dienste an einen weiteren Server zu erlauben. In diesem Beispiel wird der Port 1194 von der Haupt-IP auf die interne IP weitergeleitet.

post-up iptables -t nat -A PREROUTING -i enp4s0 -p udp -d <Haupt-IP>/32 --dport 1194 -j DNAT --to 192.168.0.254:1194
post-down iptables -t nat -D PREROUTING -i enp4s0 -p udp -d <Haupt-IP>/32 --dport 1194 -j DNAT --to 192.168.0.254:1194

zusätzliche IP-Adressen:

up ip route add <zusätzliche IP>/32 via 192.168.0.254
down ip route del <zusätzliche IP>/32 via 192.168.0.254

Im Router muss folgendes eingetragen werden, insofern es sich nicht um einen Provider handelt: IPv4 Route für Routing innerhalb des Privaten Bereichs, bei Hetzner ist das bereits so angelegt.

Konfiguration des Routings auf einem Router, der dem Server vorgeschaltet ist:

192.168.178.55 255.255.255.255 192.168.178.206
IP-Adresse       BRD-Maske    Zieladresse (GW)

IPv6:

In der /etc/network/interfaces unter vmbr0:

Hinzufügen einer lokalen IP-Adresse auf dem Routing-Server:

ip addr add fd00:0:0:fe00::1/64 dev vmbr0 scope global

Aktivieren des Masqurade-Funktion, sodass Pakete auf diesem Subnetz ins Internet geroutet werden können. Dazu bekommt der Server mit der Routing-Funktion eine interne IP.

sysctl -w net.ipv6.conf.all.forwarding=1
post-up ip6tables -t nat -A POSTROUTING -s 'fd00:0:0:fe00::/64' -o enp4s0 -j MASQUERADE
post-down ip6tables -t nat -D POSTROUTING -s 'fd00:0:0:fe00::/64' -o enp4s0 -j MASQUERADE

Routing für für eine öffentliche IP über eine private IP.

ip -6 route add 2a01:4f8:161:54cc::2/64 via fd00:0:0:fe00::fe dev vmbr0