د وېش له دننه، یوې داخلي سرور ته ping د وخت پای ته رسیږي، په داسې حال کې چې هماغه پته له Windows څخه ځواب ورکوي. VPN وصل دی او د Windows لاره سمه ده، نو تشه د WSL پوله ده. له ناکام امر څخه بیرته د کوربه انټرفیس پورې لاره ووهئ. حل په کنفګ فایل کې ثابت CIDR نه دی؛ دا اوسنۍ پته لوستل او هغه ځای ته یې اضافه کول دي چې وېش یې کارولی شي.

تایید کړئ چې لاره چېرې درېږي

په دواړو خواوو کې هماغه ازموینه چلوه: له Windows څخه یو داخلي کوربه حل او وصل شه، بیا یې په وېش کې تکرار کړه. په Windows کې بری او په وېش کې د وخت پای دواړو ترمنځ نیمګړتیا ښیي، نه په VPN کلینټ یا داخلي سرور کې. دا د هرې لارې له بدلولو مخکې وکړئ، تر څو دواړه پایلې یوه منزل بیان کړي.

د وېش په دننه کې، ip -4 addr د WSL NAT حد څخه پته لرونکی مجازي اډاپټر ښیي، او ip route د WSL ګیټوې ته د نغښتې لارې ښودنه کوي. د کارپوریټ مخکښې لپاره هیڅ لاره نشته، ځکه چې د کوربه تونل اډاپټر د وېش په دننه کې سیالي نه لري. نغښتې ګیټوې WSL NAT ته ځي، نه کارپوریټ شبکې ته.

د کارپوریټ لارې اضافه کول پرته له دې چې لومړی په رسیدونکې اړیکه کې ځایي پته اضافه کړئ، د وخت پای یا شبکه نارسیدونکې تېروتنه رامنځته کوي. پته هغه برخه ده چې لاره کارولو وړ کوي، نو لومړی یې ولولئ او لاره دویم ګام وګڼئ.

د هندارې شبکه یا سکریپټ لاره وټاکئ

د هندارې شبکه وېش ته د کوربه خپل انټرفیسونه ورکوي، نو تونل او د هغه لارې پرته له کاپي ښکاري. دا ځانګړتیا د نوي Windows بیلډ او په .wslconfig کې networkingMode=mirrored پورې تړلې ده، او فعالول یې نااړوند چلند لکه localhost لیږد بدلوي. دا د لارې دقت نه، بلکې د پلیټفارم بدلون وګڼئ. که بیلډ یې ملاتړ کوي او اړخیز اغیزې منل شوې وي، دا ترټولو لنډه لاره ده.

تنګه طریقه نغښتې NAT ساتي او هرکله چې تونل پورته شي، د تونل پته او لاره وېش ته کاپي کوي. دا په ډیرو بیلډونو کار کوي، د localhost چلند نه بدلوي، او کله چې VPN بند وي په ښکاره توګه ناکامه کیږي. بیه یې یو کوچنی سکریپټ دی چې په هر اړیکه کې باید وچلول شي.

یو وټاکئ او ولیکئ. د هندارې کنفګوریشن د لاسي لارو سره ګډول د یوې مخکښې لپاره دوه لارې لرونکی او د هیچا لپاره روښانه مالک نه لرونکی وېش جوړوي. یوه مستنده طریقه د دوو نیمګړو کنفګر شوو په پرتله ډیبګ کول اسانه ده.

له کوربه اوسني تونل تفصیلات واخلئ

اډاپټر په نوم نه، بلکې د MAC پتې سره سم کړئ، ځکه نومونه د VPN کلینټ او د اړیکې ترتیب سره بدلیږي. اډاپټرونه یو ځل لیست کړئ، د تونل اډاپټر MAC یاد کړئ، بیا یې پته او مخکښه وپوښتئ. MAC د بیا اړیکو ترمنځ د مجازي اډاپټر سره پاتې کیږي، خو نوم او د انټرفیس شاخص نه پاتې کیږي:

