یو کلاینټ له څو OpenVPN سرورونو څخه یوه سره نښلول کېږي او بیا ورته یو کوچنی خدمت ته اړتیا وي چې په همدې نوډ باندې چلیږي: د حالت پاڼه، د متریک پای ټکی، د بیک اپ استازی۔ هر نوډ ته د یوه شان شخصي خدمت پتې ورکول د کلاینټ تشکیلات یو شان کوي، پر کوم سرور ولاړ شو توپیر نه کوي۔ دا اسانتیا ریښتینې ده، او د هغې زیاته لوستل هم اسانه دي: شریکه پته تاسو ته وایي کوم نوډ ته رسېدلي یاست، نه دا چې څه زېات دي۔

ولې په هر نوډ باندې یوه شان پته کار کوي

هر نوډ پته په سیمه ییز ډول اخلي او هغې ته ځواب وایي، نو هغه کلاینټ چې د خپل اوسني تونل له لارې ورته رسېږي، خدمت د هغه تونل په بل سر کې ترلاسه کوي۔ د نوډونو ترمنځ هېڅ همغږي نه کېږي، او هېڅ ترافیک له یوه نوډ څخه بل ته نه تېرېږي۔

پته یوه سیمه ییزه نښه ده، تکرار شوې او نه کاپي شوې۔ هر نوډ یوازې د خپل ځان لپاره ځواب وایي، او هېڅ یو هم د بل نوډ په نامه د پتې لپاره ترافیک نه لېږي۔ همدا یو د کلاینټ تشکیلات سم ساتي کله چې سرورونه خپلواک پاتې شي۔ همدا لامل دی چې ډیزاین د نوډونو ترمنځ هېڅ همغږي ته اړتیا نه لري۔

نو همدغه یو شان تشکیلات پر هر سرور باندې د هغوی ترمنځ د لارښوونې پروتوکول پرته کار کوي۔ همدا لامل دی چې ډیزاین د روغتیا په اړه هېڅ نه وایي: پته په ناروغ نوډ باندې هم سم لکه په روغ نوډ باندې شته، ځکه چې هغه له کوربه سره تړلې ده، نه د دې سره چې خدمت ګټور دی۔

هغه لوپبک ته وټاکه، نه تونل ته

پتې د لوپبک انټرفیس باندې ایښودل هغه د هر تونل وسیلې له ژوند څخه بېله کوي، نو بیا نښلول یا د تشکیلاتو بیا لوډول هغه نه لیرې کوي۔ پته تر هغه وخته شته چې کوربه شته۔

د lo باندې پته فلټر نه ده۔ خدمت باید لا هم پر هغې واوري، او د کوربه فایر وال لا هم ریښتینی راتلونکی لار ارزوي، کوم چې د تونل انټرفیس باندې راځي۔ څوک چې فکر کوي لوپبک یوازې سیمه ییز معنی لري، په پای کې یا قانوني کلاینټونه بندوي یا هغه څه ښکاره کوي چې اراده یې نه وه۔

ټاکل د کوربه د شبکې تشکیلاتو له لارې پایښتناک کړه، نه دا چې له hook څخه یې بیا ورزیات کړې۔ د نصب hook په هغه نوډ باندې نه چلیږي چې هلته هېڅ تونل نه وي پورته شوی، او د خدمت پته باید د تونل فعالیت ته تړلې نه وي۔ پته په هغه انټرفیس تشکیلاتو کې کېږده چې ستاسو وېش یې مالک دی، بیا یو ځل بیا پیل کړه او وګوره۔ بیا پیل یوازینی ازموینه ده چې وروسته تشکیلاتي بدلون ته ځان ساتي۔

ip address show dev lo | grep 10.250.0.1
ip address add 10.250.0.1/32 dev lo

یوه لار ټېله کړه او یو هدف ته اشاره وکړه

کلاینټ ته د پتې لپاره د کوربه لار ته اړتیا ده، کومه چې هغه سرور وړاندې کوي چې ورسره نښلول کېږي۔ ځکه چې هر سرور هماغه هدف وړاندې کوي، پروفایل نه بدلېږي کله چې کلاینټ ځای بدلوي۔

مخکې له دې چې خدمت ته ګناه ورکړې، وګوره چې کلاینټ څه نصب کړي دي۔

ip route get 10.250.0.1

د HTTP خدمت لپاره پتې ته یو نوم او هغه نوم لپاره سند ورکړه۔ شریکه IP هویت نه دی، او TLS تایید نه لیرې کوي، او د یوې شخصي کیلي هر نوډ ته کاپي کول هم نه توجیه کوي۔ هغه نوم چې شریکې پتې ته حل شي د سند کیسه عادي ساتي او اجازه درکوي چې که اړتیا وي هر نوډ لپاره جلا هویت وساتې۔

شریکه پته څه نه شي کولی

هغه د ناکامۍ پر مهال لېږد نه برابروي۔ که غوره شوی نوډ مړ شي، پته ورسره مړه شي، او کلاینټ باید بل ځای بیا ونښلول شي۔

هغه ژوندی TCP غونډه نه لېږدوي، ځکه چې نوې نښلونې په بل کوربه باندې پای مومي چې د زاړه په اړه هېڅ نه پوهېږي۔

هغه روغ نوډ نه ټاکي، بار نه انډولوي او د نوډونو ترمنځ ډاټا نه همغږي کوي۔ دا هر یو جلا میکانیزم دی چې خپلې ناکامۍ لارې لري، او دا ښودل چې د پتې چل هغوی پټوي هماغه لار ده چې ساده ډیزاین ته د انعطاف نیمګړې نوم ورکوي۔ که دوه تونلونه یو وخت فعال وي، د هدف مانا ناڅرګنده کېږي، نو د یو فعال تونل انګېرنه ښکاره وساته۔

د خدمت هویت له نوم سره وساته

ولیکه چې پته څه معنی لري: هغه هغه نوډ باندې خدمت ته رسېږي چې کلاینټ اوس ورسره نښلول شوی دی۔ هماغه یوه جمله د دې بڼې راکش کړې ډېره ناسم پوهاوی بندوي۔

بیا برخې یوځای مستند کړه: پته، هغه انټرفیس چې پر هغې ژوند کوي، هغه لار چې سرور ټېله کوي، او هغه نوم او سند چې خدمت وړاندې کوي۔ څلور کوچنۍ حقایق چې راتلونکی لوستونکی یې تاییدولی شي، په هماغه ترتیب چې هغه به یې ګوري۔

که اړتیا د نوډ سیمه ییز خدمت لپاره ټینګ هدف وي، بڼه ځای لري او نږدې هېڅ لګښت نه لري۔

که اړتیا لاسرسی وي، یوه طبقه پورته لاړ شه: د بار انډولونکی، د روغتیا کتنو سره د خدمت نوم، یا هغه آرکیسټرېشن سیستم چې دمخه پوهېږي چې نوډ څنګه بدل شي۔

د دې ژر پرېکړه کول شریکه پته هغه څه ساتي چې ده، یوه اسانه نښه، نه هغه برخه چې په خاموشۍ کې ورڅخه هغه کار تمه کېږي چې هېڅکله ورته نه دی ډیزاین شوی۔

اړوندې مقالې