WireGuard-AllowedIPs-Rechner
WireGuard kennt keine Einstellung „ausschließen“: Um alles außer deinem LAN oder einer Adresse zu tunneln, muss AllowedIPs alle anderen Netze aufzählen. Gib an, was der Tunnel transportieren und was er auslassen soll, und erhalte die exakte AllowedIPs-Zeile, einen fertigen [Peer]-Block und die Befehle zum Prüfen der Routen. Alles läuft in deinem Browser.
Läuft vollständig in deinem Browser. Nichts, was du eingibst, verlässt die Seite.
Meist 0.0.0.0/0, ::/0 (alles). Für einen Tunnel, der nur ein entferntes Netz erreicht, trage dieses Netz ein, zum Beispiel 10.0.0.0/24. Trenne Einträge mit Kommas, Leerzeichen oder Zeilenumbrüchen.
Dein LAN, private Bereiche oder einzelne Adressen (eine einzelne IP zählt als /32 oder /128).
Wird nach den Ausnahmen wieder hinzugefügt. Trage hier das Subnetz deines WireGuard-Tunnels ein, wenn es in einem ausgeschlossenen Bereich liegt.
Eine IP-Adresse, kein Hostname. Sie wird als einzelne Adresse ausgeschlossen, was die Routing-Schleife unter Linux verhindert.
- Unter Linux mit wg-quick schickt eine Liste ohne /0, die die öffentliche IP des Servers abdeckt, die verschlüsselten Pakete in den Tunnel. Trage oben die Server-IP ein, um sie auszuschließen.
Ergebnis
AllowedIPs = 0.0.0.0/1, 128.0.0.0/2, 192.0.0.0/9, 192.128.0.0/11, 192.160.0.0/13, 192.168.0.0/24, 192.168.2.0/23, 192.168.4.0/22, 192.168.8.0/21, 192.168.16.0/20, 192.168.32.0/19, 192.168.64.0/18, 192.168.128.0/17, 192.169.0.0/16, 192.170.0.0/15, 192.172.0.0/14, 192.176.0.0/12, 192.192.0.0/10, 193.0.0.0/8, 194.0.0.0/7, 196.0.0.0/6, 200.0.0.0/5, 208.0.0.0/4, 224.0.0.0/3, ::/0
[Peer]
PublicKey = <server public key>
Endpoint = SERVER_PUBLIC_IP:51820
AllowedIPs = 0.0.0.0/1, 128.0.0.0/2, 192.0.0.0/9, 192.128.0.0/11, 192.160.0.0/13, 192.168.0.0/24, 192.168.2.0/23, 192.168.4.0/22, 192.168.8.0/21, 192.168.16.0/20, 192.168.32.0/19, 192.168.64.0/18, 192.168.128.0/17, 192.169.0.0/16, 192.170.0.0/15, 192.172.0.0/14, 192.176.0.0/12, 192.192.0.0/10, 193.0.0.0/8, 194.0.0.0/7, 196.0.0.0/6, 200.0.0.0/5, 208.0.0.0/4, 224.0.0.0/3, ::/0
PersistentKeepalive = 25
# Was der Peer erfasst, so wie es im Kernel geladen ist
sudo wg show wg0 allowed-ips
# Eine ausgeschlossene Adresse: darf NICHT über die WireGuard-Schnittstelle gehen
ip route get 192.168.1.10
# Eine getunnelte Adresse: muss über die WireGuard-Schnittstelle gehen
ip route get 1.1.1.1
Split-Tunneling ist präzise auf einem Server, den du kontrollierst
Auf deinem eigenen WireGuard-Server bestimmst du jeden Bereich, der hindurchgeht, die Endpoint-Adresse ändert sich nie, und sie auszuschließen ist eine Zeile. Der Einstiegs-VPS von Contabo enthält eine öffentliche IPv4-Adresse und vollen Root-Zugriff.
Affiliate-Link: Wir erhalten eventuell eine Provision, ohne Mehrkosten für dich. Der Rechner bleibt kostenlos und hängt nicht davon ab.
Warum aus einer Ausnahme zwei Dutzend Zeilen werden
AllowedIPs erledigt zwei Aufgaben zugleich: Es ist die Liste der Ziele, die der Client in den Tunnel schickt, und die Liste der Quelladressen, die er vom Peer annimmt. Beides wird in CIDR-Blöcken geschrieben, und ein CIDR-Block ist immer ein Bereich mit Zweierpotenz-Größe, ausgerichtet an seiner eigenen Größe. Wer ein /24 aus dem gesamten IPv4-Raum herausschneidet, behält deshalb einen Block für jedes Bit zwischen /0 und /24: 24 Präfixe. Das ist kein Fehler der Ausgabe, sondern die kürzeste exakte Antwort.
Alles außer 192.168.1.0/24, IPv6 weiterhin vollständig im Tunnel:
AllowedIPs = 0.0.0.0/1, 128.0.0.0/2, 192.0.0.0/9, 192.128.0.0/11, 192.160.0.0/13, 192.168.0.0/24, 192.168.2.0/23, 192.168.4.0/22, 192.168.8.0/21, 192.168.16.0/20, 192.168.32.0/19, 192.168.64.0/18, 192.168.128.0/17, 192.169.0.0/16, 192.170.0.0/15, 192.172.0.0/14, 192.176.0.0/12, 192.192.0.0/10, 193.0.0.0/8, 194.0.0.0/7, 196.0.0.0/6, 200.0.0.0/5, 208.0.0.0/4, 224.0.0.0/3, ::/0Unter Linux hält wg-quick die Routen des direkt verbundenen LANs im Full-Tunnel-Modus bereits nutzbar, über seine Regel suppress_prefixlength 0. Eine ausdrückliche Ausnahme zählt vor allem unter Android und iOS, unter Windows, wenn du für den lokalen Zugriff auf den Kill-Switch verzichtest, für Netze, die nicht direkt verbunden sind (ein zweites Subnetz hinter dem Router), und für öffentliche Adressen, die du außerhalb des VPN erreichen willst, etwa eine Bank, die VPN-Ausgänge sperrt.
Bereiche, die üblicherweise ausgeschlossen werden
Schließe nur aus, was du brauchst: Jeder ausgelassene Bereich ist Verkehr, der den Tunnel ungeschützt verlässt. Hier die reservierten Standardbereiche und der Grund, jeden davon auszulassen.
| Bereich | Was es ist | Ausschließen, wenn |
|---|---|---|
| 192.168.1.0/24 | Ein typisches Heim-LAN (prüfe deins) | Du brauchst Drucker, NAS oder Router, während du verbunden bist |
| 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 | Alle privaten IPv4-Bereiche nach RFC 1918 | Du wechselst zwischen Netzen, die du vorher nicht kennst |
| 169.254.0.0/16 | IPv4 Link-Local (RFC 3927) | Selbst adressierte Geräte, oder die Cloud-Metadatenadresse 169.254.169.254 auf einer VM |
| fc00::/7 | IPv6 Unique Local (RFC 4193) | Deine LAN-Geräte nutzen auch IPv6-ULA-Adressen |
| fe80::/10 | IPv6 Link-Local (RFC 4291) | Selten nötig: Routen pro Schnittstelle gewinnen ohnehin |
| 203.0.113.10/32 | Eine öffentliche Adresse (Beispiel) | Ein Dienst, der VPN-Verkehr ablehnt, oder die IP des Servers selbst unter Linux |