pppd+poptop+mppe vs MS pptp client anebo vitezstvi rozumu nad instinktamy
Q: Pripojim se na vpn v pohode, bez problemu si stahuji soubory, jenze nemuzu je pak nahrat zpet. Proste to stuhne. Cim to je?
A: V kostce, muze to byt zpusobeno dvema vecma: a) chyba v mppe modulu b) tezka fragmentace paketu, zpusobena spatnym nastavenim MTU.
a) Jestli to je nebo neni mppeckem zjistime tak, ze mppe compresi docasne vypneme. Pokud vsechno se rozebehlo, hura. V /etc/ppp/options.pptd pridame "kdebug 7", v /etc/syslog.conf povolime logovani jadra do nejakeho souboru (treba, kern.* /var/log/kernel.log) a do toho logu se pozorne podivame. Pokud to nam napise neco jako :"mppe_decompress[1]: osize too small! (have: 1400 need: 1401)", vime, ze je to bug v jadru, ktery neni opraven ani v 2.6.21. Muzeme to vyresit dvema zpusoby: 1) spravny 2) rychly. 1) patchneme jadro timto patchem, make modules && make modules_install, proste normalka. 2) Pustime regedit na stanici, ze ktere se pripojujeme a pridame do HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NdisWan\Parameters\0 klic TunnelMTU typu DWORD o hodnote decimal neco kolem 1300 (muzeme si s tim pohrat, ale 1300 funguje v poho). Vice tady.
b) nefunguje to nam ani po vypnuti mppe. V tomto pripade evidentne za to muze pripojeni, ktere ma MTU po ceste nizsi, nez my chceme nebo se pripojujeme pomoci dalsiho ppp spojeni, ktere ma v XP defaultne nastavene MTU na 1400, coz samozrejme znamena, ze MTU/MRU pro VPN nemuze byt potom vetsi nez neco kolem 1350 (1300 je dobre vyzkousena funkcni hodnota, drzme se ji (:biggrin:)). Dost dobre se o tom pise tady a tady. Jak se da nastavit? 1) v /etc/ppp/options.pptpd pridame "mtu 1300" a "mru 1300" nebo do HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NdisWan\Parameters\0 pridame.... Spravne, to same, co v predchozim bode.
Az se ujistime, ze nam vsechno zacalo fungovat spravne, nezapominame zase povolit sifrovani a vypnout zbytecne debugovani v syslog.conf a options.pptpd
PS. Toto cele se tyka samozrejme jakychkoliv jinych ppp spojeni, nejen pptp.