Эмне үчүн көптөгөн колдонмо байланышы бир OpenVPN сессиясын бөлүшөт
Бир сырткы UDP сүйлөшүү маршруттар жөнөткөн ар бир ички агымды ташыйт. Ички порттор жана протоколдор сакталат; өзгөрүүсүз болуп сырткы бештик гана калат.
Браузер HTTPS баракчасын жүктөп жатканын, SSH кардары башка серверге жеткенин жана чечүүчү суроого жооп берип жатканын элестетиңиз — баары бир OpenVPN сессиясы аркылуу. Физикалык интерфейсте бир сүйлөшүү көрөсүз; туннелдин ичинде үчөөнү көрөсүз. Эки көз караш тең туура, жана эмне үчүн экенин билүү пайдалуу менен баш аламан жазуунун айырмасы. Бир ички агымды сокеттен зымга чейин ээрчиңиз, катмарлуулук эми абстракттуу болбойт.
Бир сырткы сүйлөшүү, көп ички агым
Ар бир колдонмо өз сокетин ачат, ал эми ядро ага беш элементтен турган топтомду берет: булак дареги, булак порту, багыт дареги, багыт порту жана протокол. Бул топтомдор кандайдыр бир туннель киргенге чейин эле бар. Андан кийин маршруттоо алардын баары туннель түзмөгү аркылуу чыгат деп чечет, ошондуктан OpenVPN аркылуу берилген пакет дагы эле ичинде баштапкы аталыштарды алып жүрөт. OpenVPN ошол ички пакетти шифрлеп, натыйжаны шериги менен бир сырткы UDP же TCP сүйлөшүүгө ороп коёт. Ошондуктан сырткы сүйлөшүү бирөө, ал эми ичиндеги агымдар колдонмолор ачканча көп.
Эч нерсе кулабайт. Ички топтомдор учтан учка сакталат, ошондуктан алыскы тарап дагы эле үч агымды айырмалай алат.
Өзгөрүүсүз калган порт
Туруктуу бойдон калган нерсе — сырткы топтом: сиздин дарегиңиз, кардар байлаган жергиликтүү порт, шериктин дареги жана конфигурацияланган кызмат порту. Ушул топтомду жолдогу брандмауэр же NAT уруксат бериши керек, жана ушуну жогорку звенодогу жазуу көрсөтөт. Ал кайра туташуудан же тармак алмашуудан кийин өзгөргөн топтом да, анткени кардар башка жергиликтүү портту байлашы мүмкүн. Бир туннель түбөлүк бир туруктуу булак портун билдирбейт.
Ички порттор — чектик чекиттерге маанилүү нерсе. HTTPS агымы сырткы ташуу оператор конфигурациялаган портто турса да, туннелдин ичинде багыт порту 443тү сактайт. Колдонмонун чектик чекиттери сырткы порт жөнүндө эч качан билишпейт.
Алыскы тарапта декапсуляция эмнени өзгөртөт
Шерикте сырткы катмар чечилет, калганы ички пакет. Андан ары өткөрүү жана кирүү саясаты ички багытка жана протоколго колдонулат. Веб-сервер дагы эле HTTPS байланышын алат, SSH демону дагы эле SSH алат, ал эми чечүүчү дагы эле суроо алат.
Ошондуктан сырткы ташууга уруксат берген эреже ички кызматка уруксат берүү менен бирдей эмес. Биринчиси жолду сүрөттөйт; экинчиси ыйгарым укукту сүрөттөйт.
Сырткы TCP — бир агым, бир байланыш эмес
Сырткы ташуу UDP болгондо, ар бир ички агымдын тагдыры көз карандысыз: жоголгон датаграмма өзү кайра жөнөтүлгөнгө чейин бир өткөрүүгө таасир этет. Сырткы ташуу TCP болгондо, бардык ички агымдар бир ишенимдүү байт агымын бөлүшөт.
Ушул жалпы агым — адамдар байкабай калган бөлүк. Калпына келүү бир жолу, баары үчүн болот, ошондуктан бир жоголгон сегмент ичинде мультиплекстелген ар бир колдонмонун трафигин кечеңдетет. Чектик чекиттерде дагы эле көп байланыш, ал эми зымда бир байланыш бар, жана кезек башынын эффектиси так зымда жашайт. Угуп жаткан порттордун саны бул тууралуу эч нерсе айтпайт, ошондуктан портторду саноо туннелдин аткаруулуулугу жөнүндө ой жүгүртүүнүн начар жолу.
Өз конфигурацияңызды так сүрөттөңүз
Машина баарын бир порт аркылуу жөнөтөт деп айтуунун ордуна, тандалган ички трафикти жана аны ташыган конкреттүү сырткы ташууну атаңыз. Жергиликтүү кызматтар, экинчи туннель жана башка дарек үй-бүлөсү бул сүйлөшүүгө эч качан кирбеген агымдарды түзөт. Жогорку звенодогу жазуу сырткы топтомду көрсөтөт; туннелдин ичиндеги жазуу ичкилерди көрсөтөт.
Экөөнү тең алыңыз жана убакыт белгилерин катар коюңуз. Кайсы колдонмо кайсы ички агымды жаратканын далилдөө керек болсо, хосттогу сокет таблицасы жакшыраак курал, анткени ал портторду процесстерге түз байланыштырат. Анан байкаган сырткы топтомуңузду жана байкаган учуруңузду жазып коюңуз, анткени кайра туташуудан кийинки кийинки жазуу мыйзамдуу түрдө башка сандарды көрсөтүшү мүмкүн.