110 lines
3.6 KiB
Markdown
110 lines
3.6 KiB
Markdown
# WireGuard Windows Routing - Finale Analyse
|
|
|
|
## Problem best?tigt
|
|
|
|
Trotz aller Ma?nahmen kommt Traffic von Windows **NICHT ?ber VPN**:
|
|
- Traefik sieht: `ClientHost: 89.246.96.244` (?ffentliche IP) ?
|
|
- Erwartet: `ClientHost: 10.8.0.7` (VPN-IP) ?
|
|
|
|
## Was funktioniert
|
|
|
|
? **WireGuard verbunden**: Aktive Verbindung mit latest handshake
|
|
? **Route vorhanden**: `10.8.0.0/24` Route in Windows Route-Tabelle
|
|
? **Ping funktioniert**: `ping 10.8.0.1` erfolgreich
|
|
? **AllowedIPs korrekt**: `10.8.0.0/24` in Client-Config
|
|
? **VPN-Server funktioniert**: Test-Container erfolgreich verbunden
|
|
|
|
## Was nicht funktioniert
|
|
|
|
? **HTTP/HTTPS-Traffic kommt NICHT ?ber VPN**: Windows sendet Traffic ?ber Standard-Interface
|
|
|
|
## Ursache
|
|
|
|
**Windows-spezifisches Routing-Problem**: Windows priorisiert die Standard-Route ?ber das WireGuard-Interface f?r HTTP/HTTPS-Traffic, obwohl:
|
|
- Die Route vorhanden ist
|
|
- Ping funktioniert
|
|
- WireGuard verbunden ist
|
|
|
|
## M?gliche L?sungen
|
|
|
|
### Option 1: Windows Interface-Metrik anpassen
|
|
|
|
```powershell
|
|
# Als Administrator
|
|
# WireGuard Interface-Index finden
|
|
Get-NetAdapter | Where-Object {$_.Name -like "*grafana-test*" -or $_.Name -like "*WireGuard*"} | Select-Object Name, InterfaceIndex
|
|
|
|
# Interface-Metrik auf 1 setzen (h?chste Priorit?t)
|
|
Set-NetIPInterface -InterfaceIndex 18 -InterfaceMetric 1
|
|
|
|
# Pr?fen ob es funktioniert hat
|
|
Get-NetIPInterface -InterfaceIndex 18 | Select-Object InterfaceAlias, InterfaceMetric
|
|
```
|
|
|
|
### Option 2: Route explizit mit Gateway setzen
|
|
|
|
```powershell
|
|
# Als Administrator
|
|
# Entferne alte Route
|
|
route delete 10.8.0.0 MASK 255.255.255.0
|
|
|
|
# Setze Route explizit mit Gateway 10.8.0.1 (nicht "Auf Verbindung")
|
|
route add 10.8.0.0 MASK 255.255.255.0 10.8.0.1 METRIC 1 IF 18
|
|
|
|
# Pr?fe ob es funktioniert hat
|
|
route print | findstr "10.8"
|
|
```
|
|
|
|
### Option 3: Windows Firewall pr?fen
|
|
|
|
Windows Firewall k?nnte VPN-Traffic blockieren:
|
|
|
|
```powershell
|
|
# Als Administrator
|
|
# Pr?fe Firewall-Regeln
|
|
Get-NetFirewallRule | Where-Object {$_.DisplayName -like "*WireGuard*"}
|
|
|
|
# Falls keine Regeln vorhanden: Erlaube WireGuard-Traffic
|
|
New-NetFirewallRule -DisplayName "WireGuard VPN" -Direction Outbound -LocalPort Any -Protocol TCP -Action Allow
|
|
New-NetFirewallRule -DisplayName "WireGuard VPN" -Direction Outbound -LocalPort Any -Protocol UDP -Action Allow
|
|
```
|
|
|
|
### Option 4: WireGuard auf Windows neu installieren
|
|
|
|
1. **WireGuard deinstallieren**
|
|
2. **Neu installieren**: https://www.wireguard.com/install/
|
|
3. **Config neu importieren**
|
|
4. **Verbinden und testen**
|
|
|
|
### Option 5: Alternativer VPN-Client (tempor?r)
|
|
|
|
Falls WireGuard auf Windows weiterhin Probleme macht, k?nntest du tempor?r einen anderen VPN-Client verwenden, um zu pr?fen, ob das Problem Windows-spezifisch ist.
|
|
|
|
## Empfehlung
|
|
|
|
**Option 1 (Interface-Metrik)** ist am einfachsten und sollte zuerst probiert werden.
|
|
|
|
**Option 2 (Route mit Gateway)** ist robuster, k?nnte aber zu Problemen f?hren, falls das Gateway nicht korrekt ist.
|
|
|
|
**Option 3 (Firewall)** sollte auch gepr?ft werden, falls die anderen Optionen nicht helfen.
|
|
|
|
## Testen
|
|
|
|
Nach jeder ?nderung:
|
|
|
|
1. **Pr?fe Route**: `route print | findstr "10.8"`
|
|
2. **Teste Ping**: `ping 10.8.0.1`
|
|
3. **Teste Grafana**: `https://grafana.michaelschiemer.de`
|
|
4. **Pr?fe Logs**: Ich pr?fe dann die Traefik-Logs, ob `ClientHost: 10.8.0.7` erscheint
|
|
|
|
## N?chste Schritte
|
|
|
|
Wenn eine der Optionen funktioniert:
|
|
1. ? Traffic kommt ?ber VPN (`ClientHost: 10.8.0.7`)
|
|
2. ? Tempor?re IP-Erlaubnis entfernen (`89.246.96.244`)
|
|
3. ? Grafana ist nur noch ?ber VPN erreichbar
|
|
|
|
## Dokumentation
|
|
|
|
Alle ?nderungen sollten dokumentiert werden, damit andere Windows-Clients das gleiche Problem l?sen k?nnen.
|