Android OpenVPN د تونل له آدرس پرته لاره نه زیاتوي
د Android OpenVPN مراجعین تر هغه پورې لاره نه شي زیاتولی چې تلیفون د تونل آدرس ولري. وګورئ څوک یې ټاکي، کوم pull فلټرونه یې غورځوي او کله باید تاسو پخپله یې ولیکئ.
ستاسو د Android OpenVPN پروفایل لاره نه شي زیاتولی ځکه چې تلیفون په مجازي انټرفیس کې آدرس نه لري، نو هغه څه نشته چې لاره ورته اشاره وکړي. لارې یوازې دا ځوابوي چې بستې چېرته باید لاړې شي. د تونل آدرس دا ځوابوي چې تلیفون د تونل دننه څوک دی، او مراجع باید یو وړاندې کړي مخکې له دې چې انټرفیس رامنځته شي. لاندې څلور ګړنۍ په ترتیب سره ترسره کړئ او په لومړنۍ ناکامۍ ودرېږئ، ځکه چې له آدرس مخکې د لارو سمون اصلي ستونزه پټوي.
ناکامي په هغه ترتیب ولولئ چې مراجع یې اجرا کوي
د Android VpnService.Builder دوه مفاهیم بېل ساتي: addAddress() هغه انټرفیس ته آدرس ږدي چې اپلیکیشن یې جوړوي، addRoute() د منزل مخکښه زیاتوي، او establish() تر هغه پورې د انټرفیس جوړولو څخه انکار کوي چې لږ تر لږه یو آدرس ورزیات شي. OpenVPN مراجع پروفایل او هغه انتخابونه چې سرور یې استوي په سمه توګه هماغو زنګونو ته نقش کوي، نو هغه اړیکه چې هیڅکله آدرس تحلیل نه کوي انټرفیس هم نه شي جوړولی.
همدې لپاره هغه لاګ کرښه چې لولئ کېدای شي لاره ونوموي پداسې حال کې چې لامل یو ګام مخکې دی. مراجع د لارې پړاو ته یوازې د انټرفیس له رامنځته کېدو وروسته رسېږي؛ پرته له آدرس، د لارې زنګ سمدلاسه ناکامېږي یا هیڅکله نه چلیږي. کله چې لاګ ووايي چې لاره نه شي زیاتولی، له آدرس څخه پیل وکړئ نه د لارې له نحوي جوړښت څخه.
ګړنۍ 1: ایا سرور په ځواب کې آدرس ږدي؟
د لارې اړوند OpenVPN خدمت لپاره آدرس د سرور له ذخیرې یا د هر مراجع لپاره له ټاکلو راځي، او د هغې بڼه ټوپولوژي ټاکي. په OpenVPN 2.4 یا نوي سرور کې، د فرعي شبکې ټوپولوژي لرونکی خدمت داسې ښکاري:
topology subnet
server 10.8.0.0 255.255.255.0
client-config-dir ccd
په دې بڼه سرور د ifconfig 10.8.0.6 255.255.255.0 په څېر څه استوي. زوړ topology net30 نصب پرځای د همکار آدرس استوي، لکه ifconfig 10.8.0.6 10.8.0.5، نو هغه پروفایل چې د دوو ماډلونو ترمنځ لېږدول شوی وي سم ښکاري خو غلط شبکه یی ماسک لېږدوي.
د مراجع د اړیکې لاګ کې د استول شوو انتخابونو ټولګه ولټوئ. که په کې د ifconfig یوه کرښه هم نه وي، سرور هیڅکله آدرس نه دی استولی یا مراجع انتخاب رد کړی دی. په هغه سرور چې client-config-dir کاروي، د سند د common name په نوم فایل باید وي او ټاکل ولري:
# ccd/phone-anna
ifconfig-push 10.8.0.6 255.255.255.0
ګړنۍ 2: ایا مراجع ترلاسه شوی آدرس ساتي؟
ډېر پراخ فلټر دوهم عام لامل دی. pull-filter په OpenVPN 2.4 او نویو کې شته، او کله چې څو فلټرونه له یو انتخاب سره سمون وخورې وروستی سمون خورې بریالی کیږي، نو په پای کې پرېښودل شوی catch-all پرته له تېروتنې آدرس لرې کوي:
# removes every pushed option, including the address
pull-filter ignore "ifconfig"
pull-filter ignore "route"
فلټر تر هغه انتخاب پورې تنګ کړئ چې واقعاً یې لرې کول غواړئ او آدرس پرېږدئ:
# keeps the pushed address, drops one unwanted LAN route
pull-filter ignore "route 10.60.0.0"
د ټولو pull بندولو مشوره معمولاً له هغه چا راځي چې یوازې له یوې لارې خلاصیدل غواړي. route-nopull تنګتره سویچ دی: ifconfig او نور استول شوي انتخابونه ساتي خو استول شوې لارې او د DHCP په څېر انتخابونه ردوي. هغه وخت یې وکاروئ چې واقعاً همدا غواړئ، او د آدرس پوښتنه جلا ځواب کړئ.
ګړنۍ 3: ایا آدرس ستاسو د لیکلو دی؟
په لاسي توګه آدرس ورکول یوازې هغه وخت سم دي چې عملیات کوونکی تاسو ته ارزښت درکړي. که پخپله یو ولیکئ باید د VPN مراجع فرعي شبکې څخه وي، په فعالو ناستو کې بې ساری وي او د سرور له ټوپولوژي سره سمون ولري. د ډیسکټاپ پل یا په لرې LAN کې د کوربه آدرس کاپي کول په دواړو خواو کې نیمګړي دي: تلیفون به هغه آدرس غواړي چې لا دمخه بل ځای کې شته، او ګېټوې به ورته د بېرته تګ لاره ونه لري.
په لاره کې د لرې LAN مخکښه منزل دی، هیڅکله د تلیفون پېژندنه نه ده. د 10.60.0.0/24 لپاره لاره وايي چې هغه شبکه د تونل له لارې ترلاسه کړئ؛ دا نه وايي چې تلیفون باید کوم 10.60.0.x آدرس ولري، او تلیفون باید له هغو یو هم ونه لري. ثابت ټاکل د سرور خواته اړه لري، چېرې چې د متحرک ذخیرې سره نه شي ټکر کولی.
پر یوه پېژندنه دوه ناستې هماغه ټکر ښکاره کوي. که یو سند دوه ځله وصل شي او سرور دواړو ته یو ثابت آدرس واستوي، دوهمه ناسته لومړنۍ کاپي کوي، او حل جلا پېژندنې یا جلا ټاکل دي نه د مراجع خوا ته سمون.
ګړنۍ 4: ایا بل څه د تونل ځای نیولی دی؟
Android په یو وخت کې یوازې یو فعال VPN خدمت ته اجازه ورکوي. بله VPN اپلیکیشن، یا د هغه پروفایل لپاره چې نور کار نه کوي پرانیستی پرېښودل شوی always-on VPN ننوتل، کولی شي هغه ځای ونیسي مخکې له دې چې ستاسو OpenVPN مراجع establish() وبللي. بیا که پروفایل سم هم وي انټرفیس هیڅکله نه ښکاري، نو بله VPN قطع کړئ، always-on تنظیم بند کړئ او پروفایل ته له لاس وهلو مخکې بیا وصل شئ.
هغه خدمت چې پر Ethernet پل ټینګار کوي بله بنده کوڅه ده. پرته له root د Android اپلیکیشن کولی شي IP تونل جوړ کړي، نه پل شوی Ethernet برخه، نو هغه څه آدرس چې ولیکئ dev tap سرور به ونه چلوي؛ عملیات کوونکی باید لارښوونکی خدمت وړاندې کړي. کله چې ستونزه راپور کوئ، د مراجع نوم او نسخه، استول شوې انتخابونو ټولګه، ټوپولوژي او هغه دقیق ګام چې آدرس باید پکې ښکارېده شامل کړئ.
که څلور ګړنۍ ټولې بریالۍ شي او آدرس شته، بې ساری او سم ماسک شوی وي، د لارې پوښتنه عادي کیږي: سرور کوم مخکښې اجازه لري او مراجع باید څنګه یې محدودې کړي. له بل هر بدلون مخکې د تونل آدرس، شبکه یی ماسک او ټوپولوژي ولیکئ، ځکه چې عملیات کوونکی باید همدا درې ارزښتونه د سرور له نظره پرتله کړي.