AllowedIPs-Option in der WireGuard-Konfiguration

Die AllowedIPs-Option in der WireGuard-Konfiguration ist ein sehr wichtiger Bestandteil, da sie steuert, welche IP-Adressen durch den VPN-Tunnel geleitet werden und welche über das normale Netzwerk laufen. Es beeinflusst sowohl den Client als auch den Server.

Was sind AllowedIPs?

  • Client-seitig: Die AllowedIPs-Angabe auf dem Client steuert, welche IP-Adressen (oder IP-Bereiche) durch den VPN-Tunnel zum Server geschickt werden sollen. Der Rest des Netzwerkverkehrs wird über das normale Netzwerk des Clients geleitet.
  • Server-seitig: Die AllowedIPs-Angabe auf dem Server definiert, welche IP-Adressen der Client verwenden darf und welche Anfragen der Server vom Client annehmen wird. Es dient also gleichzeitig als Zugriffsregel.

Funktionsweise von AllowedIPs:

  1. Routensteuerung: Wenn eine IP-Adresse oder ein IP-Bereich in AllowedIPs eingetragen ist, bedeutet das, dass alle Datenpakete, die an diese Adressen geschickt werden sollen, über den WireGuard-Tunnel laufen.
  2. Firewall-Regel: AllowedIPs funktioniert auf dem Server gleichzeitig wie eine Firewall-Regel, die den Zugang auf bestimmte IP-Adressen beschränkt. Nur Pakete, die zu den in AllowedIPs genannten Adressen gehören, werden durch den Tunnel erlaubt.

Client-Konfiguration:

In der Konfiguration des Clients steuerst du, welcher Traffic über den VPN gesendet wird.

Beispiel einer Client-Konfiguration:

[Interface]
PrivateKey = CLIENT_PRIVATE_KEY
Address = 10.0.0.2/24 # Lokale VPN-IP des Clients
DNS = 1.1.1.1

[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = SERVER_IP:51820
AllowedIPs = 0.0.0.0/0 # Leitet den gesamten Internetverkehr durch den VPN

Erklärung:

  • AllowedIPs = 0.0.0.0/0: Schickt den gesamten Datenverkehr durch den VPN. Dies ist die Konfiguration für einen „Voll-Tunnel“ (Full Tunnel), bei dem alles über den VPN geht.

Server-Konfiguration:

Auf der Server-Seite definieren die AllowedIPs, von welchen IP-Bereichen oder Clients der Server Traffic akzeptiert.

Beispiel einer Server-Konfiguration:

[Interface]
PrivateKey = SERVER_PRIVATE_KEY
Address = 10.0.0.1/24 # Lokale VPN-IP des Servers
ListenPort = 51820

[Peer]
PublicKey = CLIENT_PUBLIC_KEY
AllowedIPs = 10.0.0.2/32 # Akzeptiert Traffic vom Client mit dieser IP

Erklärung:

  • AllowedIPs = 10.0.0.2/32:
    Der Server akzeptiert nur Traffic vom Client mit der IP 10.0.0.2. Diese Regel sorgt dafür, dass der Server nur Pakete vom spezifischen Client akzeptiert.

Beispiele für unterschiedliche AllowedIPs-Szenarien:

  1. Nur lokales VPN-Netzwerk routen (ohne Internet):
    Wenn du nur den Traffic zu internen Netzwerkadressen (z.B. anderen VPN-Clients) über den VPN schicken möchtest, dann kannst du dies in den AllowedIPs spezifizieren.

    Client-Konfiguration:

AllowedIPs = 10.0.0.0/24 # Nur das lokale VPN-Netzwerk über den VPN

2. Nur bestimmte IPs oder Subnetze über den VPN schicken:
Wenn du nur bestimmten Internetverkehr (z.B. zu einer bestimmten Website) durch den VPN schicken willst:

Client-Konfiguration:

AllowedIPs = 123.45.67.89/32 # Nur zu dieser IP über den VPN

  1. **Split Tunneling für bestimmte Subnetze (Internet und lokales Netzwerk getrennt):**

Wenn du beispielsweise möchtest, dass nur der Traffic zu einem bestimmten Subnetz oder einer Region über den VPN geleitet wird, während der Rest des Traffics das normale Netzwerk nutzt, kannst du dies ebenfalls über AllowedIPs steuern.

Client-Konfiguration für Split Tunneling:

[Interface]
PrivateKey = CLIENT_PRIVATE_KEY
Address = 10.0.0.2/24 # Lokale VPN-IP des Clients
DNS = 1.1.1.1 # Optional

[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = SERVER_IP:51820
AllowedIPs = 10.0.0.0/24, 192.168.1.0/24 # Schickt nur das lokale VPN-Netzwerk und das Heimnetzwerk (z.B. 192.168.1.0/24) durch den VPN

In diesem Beispiel wird der Traffic zu IP-Adressen im 10.0.0.0/24-Bereich (internes VPN-Netzwerk) und im 192.168.1.0/24-Bereich (z.B. dein Heimnetzwerk) durch den VPN geschickt, aber alles andere geht durch das normale Netzwerk.

Tipps für die Verwendung von AllowedIPs:

  • 0.0.0.0/0: Wird genutzt, um den gesamten Verkehr (inkl. Internet und LAN) durch den VPN zu leiten. Verwende dies für Full Tunnel VPNs.
  • Spezifische IPs oder Subnetze: Ermöglichen dir, feiner zu steuern, welche Netzwerke durch den VPN geroutet werden. Perfekt für Split Tunneling, wenn nur bestimmte Daten über den VPN laufen sollen.
  • Mehrere AllowedIPs: Du kannst mehrere IP-Bereiche durch Komma getrennt angeben, um verschiedene Netzwerke gleichzeitig zu routen.

Mit diesen AllowedIPs-Einstellungen kannst du genau festlegen, welche Netzwerke und IP-Bereiche durch den VPN-Tunnel geschickt werden und welche nicht.

Über Raffael Haberland 21 Artikel
Ich habe Informatik an der Technischen Universität Darmstadt sowie Wirtschaftswissenschaften an der Universität Heidelberg studiert. Derzeit bin ich als Testmanager in der Testautomation und Softwareentwicklung im Telekommunikationssektor tätig. Mein Fokus liegt auf der Bewertung von Prototypen sowie der Qualitätssicherung und Optimierung von Prozessen, insbesondere durch die Entwicklung und Implementierung automatisierter Tests.

Ersten Kommentar schreiben

Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht.


*