WireGuard: split-tunnel, czyli jak nie stracić internetu po włączeniu VPN
Typowy scenariusz: masz tunel WireGuard do sieci firmowej albo domowej, włączasz go — i nagle cały internet przestaje działać. Strony się nie ładują, a przez tunel dociągasz tylko to, co jest po drugiej stronie. To nie awaria: to pełny tunel (full tunnel). Cały Twój ruch, łącznie z Google i YouTube, jest wpychany do zdalnej sieci — a jeśli ona nie daje wyjścia do internetu, tracisz łączność.
Rozwiązanie to split-tunnel: przez VPN puszczamy tylko ruch do konkretnej zdalnej podsieci, a cały pozostały ruch (internet) zostaje na Twoim normalnym łączu. Decyduje o tym jeden parametr: AllowedIPs.
Dlaczego AllowedIPs = 0.0.0.0/0 zabiera internet
W konfiguracji WireGuard sekcja [Peer] ma pole AllowedIPs. Wbrew nazwie robi ono dwie rzeczy: definiuje, jakie adresy są trasowane do tunelu. Gdy ustawisz:
[Peer]
AllowedIPs = 0.0.0.0/0
mówisz „wszystko (0.0.0.0/0 = cały internet) kieruj do tunelu". WireGuard dopisuje trasę domyślną przez VPN. Jeśli zdalny peer nie robi NAT/maskarady do internetu, Twój ruch nie ma jak wyjść — stąd „brak internetu".
Rozwiązanie: wpisz tylko zdalną podsieć
Zamiast całego świata podaj konkretną sieć, do której naprawdę chcesz mieć dostęp. Przykład — chcesz sięgać tylko do zdalnej sieci 172.16.21.0/24:
[Peer]
PublicKey = <klucz_serwera>
Endpoint = vpn.twojafirma.pl:51820
AllowedIPs = 172.16.21.0/24
PersistentKeepalive = 25
Od teraz przez tunel idzie wyłącznie ruch do 172.16.21.0/24, a przeglądanie internetu, streaming i wszystko inne zostaje na Twoim łączu. Możesz podać kilka podsieci po przecinku:
AllowedIPs = 172.16.21.0/24, 10.50.0.0/16, 192.168.50.0/24
AllowedIPs = 0.0.0.0/0 „ubijał" internet na komputerze, bo zdalna sieć nie dawała wyjścia do sieci publicznej. Zmiana na samą podsieć docelową (np. 172.16.21.0/24) = split-tunnel: internet zostaje na łączu lokalnym, a zdalne zasoby są osiągalne.
Gdzie to zmienić na Windows
W kliencie WireGuard dla Windows konfiguracje są szyfrowane (DPAPI) w C:\Program Files\WireGuard\Data\Configurations — nie edytuj tych plików wprost. Zamiast tego:
- Otwórz aplikację WireGuard.
- Wybierz tunel po lewej → Edit (Edytuj).
- Znajdź linię
AllowedIPsw sekcji[Peer]i zmień na docelową podsieć. - Save, a następnie dezaktywuj i aktywuj tunel ponownie.
A co z DNS?
Przy split-tunnelu często chcesz, żeby nazwy z zdalnej sieci rozwiązywał jej DNS, a reszta szła normalnie. Jeśli w konfiguracji jest DNS = <ip_zdalnego_dns>, WireGuard na Windows potrafi kierować wszystkie zapytania DNS do tunelu. Gdy Ci to przeszkadza (np. psuje lokalne rozwiązywanie), usuń wpis DNS z konfiguracji i korzystaj z lokalnego resolvera, a do zdalnych hostów odwołuj się po IP lub dodaj wpisy do pliku hosts.
Router z WireGuard albo tani VPS
Własny serwer VPN postawisz na routerze MikroTik (RouterOS ma WireGuard wbudowany) albo na najtańszym VPS-ie. Do zdalnego dostępu do domu router jest wygodniejszy — endpoint jest zawsze w tej samej sieci.
Zobacz routery i VPS pod VPN ›Podsumowanie
AllowedIPs = 0.0.0.0/0= pełny tunel — cały ruch idzie przez VPN i znika internet, jeśli peer nie daje wyjścia.- Wpisz tylko zdalne podsieci (np.
172.16.21.0/24) = split-tunnel — internet zostaje lokalnie. - Na Windows edytuj przez GUI WireGuard (pliki są szyfrowane DPAPI).
- Jeśli DNS w tunelu psuje lokalne rozwiązywanie — usuń wpis
DNSz konfiguracji.