powershell.exe 'Get-NetAdapter | Where-Object { $_.MacAddress -eq "3C-52-82-0A-1B-7C" } | Get-NetIPAddress -AddressFamily IPv4 | Select-Object IPAddress, PrefixLength'

ګیټوې د انټرفیس کنفګوریشن څخه راځي. لومړی د انټرفیس شاخص واخلئ، بیا بل ټوپ ولولئ. شاخص کیدای شي د بیا پیل یا اډاپټر ریسیټ وروسته بدل شي، نو سکریپټ باید هغه وساتي نه، بلکې ولولي:

powershell.exe '(Get-NetAdapter | Where-Object { $_.MacAddress -eq "3C-52-82-0A-1B-7C" }).InterfaceIndex'
powershell.exe '(Get-NetIPConfiguration -InterfaceIndex 27).IPv4DefaultGateway.NextHop'

وتل د متغیر ته له سپارلو مخکې tr -d '\r' څخه تېر کړئ. PowerShell کرښې د carriage return سره پای ته رسوي، او پرته له پاکولو وروستی ساحه پټ کرکټر لري چې د لارې امر په ګډوډونکې تحلیل تېروتنه ناکاموي.

په وېش کې دننه پته او لاره پلي کړئ

د تونل پته د وېش انټرفیس باندې د مخکښې لرونکې پتې په توګه نصب کړئ، بیا کارپوریټ بلاک د کوربه ګیټوې له لارې تېر کړئ:

sudo ip addr add 172.20.14.37/22 dev vpn
sudo ip route add 172.20.0.0/16 via 172.20.12.1 dev vpn

کله چې اړیکه دوره شي NetworkManager لاسي کنفګر شوې پته غورځوي، او هیڅ DHCP کلینټ بدیل نه غواړي. طریقه اتوماتیکه کړئ تر څو هر بیا اړیکه پته تازه کړي، بیا اړیکه بیا پورته کړئ. لاسي طریقه تر لومړنۍ بیا اړیکې پورې باثباته ښکاري:

nmcli con show vpn
sudo nmcli con mod vpn ipv4.method auto
sudo nmcli con up vpn

دواړه ګامه د هغه هک څخه وچلوه چې VPN پیلوي، نه د متقابل شل څخه. هغه سکریپټ چې پته لولي، اضافه یې کوي، لاره اضافه کوي او ارزښتونه لاګ کوي، تکراري لاسي ترمیم په تکراریدونکي بدلوي، او کله چې مخکښه بدله شي لومړی څه چې باید ولولئ هغه لاګ دی.

نوم پن کړئ او لاره ثابته کړئ

کرنل کیدای شي د شبکې بدلون وروسته د وېش انټرفیس نوم د eth1 او eth2 ترمنځ بدل کړي، او په نوم لیکل شوی سکریپټ بیا غلط وسیله سمول کوي. له MAC سره تړلی udev قاعده انټرفیس ته باثباته لیبل ورکوي:

SUBSYSTEM=="net", ACTION=="add", ATTRS{address}=="3c:52:82:0a:1b:7c", NAME="vpn"

بیا د پتې، لارې او ریښتیني TCP اړیکې سره تایید کړئ: ip -4 addr show dev vpn، ip route get 172.20.4.10 او پیژندل شوي داخلي پورټ سره اړیکه. د لارې لټون باید vpn وسیله او هغه سرچینه پته وښیي چې تاسو اضافه کړې.

که درې واړه د وېش په دننه کې بریالي شي او اړیکه بیا هم ناکامه وي، پاکټ WSL پریږدي او د Windows په خوا کې غورځول کیږي. د سکریپټ له بدلولو مخکې د کوربه فایر وال او د VPN کلینټ خپله فلټرنه وګورئ، ځکه بله د لارې سمون هغه پاکټ نه سمولای شي چې لا دمخه کوربه ته رسیږي.

اړوندې مقالې