په روټر VPN کې د هر وسیلې لپاره سویچ نشته؛ هغه ټوګل چې تاسو یې لټوئ یو لنډلار دی چې ستاسو په استازیتوب د پالیسۍ روټینګ قواعد لیکي۔ کله چې یو لپټاپ، یوه پورټ لړ، د پتونو یوه لیست یا یوه LAN برخه باید تونل وکاروي او نور ټول په WAN کې پاتې شي، تاسو یوه پالیسي روټ جوړوئ نه دا چې یوه ځانګړنه فعاله کړئ۔ کار درې خوځېدونکي برخې لري او هر یو یې بېلابېل ناکامېږي: پرته له روټ نښه شوې جدول د چوپتیا په څېر ښکاري، په غلط زنځیر کې ایښودل شوې نښه داسې ښکاري چې هیڅ نه دی شوی، او ورکه NAT قاعده داسې تونل ښکاري چې نښلېږي خو هیڅ نه وړي۔ لا دوه برخې ورکېږي ځکه چې هغه هیڅکله د mangle په قاعده کې نه ښکاري، او هغه DNS او IPv6 دي۔

افسانه: تونل د کلاینټ تنظیم دی

د روټر خوا VPN کلاینټ یو سخت کار ښه کوي: 0.0.0.0/0 په اصلي روټینګ جدول کې اېږدي او تونل ته یې اړوي۔ WireGuard دا له AllowedIPs څخه اخلي، OpenVPN او له هغه redirect-gateway څخه چې سرور یې تېلې کوي، او دواړه د روټر شاته هر هوسټ لار بدلوي۔ AllowedIPs تنګول یا route-nopull ورزیاتول هغه څه بدلوي چې کلاینټ یې نصبوي۔ هغه نه بدلوي چې دا نصب پر چا تطبیقېږي، ځکه کلاینټ هیڅکله وسایل نه ویني۔ هغه یوازې پاکټونه ویني۔

له سرچینې یا منزل له مخې ټاکل د روټینګ پرېکړه ده، نو د روټر د پالیسۍ طبقې پورې اړه لري: په RouterOS کې mangle قاعده او دویمه جدول، په OpenWrt یا DD-WRT کې MARK او ip rule، یا په pfSense کې هغه فایر وال قاعده چې ګېټوې یې تونل دی۔ د Netgate د WireGuard کلاینټ ترلاسه هغه څه دي چې له اټکل کولو دمخه باید ولولئ، ځکه په دې پلیټفارم کې د قاعدې ګېټوې، د انټرفېس ټاکنه او د وتلو NAT ننوتنه باید سره یوځای شي، تر څو یو کلاینټ تونل وکاروي۔

د افسانې دویمه نیمه دویم روټر دی۔ بله بکس پیرودل، یا وسیله ګیسټ SSID ته لېږدول ډېری وخت کار کوي، او دلیل هارډویر نه دی: دا وسیله په خپله فرعي شبکه کې ږدي، چې تاسو ته هغه سرچینه ټاکونکی درکوي چې فرم ویئر یې دمخه پېژني۔ که تاسو په خپل روټر باندې هغه برخه تعریف کړئ، اضافي بکس هغه ستونزه حل کوي چې تاسو نه لرله۔

لومړۍ برخه: هغه تونل چې ډیفالټ روټ نه دی

په RouterOS کې کلاینټ پرته له ډیفالټ روټ ورزیات کړئ او تونل ته خپله جدول ورکړئ۔ لومړی روټ نښه شوی ډیفالټ دی؛ دویم د ناکامۍ نیمه ده۔

/ip route add dst-address=0.0.0.0/0 gateway=VPN_GATEWAY_IP routing-mark=vpn distance=1
/ip route add dst-address=0.0.0.0/0 type=unreachable routing-mark=vpn distance=2

نه رسېدونکی روټ هغه دلیل دی چې ولې نښه شوې جدول په اصلي جدول کې د استثناوو لیست ته ماتې ورکوي۔ کله چې تونل ولوېږي، نښه شوي پاکټونه سمدلاسه نه رسېدل ترلاسه کوي پرځای دې چې په خاموشۍ WAN ته راوګرځي، نو خرابي د اپلیکیشن د خطا پیغام کې ښکاري نه په هغه جغرافیوي پاڼه کې چې یو ساعت وروسته یې ګورئ۔

RouterOS 7 هغه څه جلا کوي چې 6.x سره یوځای ساتل: جدول د /routing table add name=vpn fib سره اعلان کړئ، بیا پر روټ او په mangle قاعده کې د نوم له مخې ورته اشاره وکړئ۔ هغه 6.x ټوټه چې routing-mark لیکي پرته له دې چې جدول تعریف کړي، پاکه پورته کېږي او له هیڅ سره نه ځي۔ بله کلاسیکه دا ده چې دوه 0.0.0.0/1 نیمې، یا په یوه جدول کې په یوه واټن دوه ډیفالټ روټونه: کرنل یو ټاکي، او چلند یې له بیا پیل وروسته بدلېدلی شي۔

دویمه برخه: د روټ لټون دمخه نښه کړئ

ټاکونکی پرېکړه کوي چې کوم پاکټونه هغه جدول ته ننوځي۔ RouterOS معمولاً د منزل پالیسۍ لپاره له پت لیست، یا د وسیلې پالیسۍ لپاره له سرچینې پت پیل کوي:

/ip firewall mangle add chain=prerouting src-address=192.168.88.50 action=mark-routing new-routing-mark=vpn
/ip firewall mangle add chain=prerouting dst-address-list=via-vpn action=mark-routing new-routing-mark=vpn
/ip firewall address-list add list=via-vpn address=203.0.113.10

