Zrýchlite OpenVPN a získajte vyššiu rýchlosť na svojom kanáli
OpenVPN je známy klient VPN pre bezpečný vzdialený prístup alebo virtuálne privátne siete. Ak používate OpenVPN a zaznamenáte nízku rýchlosť na jeho kanáli, môžete byť naštvaní. Tento problém je veľmi bežný pre všetkých používateľov OpenVPN. Zatiaľ čo všeobecná rada, ktorú môžete nájsť na internete, je upraviť hodnotu MTU (maximálna prenosová jednotka) a/alebo parametre MSSFIX, tu je ďalší trik, ktorý by ste mali vyskúšať. Môže vám to pomôcť výrazne zlepšiť šírku pásma. Tu je to, čo by ste mali vyskúšať.
Otvor tvoj server.conf súbor (pozri inštalačný adresár OpenVPN vo Windowse a /etc/openvpn v linuxe) a pridajte tieto dva riadky:
sndbuf 0. rcvbuf 0
Toto zabráni OpenVPN v ladení veľkosti vyrovnávacej pamäte medzi serverom a klientom. Určí to OS. Používatelia systému Windows, ktorí sa pripájajú k serveru Linux, zažijú vyššiu rýchlosť.
Teraz pridajte rovnaké riadky do svojho konfiguračný súbor klienta (*.ovpn alebo *.conf). Ak to z nejakého dôvodu nie je možné, napr. váš klientsky počítač nie je prístupný, vložte do neho nasledujúce ďalšie riadky server.conf súbor:
sndbuf 0. rcvbuf 0. push "sndbuf 393216" push "rcvbuf 393216"
OpenVPN cez UDP
Ak používate OpenVPN cez UDP, môžete získať lepší zážitok nastavením pevných hodnôt vyrovnávacej pamäte. Skúste tieto riadky:
sndbuf 393216. rcvbuf 393216. push "sndbuf 393216" push "rcvbuf 393216"
Príčiny spomalenia
Možno sa pýtate, prečo a ako tieto vylepšenia fungujú? Pozrime sa na históriu OpenVPN. V roku 2004 mala OpenVPN problém s rôznymi veľkosťami vyrovnávacej pamäte na rôznych platformách. Na zjednotenie kanála prenosu údajov vývojári nastavili pevné vyrovnávacie pamäte na 64 kb. To však spôsobilo úplne zvláštne problémy s MTU pre všetky adaptéry v systéme Windows. Aby to vývojári napravili, napevno zakódovali tieto riadky, ktoré fungujú pre servery a klientov bez systému Windows:
#ifndef WIN32 o->rcvbuf = 65536; o->sndbuf = 65536; #koniec Ak
Tieto riadky sú stále uvedené v zdrojovom kóde OpenVPN, preto dochádza k spomaleniu! Okrem toho môžete skúsiť experimentovať s parametrami MTU a MSSFIX, ak viete, čo robíte.
Skúste to pomocou týchto riadkov vo vašej konfigurácii:
tun-mtu 1400 mssfix 1360
V najbežnejšom prípade je MTU na fyzickom rozhraní 1500, takže je lepšie nastaviť OpenVPN TUN MTU na hodnotu nižšiu ako je skutočná MTU a MSSFIX na MTU-40, ako v príklade vyššie.
Dúfam, že tento článok bol pre vás užitočný. Podeľte sa o svoje výsledky rýchlosti, ak ste zaznamenali výrazné zlepšenie (cez habr).