Files
michaelschiemer/docs/deployment/VPN-ROUTING-FIX-GUIDE.md

144 lines
3.5 KiB
Markdown

# VPN Routing Fix - Schritt-f?r-Schritt Anleitung
## Problem
Traefik sieht die ?ffentliche Client-IP (`89.246.96.244`) statt der VPN-IP (`10.8.0.7`). Der Traffic l?uft nicht ?ber VPN.
## L?sung: DNS auf VPN-DNS setzen
### Schritt 1: Pr?fe aktuelle DNS-Konfiguration
**Linux/Mac:**
```bash
cat /etc/resolv.conf
# Oder
resolvectl status
```
**Windows:**
```powershell
Get-DnsClientServerAddress | Select-Object InterfaceAlias, ServerAddresses
```
**Was du suchst:**
- Sollte `10.8.0.1` enthalten (VPN-DNS) ?
- Falls nicht ? DNS verwendet ?ffentliche Server ?
### Schritt 2: Teste DNS-Aufl?sung
```bash
# Teste normale DNS-Aufl?sung
dig +short grafana.michaelschiemer.de
# Oder
nslookup grafana.michaelschiemer.de
# Falls das 94.16.110.151 zur?ckgibt ? Problem!
# Sollte 10.8.0.1 zur?ckgeben
```
```bash
# Teste DNS-Aufl?sung ?ber VPN-DNS
dig +short grafana.michaelschiemer.de @10.8.0.1
# Sollte zur?ckgeben: 10.8.0.1 ?
```
### Schritt 3: Pr?fe WireGuard-Config
?ffne deine WireGuard-Config-Datei und pr?fe:
```
[Interface]
PrivateKey = ...
Address = 10.8.0.7/24
DNS = 10.8.0.1 # ? DIESE ZEILE MUSS DA SEIN!
```
**Falls `DNS = 10.8.0.1` NICHT vorhanden ist:**
1. ?ffne deine WireGuard-Config
2. F?ge hinzu: `DNS = 10.8.0.1` unter `[Interface]`
3. Speichere die Datei
4. Starte WireGuard neu (trenne und verbinde VPN neu)
### Schritt 4: WireGuard neu starten
1. **Trenne** die VPN-Verbindung
2. **Starte** sie neu
3. **Pr?fe** ob DNS jetzt `10.8.0.1` ist
**Linux/Mac:**
```bash
# Pr?fe ob DNS jetzt gesetzt ist
cat /etc/resolv.conf | grep 10.8.0.1
```
**Windows:**
```powershell
Get-DnsClientServerAddress | Select-Object InterfaceAlias, ServerAddresses
# Sollte 10.8.0.1 zeigen
```
### Schritt 5: DNS erneut testen
```bash
# Teste DNS-Aufl?sung (ohne @10.8.0.1)
dig +short grafana.michaelschiemer.de
# Sollte jetzt zur?ckgeben: 10.8.0.1 ?
```
### Schritt 6: Browser testen
1. **Browser-Cache leeren** (oder Inkognito-Modus verwenden)
2. ?ffne: `https://grafana.michaelschiemer.de`
3. Sollte funktionieren, wenn DNS auf `10.8.0.1` zeigt
### Schritt 7: Pr?fe ob Traffic ?ber VPN kommt
Nach dem Fix k?nnen wir pr?fen, ob Traffic ?ber VPN kommt:
```bash
# Auf dem Server (ich kann das f?r dich pr?fen)
ssh deploy@94.16.110.151
cd ~/deployment/stacks/traefik
tail -5 logs/access.log | grep grafana | grep -oP '"ClientHost":"[^"]*"'
```
**Erwartet:**
- **Mit VPN**: `"ClientHost":"10.8.0.7"` (VPN-IP) ?
- **Ohne VPN**: Keine Logs oder 403-Fehler ?
## Alternative: Hosts-Datei verwenden (TEMPOR?R)
Falls DNS nicht automatisch funktioniert, kannst du tempor?r die Hosts-Datei verwenden:
**Linux/Mac:**
```bash
echo "10.8.0.1 grafana.michaelschiemer.de" | sudo tee -a /etc/hosts
```
**Windows:**
```
# C:\Windows\System32\drivers\etc\hosts (als Administrator bearbeiten)
10.8.0.1 grafana.michaelschiemer.de
```
**Hinweis:** Das ist nur eine tempor?re L?sung. DNS sollte langfristig funktionieren.
## Nach dem Fix: Tempor?re IP-Erlaubnis entfernen
Sobald der Traffic ?ber VPN l?uft (Traefik sieht `10.8.0.7` statt `89.246.96.244`), k?nnen wir die tempor?re IP-Erlaubnis entfernen:
```bash
cd deployment/ansible
ansible-playbook -i inventory/production.yml playbooks/remove-temporary-grafana-ip.yml
```
## Hilfe
Falls du bei einem Schritt Hilfe brauchst, teile mir mit:
- Welches Betriebssystem verwendest du? (Linux/Mac/Windows)
- Was zeigt `cat /etc/resolv.conf` (Linux/Mac) oder `Get-DnsClientServerAddress` (Windows)?
- Was zeigt `dig +short grafana.michaelschiemer.de`?
Dann kann ich dir gezielt helfen!