لینکس فرم ویئر همدا کار د netfilter نښې او هغې قاعدې سره کوي چې نښه شوي پاکټونه هغه جدول ته اړوي چې تاسو ډک کړی دی:

iptables -t mangle -A PREROUTING -p tcp --dport 27000:27050 -j MARK --set-mark 0x200
ip route add default dev tun0 table 100
ip rule add fwmark 0x200 table 100

زنځیر د سټایل ټاکنه نه ده۔ کله چې پاکټ FORWARD ته رسېږي، د روټ لټون دمخه شوی وي، نو هلته MARK یا DROP یوازې بیا لیکلی یا غورځولی شي۔ نښه باید PREROUTING کې د لېږدول شوي ټرافیک لپاره او OUTPUT کې د هغه ټرافیک لپاره چې روټر پخپله جوړوي ولوېږي، چېرې چې د روټر DNS، NTP او د تازه کولو ګوري۔ همدا د وتلو لار معمول دلیل دی چې ولې په بشپړه توګه تونل شوی تنظیم په لیک ټسټ کې لا هم د ISP له ریزالور څخه ځواب ورکوي۔

د وسیلې پالیسي هغه سمون غواړي چې نه ښویېږي۔ پته په DHCP کې ساتلې، یا د ځانګړې برخې لپاره انټرفېس سره برابر کړئ؛ هغه پته چې وروسته بلې وسیلې ته ځي په خاموشۍ تونل غلط کلاینټ ته تطبیقوي۔ د خپلې فرعي شبکې سره د هر SSID پل د همدې فکر اوږدې ژوندۍ بڼه ده، او IPv6 قاعدو ته هم د اوسېدو ځای ورکوي۔

درېمه برخه: NAT، DNS او د LAN استثنا

هغه ټرافیک چې د تونل له لارې وځي هغې سرچینې پت ته اړتیا لري چې بل لوري ته ځواب ووایي۔ ژباړه د تونل انټرفېس پورې محدوده کړئ: په RouterOS کې out-interface=VPN_NAME، په لینکس کې -o tun0، په pfSense کې سمون خوړونکې وتلې NAT ننوتنه۔ بې له دې محدودیت masquerade قاعده هغه ټرافیک هم بیا لیکي چې تاسو یې پرېښودل غوښتل، او نښه یې دا ده چې پرته له تونل وسیله خپله عامه پته له لاسه ورکوي۔

د LAN استثنا له تونل څخه هم ډېر د ملاتړ موضوعات جوړوي۔ که نښه شوې جدول یوازې ډیفالټ روټ ولري، له ټاکل شوې وسیلې چاپېر یا NAS منزل هغه ډیفالټ سره سمون خوري او په تونل کې ورکېږي۔ په هماغه جدول کې LAN روټ ورزیات کړئ، یا په ټاکونکي کې ځایي فرعي شبکه وباسئ؛ دواړه کار کوي، او وروسته چې VLAN ورزیات کړئ، باسل یې سم ساتل اسانه دي۔

DNS جلا لار اخلي۔ هغه پوښتنې چې روټر یې لېږدوي د روټر له خوا رامنځته شوې دي او OUTPUT تعقیبوي، نه لېږدول شوې نښه، نو په بشپړه توګه تونل شوی لپټاپ لا هم د ISP له لارې نومونه حلولی شي۔ کلاینټونه هغه ریزالور ته واړوئ چې د تونل له لارې ورته رسېدلی شئ، یا د روټر خپله port-53 ټرافیک نښه کړئ، بیا حل شوې پته وګورئ پرځای دې چې فکر وکړئ ځواب د وېب غوښتنې سره یوځای سفر کړی۔

کله چې قاعده سمون خوري خو اپلیکیشن بیا هم WAN کاروي

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

IPv6 غلی تېښته ده۔ وسیله دویمه پتې کورنۍ لري چې خپل ډیفالټ روټ او خپل قواعد لري، او یوازې له IPv4 پتې سره سمون د پالیسۍ نیمه ده۔ هماغه ټاکونکی په ip6tables یا د nftables برابر باندې تطبیق کړئ، یا په هغې برخه کې IPv6 په ناڅاپي توګه نه، بلکې په قصداً توګه بند کړئ۔

جوړ شوي اړیکې هم مهمې دي۔ هغه conntrack ننوتنه چې له بدلون دمخه جوړه شوې، تر پای وخت پورې زوړ مسیر تعقیبوي، نو هغه براوزر چې د سمون پر مهال خلاص پاتې شو، سم هغه قاعده ښکاري چې هیڅکله نه ده تطبیق شوې۔ د پالیسۍ د قضاوت دمخه نوی اړیکه پرانیزئ، یا حالت پاک کړئ۔

د دوو وسیلو او یو بیا پیل سره تایید کړئ

هغه وسیله وآزموئ چې باید په تونل کې وي او هغه چې باید نه وي، او د سرعت عدد پرځای دویم ټوپ پرتله کړئ۔ له هر یو traceroute په دویم ټوپ کې د تونل ګېټوې یا د ISP ګېټوې ښیي؛ که دواړه یو ډول ښکاره شي، نښه یا جدول هغه نه کوي چې قاعده یې وایي۔ ازموینې ته نوي اړیکې وکاروئ۔

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

که څه ناکام شي، لومړی نښه لرې کړئ او وګورئ چې نورمال ټرافیک راګرځي، بیا جدول لرې کړئ۔ همدا ترتیب درته وایي چې د روټینګ ستونزه تعقیبوئ که د فایر وال، او کور ته د کار کولو چاپېر پرېږدي تر څو چې کار پای ته ورسوئ۔

اړوندې مقالې