Przyspiesz OpenVPN i uzyskaj większą prędkość na swoim kanale
OpenVPN to dobrze znany klient VPN do bezpiecznego zdalnego dostępu lub wirtualnej sieci prywatnej. Jeśli korzystasz z OpenVPN i doświadczasz niskiej prędkości na jego kanale, możesz się denerwować. Ten problem jest bardzo powszechny dla wszystkich użytkowników OpenVPN. Podczas gdy ogólna rada, którą można znaleźć w Internecie, dotyczy dostosowania wartości MTU (maksymalnej jednostki transmisji) i/lub parametrów MSSFIX, oto kolejna sztuczka, którą powinieneś wypróbować. Może pomóc znacznie poprawić przepustowość. Oto, czego powinieneś spróbować.
Otwórz swoje serwer.conf (zobacz katalog instalacyjny OpenVPN w Windows i /etc/openvpn w linux) i dodaj te dwie linie:
sndbuf 0. rcvbuf 0
Uniemożliwi to OpenVPN dostrojenie rozmiaru bufora między serwerem a klientem. Będzie to określone przez system operacyjny. Użytkownicy systemu Windows, którzy łączą się z serwerem Linux, będą mieli większe prędkości.
Teraz dodaj te same linie do swojego plik konfiguracyjny klienta (*.ovpn lub *.conf). Jeśli z jakiegoś powodu nie jest to możliwe, np. Twój komputer kliencki nie jest dostępny, umieść następujące dodatkowe linie w swoim
serwer.conf plik:sndbuf 0. rcvbuf 0. naciśnij "sndbuf 393216" naciśnij "rcvbuf 393216"
OpenVPN przez UDP
Jeśli korzystasz z OpenVPN przez UDP, możesz uzyskać lepsze wrażenia, ustawiając stałe wartości buforów. Wypróbuj te linie:
sndbuf 393216. rcvbuf 393216. naciśnij "sndbuf 393216" naciśnij "rcvbuf 393216"
Przyczyny spowolnienia
Być może zastanawiasz się, dlaczego i jak działają te poprawki? Odwołajmy się do historii OpenVPN. W roku 2004 OpenVPN miał problem z różnymi rozmiarami buforów na różnych platformach. Aby ujednolicić kanał przesyłania danych, programiści ustawili stałe bufory na 64 KB. Spowodowało to jednak zupełnie dziwne problemy z MTU dla wszystkich adapterów w systemie Windows. Aby to naprawić, programiści zakodowali te wiersze, które działają na serwerach i klientach innych niż Windows:
#ifndef WIN32 o->rcvbuf = 65536; o->sndbuf = 65536; #endif
Te wiersze są nadal prezentowane w kodzie źródłowym OpenVPN, więc dlatego otrzymujemy spowolnienie! Dodatkowo możesz spróbować poeksperymentować z parametrami MTU i MSSFIX, jeśli wiesz co robisz.
Wypróbuj te linie w swojej konfiguracji:
tun-mtu 1400 mssfix 1360
W najczęstszym przypadku MTU na fizycznym interfejsie wynosi 1500, więc lepiej ustawić OpenVPN TUN MTU na wartość niższą niż rzeczywiste MTU, a MSSFIX na MTU-40, jak w powyższym przykładzie.
Mam nadzieję, że ten artykuł był dla Ciebie pomocny. Podziel się wynikami prędkości, jeśli zauważyłeś znaczną poprawę (poprzez habr).