Үй роутеринин артында PPTP эки байланышсыз жол менен иштебей калат, аларды аралаштыруу бүт кечти корот. Бир бузулуу — өткөрүүдөгү боштук: роутер TCP 1723-ти өткөрүп, IP протоколу 47-ни таштайт, ошондуктан кардар 619 катасында токтоп калат. Экинчиси — өлчөм маселеси: туннель көтөрүлөт, аутентификациядан өтөт, анан толук өлчөмдөгү пакет өтүшү керек болгондо тоңуп калат. Кайсынысы бар экенин аныктоо — биринчи чыныгы кадам; калганы сиздин роутериңиз эмнени билдире аларын салыштырат, кайсы бренд жакшы экенин эмес.

Эки ташуучу, жана порту бар болгону бирөө

PPTP эки ташуучуга бөлүнөт: TCP 1723-төгү башкаруу туташуусу жана кеңейтилген GRE-ге оролгон PPP кадрлары, башкача айтканда IP протоколу 47. GRE-де порт номери жок, ошондуктан 1723 портун өткөрүү деп жазылган эреже аны камтый албайт, веб-интерфейс талааны кандай атаса да. Керектөөчү роутер адатта протокол эрежесинин ордуна PPTP өткөрүү деп аталган кутучаны сунуштайт, жана ал кутуча эки ишти аткарат: 47 протоколун өрт дубалынан өткөрөт жана NAT-га GRE агымын көзөмөлдөөнү үйрөтөт. Linux роутеринде бул иштер өзүнчө модулдар жана өзүнчө эрежелер, ошондуктан жарым конфигурацияланган өткөрүү дагы иштеген башкаруу каналын берет. Бир нерсени өзгөртүүдөн мурун кайсы жарымы бар экенин аныктаңыз.

Сервердин өз өрт дубалы да роутердин дарегинен 47 протоколуна уруксат бериши керек. Бир гана 1723/tcp кабыл алган хост өрт дубалы LAN ичинен 619 катасын кайра жаратат, ошондуктан бузулган өткөрүү жана бузулган хост эрежеси бирдей көрүнөт.

sudo iptables -S FORWARD | grep -i gre
sudo nft list ruleset | grep -i gre
lsmod | grep -E 'nf_conntrack_proto_gre|nf_nat_proto_gre'

Модулдар жок болсо, аларды sudo modprobe nf_conntrack_proto_gre nf_nat_proto_gre менен жүктөңүз жана жүктөөнү туруктуу кылыңыз, анткени жардамчыны унуткан кайра жүктөө иштеген туннелди кайра 619 катасына айландырат. Өткөрүү эрежеси 47 протоколун сервердин дарегине гана кабыл алышы керек, бүт LAN-га эмес. RFC 2637 аныктамасы башкаруу жана маалымат жолун бөлөт, ошондуктан бир да порт өткөрүү экраны PPTP-ни толук сүрөттөбөйт.

Өткөрүү кутучасы же так протокол эрежеси

Бир гана өрт дубалын ачкан өткөрүү кутучасы чалуу идентификаторлорун кайра жазган ALG-ден туурага жакын. Өрт дубалынын жарымы болжолдуу, анткени 47 протоколу же кабыл алынат, же ташталат, ал эми эсептегичтер кайсынысын айтат. Кайра жазуу жарымы — өндүрүүчүлөр айырмаланган жер, анткени PPTP чалуу идентификаторлору ар бир туннелге таандык жана аларды оңдогон NAT тийген ар бир чалууну көзөмөлдөшү керек. Бир кардар туташып, экөө туташпаса, ALG — биринчи шектүү.

1723 үчүн багытталган NAT эрежесинин да ээлик маселеси бар. Эски эреже дагы эле серверди токтоткон хостко 1723 жөнөтсө, пакеттер жабык портко түшөт жана роутердин өз PPTP кызматы жооп берүүнү токтотот, бул өрт дубалынын бузулушу болуп окулат, бирок чындыгында эскирген бутат. Эрежени жана анын багытын экинчисин кошконго чейин окуңуз. PPTP-ни өздөрү бүтүргөн роутерлерде WAN эрежеси курулган кызмат менен атаандашат, ошондуктан 1723 жана 47 протоколу үчүн бир ээ тандаңыз.

Бир NAT-тын артындагы эки кардар — жөнөкөй өткөрүүнү акылдуусунан ажырата турган учур. Чалуу идентификаторлорун кайра жазбай 47 протоколун өткөрүү адатта аларды оңдоого аракет кылган жардамчыдан жакшыраак иштейт.

Роутерди күнөөлөөдөн мурун туннелди өлчөңүз

