کیل سویچ VPN سرور مخکې له دې چې کومه ترافیکه بهیږي بندوي
کوم پړاو ته کیل سویچ بندیز لګوي: د پای ټکي پلټنه، بهرنی مسیر، د بېرته راتلو لار او زاړه همتا استثناوې — د اټکلونو پر ځای د شمارونکو سره۔
کیل سویچونه په هغه لوري ناکامېږي چې خلک یې تمه نه لري: دوی د دې لپاره جوړ شوي چې ترافیکه بنده کړي کله چې تونل ښکته وي، او هغه پاکټونه چې تونل جوړوي پخپله ترافیکه دي۔ دا ټول خرابي همدغه ده۔ د قاعدو هغه ټولګه چې هر هغه څه غورځوي چې د تونل له لارې نه وځي، هغه لاس ورکول هم غورځوي چې باید تونل پورته کړي، نو کلاینټ په حلقه کې بیا هڅه کوي او تېروتنه هغه پړاو ته منسوبېږي چې لومړی څېړل کېږي۔ مخکې له دې چې اورچین پراخ کړئ، ومومئ چې له درېیو پړاوونو کوم یو رد کېږي: د نوم پلټنه، همتا ته بهرنی پاکټ، یا هغه ځواب چې بېرته راځي۔
څنګه تونل او د هغه خپله انتقال د یو بل تابع دي
VPN کلاینټ دوه د شبکې حالتونه وګڼئ چې یوه ساکټ لاره شریکوي۔ مخکې له دې چې تونل شتون ولري، کلاینټ په فزیکي اډاپټر کې ساکټ پرانیزي او کوډ شوي چوکاټونه د همتا ادرس او پورټ ته لېږي۔ یوازې وروسته له دې چې هغه تبادله بریالۍ شي، د تونل وسیله جوړوي او مسیرونه نصبوي۔ کیل سویچ د دوهم حالت په اړه تګلاره ده، دومره پراخه لیکل شوې چې پر دواړو پلي کېږي۔
د انټرفیس پر بنسټ قاعدې عادي بڼه ده: هغه څه ومنئ چې له دې لارې وځي tun0 یا wg0، د وتلو پاتې لاره وغورځوئ۔ دا جوړښت نشي کولی د کلاینټ خپله اړیکه سرور ته استثنا کړي، نو سم پلي کول هغه استثنا په څرګنده توګه زیاتوي، او تاسو هم کله چې قاعدې په لاس لیکئ همداسې کوئ۔ په Windows او macOS کې د هر اپلیکیشن قاعدې د انټرفیس پر ځای پروسه تطبیقولو سره د دې یوه برخه ترې تېریږي، خو پروسه باید لا هم مخکې له دې چې تونل شتون ولري ووځي۔
درې پړاوونه، په هغه ترتیب چې پېښېږي
لومړی پړاو حل کول دي۔ کله چې پروفایل د لفظي ادرس پر ځای د کوربه نوم ذخیره کوي، کلاینټ باید مخکې له دې چې څه ولېږي د DNS ځواب ولري۔ هغه پروفایل چې DNS د تونل حل کوونکي ته ګرځوي یو بنبست جوړوي: حل کوونکی یوازې د هغه تونل له لارې رسېدونکی دی چې پلټنه باید فعاله کړي۔ د تونل بهر حل کول، یا د پای ټکي په یوه ادرس پین کول، دا ابهام لرې کوي۔
دوهم پړاو بهرنی پاکټ دی، چې په دې ترتیب باید لومړی مسیرول او بیا اورچین تېر کړي۔ wireguard-tools د WireGuard لپاره د دې مسیرولو نیمه برخه پخپله ترسره کوي: خپل پاکټونه نښه کوي او یوه تګلاره قاعده زیاتوي تر څو هغه ډیفالټ مسیر چې همدا اوس نصب کړی پرېږدي؛ د wg-quick لارښود پاڼه هغه قاعده او هغه جدول چې کاروي یې بیانوي۔ هغه مسیرول بیا په لاس جوړ کړئ، یا دوهم وسیله ته اجازه ورکړئ چې قاعدې بیا ولیکي، او نښه شوي پاکټونه کولای شي بیرته هغه تونل ته ولېږل شي چې باید جوړ یې کړي۔
دریم پړاو د بېرته راتلو لار ده۔ بې ځوابه لاس ورکول د بهر غورځولو ثبوت نه دی؛ دا په هماغه اندازه د سرور د ننوتلو قاعدې یا هغه NAT وسیلې سره سمون لري چې نقشه یې هېره شوې۔ مخکې له دې چې کلاینټ ته لاس ووهئ دا جلا کړئ۔
| What you see | Stage | Where to look |
|---|---|---|
| The client log repeats a resolve step and no packets appear on the wire | 1, name lookup | Resolver path while the tunnel is down |
| The send counter on the physical adapter stays flat | 2, routing | Peer route and policy rules |
| The send counter rises and a firewall drop counter rises | 2, firewall | Rule order, mark, and interface match |
| Packets leave and nothing comes back | 3, return path | Server input rules, NAT, listening port |
کلاینټونه هغه علامه ثبتوي چې کشفوي، ناکام شوی پړاو نه، نو جدول معمولاً له لاګ څخه ګړندی دی۔
شمارونکي له لاګونو څخه ګړندي پرېکړه کوي
په Linux کې، nft list ruleset یا iptables -vnL OUTPUT د هرې قاعدې لپاره د پاکټ شمارونکی چاپوي۔ یو ځل وصل شئ، پرېږدئ چې ناکام شي، بیا شمارونکي ولولئ۔ هغه قاعده چې شمارونکی یې حرکت کړی هغه قاعده ده چې لاس ورکول پرې لګېدلي؛ که چېرې هیچېرې هیچ څه ونه خوځېدل، پاکټ هیچ کله اورچین ته ونه رسېد۔ ما لیدلي چې یوې قاعدو ټولګې خپل لاس ورکول وغورځول، او دا یوازې شمارونکو وویل۔
تر څو هغه چې هیچ کله اورچین ته نه دی رسېدلی له هغه چې هیچ کله له کوربه نه دی وتلی جلا کړئ، انټرفیس پخپله وګورئ۔ ip -s link show dev wlan0 د لېږل شوو پاکټونو راپور ورکوي، او tcpdump -ni wlan0 udp port 51820 چوکاټونه ښیي۔ که چېرې کلاینټ بیا هڅه کوي او دا فلیټ پاتې شي، نو خرابي له netfilter پورته ده: ورک مسیر همتا، تګلاره قاعده چې لا نه شته وسیلې ته اشاره کوي، یا ساکټ تېروتنه چې کلاینټ یې تېرېږي۔
استثناوې د اسنادو د ادرسونو په وړاندې وازموئ، لکه 203.0.113.10، تر څو یوه تېروتنه د بل چا کوربه ونه پلټي۔
زوړ د پای ټکي استثنا د سرور د بندېدو په توګه لوستل کېږي
تر ټولو ګمراه کوونکې بڼه وروسته له هغې ښکاري چې د همتا ادرس بدل شوی وي: د متحرک ادرس خدمت هغه لېږدولی، کوربه بیا جوړ شوی، یا ستاسو د شبکې د وتلو ادرس توپیر لري۔ استثنا لا هم زوړ ادرس نوموي، نو نوي ته تلونکي پاکټونه د غورځولو قاعدې ته ورځي۔ هماغه ترتیبات پرون کار کول، او له همدې کبله خلک د سرور د ستونزې پلټنې څخه پیل کوي۔
په اورچین قاعده کې کوربه نوم تاسو نه ژغوري۔ په nftables کې نوم هغه وخت حل کېږي چې د قاعدو ټولګه بار شي، نو هغه ادرس چې په هغه شیبه کې و، پین کوي او لکه لفظي ادرس زوړ کېږي۔ تلپاتې حل دا دی چې کله پای ټکی بدل شي استثنا تازه کړئ او هغه تنګ وساتئ: یو همتا ادرس، یو انتقالي پورټ۔ هغه حد چې دومره پراخ وي چې د ادرس بدلون زغملای شي، دومره پراخ هم دی چې بې اړیکه ترافیکه بهر کړي۔
کله چې کیل سویچ د سرور کوربه کې کار کوي
هماغه تړاو په بل سر کې هم شته، او هلته یې هېرول اسانه دي۔ که هغه ماشین چې ستاسو VPN سرور دی، د کیل سویچ سره ډیسکټاپ کلاینټ هم چلوي، یا له لپټاپ څخه کاپي شوی اورچین پروفایل، د هغه غورځولو قاعدې هغه خدمت ته پلي کېږي چې تونلونه پای ته رسوي۔ د کلاینټ لاس ورکولو ځوابونه غورځول کېږي، نو هر کلاینټ نشي کولی وصل شي، په داسې حال کې چې سرور روغ ښکاري او د هغه تونل انټرفیس بې استفادې پروت دی۔
هغه کوربه ته مخکې له غورځولو درې تنګ مننې ته اړتیا ده: د اورېدلو پورټ په فزیکي انټرفیس، د کوډ پرانیستې ترافیک لپاره تونل انټرفیس، او له تونل څخه هغه ځای ته لېږدول چې کلاینټونه باید ورته ورسېږي۔ نصب شوې ټولګه په دې ولولئ: nft list ruleset، iptables -S، یا pfctl -sr ، مخکې له دې چې هر څه بدل کړئ، او په یاد ولرئ چې خوندي شوې قاعدو ټولګه د بیا پیل څخه ژغورل کېږي، نو هلته تېروتنه له هغه پروسې څخه زیات ژوند کوي چې هغه یې جوړه کړه۔
د بیا رغونې ترتیب چې ماشین بند ساتي
له پروفایل څخه بهر کار وکړئ۔ هغه همتا ادرس او پورټ ولولئ چې کلاینټ یې کاروي، تایید کړئ چې کوربه نوم پرته له تونل حل کېږي، بیا یوازې په فزیکي اډاپټر کې د هغه ادرس او پورټ لپاره یوه استثنا زیاته کړئ۔ بیا وصل شئ او د لېږلو شمارونکی وګورئ؛ بشپړ شوی لاس ورکول هغه نښه ده چې دوهم پړاو سم شوی دی۔
د ازموینې پر مهال د غورځولو پاتې تګلاره په خپل ځای پرېږدئ۔ بې زیانه څېړنه دا ده چې بې اړیکه اسنادو ادرس ته د وصل کېدو هڅه وکړئ او تایید کړئ چې لا هم د وخت په پای کې بندېږي، چې دا ښیي کیل سویچ بند نه بلکې کار کوي۔ کله چې تونل ټینګ شي استثنا کلکه کړئ، او د اسانتیا لپاره د کلاینټ پروګرام لپاره تلپاته هر څه ته اجازه مه پرېږدئ۔
که تونل پورته شي او اپلیکیشن لا هم ناکام شي، پاتې پړاوونه دا نه دي: ووېشل شوی DNS، MTU او د هر اپلیکیشن مسیرول هر یو وصل تونل او ماتې ترافیکې ورکوي، او هر یو خپله لومړنۍ څېړنه لري۔