PPTP пайдалуу жүктү азайтат, жана бул азаюу — арифметика, табышмак эмес. Ар бир туннел пакети тышкы IP аталышын, кеңейтилген GRE аталышын, PPP аталышын жана шифрлөө болсо MPPE аталышын алып жүрөт. Жол пайда болгон кадрды ташый албаса, кичине пакеттер өтөт, кирүү аяктайт жана файл өткөрүү же TLS кол алышуусу толук өлчөмдөгү пакетти жөнөткөн биринчи учурда сессия токтойт.

Санды болжолдобой эсептеңиз. Кеңейтилген GRE 8 байт, PPP 4 байт, MPPE 4 байт, тышкы IP аталышы 20 байт, ошондуктан туннель ар кандай жүктөн мурун 36 байт жейт. 1492-де бүткөн PPPoE WAN-да баткан эң чоң PPP MTU — 1492 минус 36, башкача айтканда 1456. PPP параметрлеринде mtu жана mru-ти ошол мааниге коюп, бөлүштүрбөгөн ping менен кайра сынаңыз.

ping -M do -s 1464 198.51.100.7
grep -E '^(mtu|mru)' /etc/ppp/options.pptpd

Ping жолду өлчөйт, туннелди эмес: 1464 байт жүк кошуу 28 байт IP жана ICMP аталыштары 1492 байттык кадрды так толтурат. Эгер бул ping өтпөсө, өткөнгө чейин санды төмөндөтүп, натыйжадан 36 кемитиңиз. Жолдун чегинен жогору коюлган туннель MTU өлчөмдү эске салган бир да журнал сапсыз тоңууну пайда кылат.

Бир роутерде PPTP, L2TP/IPsec же OpenVPN

Ошол эле роутер үч кадимки туннелдин кайсынысын болсо да ташый алат, ал эми айырма — анын эмнени билдириши керектигинде. PPTP эки башка катмарда эки эреже талап кылат. IPsec үстүндөгү L2TP ачкыч алмашуу үчүн UDP 500 жана 4500-дү, ал эми NAT-T аны ташыбаса, жүк үчүн 50 протоколун талап кылат. OpenVPN бир UDP портун талап кылат жана такыр жардамчы керек эмес.

TunnelWhat the router must allowPractical note
PPTPTCP 1723 and IP protocol 47Two transports, two rules
L2TP/IPsecUDP 500, UDP 4500, protocol 50 without NAT-TESP has no port either
OpenVPNUDP 1194 or a chosen TCP portSingle rule, no helper

L2TP мамычасы GRE-ден автоматтык түрдө достук эмес. ESP — IP протоколу 50 жана анын да порту жок, ошондуктан 47 протоколу менен кыйналган роутер ошол эле себептен 50 протоколу менен да кыйналышы мүмкүн. NAT-T ESP-ни UDP 4500 ичине ороп коюу үчүн бар, жана эки тарап тең аны колдосо, 50 протоколунун эрежеси ашыкча болуп калат. Бул тараптардын касиети, роутердин PPTP кутучасынын эмес. Экөөнө тең эреже жазганга чейин кардар чындыгында кайсы инкапсуляция боюнча макулдашканын ырастаңыз.

OpenVPN — роутер тарапта эң аз кыймылдуу бөлүгү бар вариант. Бир UDP порт, бир өткөрүү, туташууларды көзөмөлдөөчү жардамчы жок жана чалуу идентификаторлорун кайра жазуу жок. Алмашуу — курулган тергичтин ордуна орнотулуучу кардар, жана PPTP-нин сүйлөшүүдө калышынын жалгыз себеби көбүнчө ушул.

Эмнени оңдоо жана эмнени алмаштыруу керек

Өткөрүүнү жана MTU-ну оңдоо сизге иштеген туннель берет, сакталуучу туннель эмес. PPTP-нин MSCHAPv2 аутентификациясы жылдар бою чабуулга ачык, ал эми иштеген туннель оффлайн калыбына келтирүүгө боло турган эсептик маалыматтарды жылдырат. Эгер алыскы түзмөк L2TP/IPsec же OpenVPN иштете алса, оңдоону күнү бар убактылуу чара деп караңыз.

Чечим алыскы тарап эмнени колдой турганына жана келишим канчага созулушу керектигине байланыштуу. Бир гана PPTP сүйлөгөн эски түзмөк оңдоону алат; кардар орнотууга болгон нерселердин баары көчүрүлөт.

Билетти жапканга чейин кардар кирүүгө эмес, чоң өткөрүүгө чыдай турганын жана кайра жүктөөдөн кийин да роутер 47 протоколунун эрежесин сактай турганын ырастаңыз. Бир файл көчүрмөсүнөн өтүп, кийинки firmware жаңыртуусунан кийин өлгөн туннель эч качан бүтпөгөн.

Тектеш макалалар