د دوو سایټونو WireGuard هب لپاره د IPv6 پلان: پریفکس، همکاران، لارې
د دوو LAN لپاره یو خصوصي IPv6 هب وکاروئ: پریفکس وټاکئ، د تونل پتې خوندي کړئ، بیا AllowedIPs ته اجازه ورکړئ چې څرګند کړي کوم همکار کومه فرعي شبکه لري۔
دوه LAN، یو WireGuard هب او د IPv6 پتو یو پلان چې باید د درې جلا پوښتنو ځواب ورکړي: کوم پریفکس، کومه پته د کوم راؤټر ده او کوم همکار کومه فرعي شبکه لري۔ له دې یو هم غلط وي، هغه تونل جوړیږي چې لاس ورکوي خو هېڅ نه لارښوونه کوي۔ لاندې پلان همدغه ترتیب کې یو خصوصي دوه سایټه ډیزاین ته ګوري۔ دا په قصداً توګه IPv6 انټرنیټ لاسرسی نه برابروي۔
پریکړه وکړئ چې پریفکس د څه لپاره دی
کله چې هدف د سایټونو ترمنځ خصوصي لاسرسی وي، له fd00::/8 څخه یو ځانګړی ځایي پریفکس طبیعي انتخاب دی۔ دا د هر ځای لپاره د خدماتو ورکوونکي له پامه پرته ثابت پاتې کیږي او په نړیواله لارښوونې جدول کې نه اعلانیږي، نو ستاسو داخلي شمېرنه انټرنیټ ته نه شي لیک کېدای۔
همدا ځانګړنه محدودیت هم ده۔ ULA هېڅ عامه بیرته راستنېدونکې لاره نه ورکوي، ځکه چې هېڅ پورتني چمتوکوونکی نه پوهیږي چې دا ستاسو ګیټوې ته باید ولارښوول شي۔ که اړتیا کې IPv6 انټرنیټ وتل شامل وي، تاسو ته اړتیا ده له هغه چمتوکوونکي څخه ځانګړنه چې دا ستاسو خواته لارښوونه کوي، او دا د خپل پریفکس اندازې سره جلا ډیزاین پریکړه ده۔
دا مه فرض کړئ چې هر ځای پرځای کول /48 ته اړتیا لري۔ RFC 6177 د وروستي سایټ له یوې لازمي اندازې څخه لاس واخیست، او سمه اندازه ستاسو د چلولو شبکو شمېر ته اړه لري۔ ULA د RFC 4193 بهیر سره جوړ کړئ، نه دا چې داسې پریفکس جوړ کړئ چې بله اداره یې هم کارولی شي۔ پایله د هر وسیلې له تنظیم مخکې د پتو پلان کې ولیکئ، ځکه چې هغه پریفکس چې چا نه دی ثبت کړی هغه پریفکس دی چې یو څوک به یې بیا وکاروي۔
پریفکس په رولونو ووېشئ
لاندې بېلګه fd7c:2e91:4a00::/48 کاروي، او جدول د سایټ له مخې نه، بلکې د دې له مخې ترتیب شوی چې هر بلاک چېرته لیکل کیږي۔ ارزښتونه د بېلګې په توګه وګڼئ او د هر څه له ځای پرځای کولو مخکې خپل جوړ کړئ۔
| Where it is written | What appears there | Block used | What it establishes |
|---|---|---|---|
| Hub wg0.conf, interface address | A single host address on the tunnel | fd7c:2e91:4a00:ff00::1/128 | The hub's own tunnel identity |
| Hub wg0.conf, Site A peer | Two ranges in one AllowedIPs line | ::2/128 and :10::/64 | That A owns its tunnel address and its LAN |
| Hub wg0.conf, Site B peer | Two ranges in one AllowedIPs line | ::3/128 and :20::/64 | That B owns its tunnel address and its LAN |
| Site A wg0.conf, interface address | A single host address on the tunnel | fd7c:2e91:4a00:ff00::2/128 | A's identity as the hub sees it |
| Site B wg0.conf, interface address | A single host address on the tunnel | fd7c:2e91:4a00:ff00::3/128 | B's identity as the hub sees it |
د LAN بلاکونه /64 دي ځکه چې عادي SLAAC د 64 بټ انټرفیس پېژندونکي تمه لري۔ LAN د یوې کوچنۍ بلاک په توګه ووېشل په ډېرو کوربه وسیلو کې هغه انګېرنه ماتوي، او په خصوصي پلان کې د پتو سپما لپاره عملیاتي لګښت ارزښت نه لري۔ دواړه LAN بلاکونه د /48 له منځ څخه راځي، چې ټیټه ساحه د وروستیو سایټونو لپاره خالي پریږدي۔
د تونل پتې اداري زیرمه ده، نه په لینک کې شبکه۔ هر انټرفیس ترې یوه /128 اخلي، نو هېڅ کوربه په تونل کې شریکه فرعي شبکه نه انګیري او ګاونډی موندنه هغه ځای نه چلیږي چې اړتیا نه وي۔ رولونه جلا وساتئ او د ادارې د پتو پلان کې یې ثبت کړئ ترڅو وروستی سایټ بلاک بیا ونه کاروي۔
هر راؤټر ته یوه د تونل پته ورکړئ
هر راؤټر ته یوه /128 وټاکئ او د فعال هب موجوده کیلي او پای ټکي وساتئ۔ لاندې درې ارزښتونه یوازې په کوربه برخه کې توپیر لري۔
Hub: Address = fd7c:2e91:4a00:ff00::1/128
Site A: Address = fd7c:2e91:4a00:ff00::2/128
Site B: Address = fd7c:2e91:4a00:ff00::3/128
دا /128 هغه یوازینۍ پته بیانوي چې دې انټرفیس ته ټاکل شوې ده۔ دا نه وایي چې همکار څو منزلونو ته لارښوونه کولی شي، ځکه چې لاسرسی په AllowedIPs کې څرګندیږي نه د انټرفیس پریفکس کې۔
هر سایټ راؤټر په خپل LAN بلاک کې پته او د هغې د وېش لاره هم غواړي، معمولاً د SLAAC لپاره راؤټر اعلانونه۔ WireGuard هغه اعلانونه ستاسو په استازیتوب نه لیږي او دوه LAN نه یوځای کوي۔ د سایټ راؤټر په دواړو لارو کې راؤټر دی۔
د فرعي شبکې مالکیت په AllowedIPs کې کیږدئ
د سایټ A لپاره د هب همکار ننوتنه د A د تونل پته او د A LAN مالکیت لري، او همدا جوړه بشپړ مالکیت بیان دی۔ په هغه همکار برخه کې بل څه اړتیا نه لري چې سایټ بیان کړي۔
AllowedIPs = fd7c:2e91:4a00:ff00::2/128, fd7c:2e91:4a00:10::/64
د سایټ B همکار ننوتنه د سمونکې جوړې مالکیت لري، او دلته همغږي له لنډیز څخه ډېره مهمه ده۔ دواړه کرښې یوځای ولولئ او د مالکیت وېش په یوه کتنه ښکاري۔
AllowedIPs = fd7c:2e91:4a00:ff00::3/128, fd7c:2e91:4a00:20::/64
دا دوه جلا همکار برخې دي، نه دوه لیستونه چې د یوه همکار لپاره سیالي کوي۔ WireGuard AllowedIPs په دواړو لارو کاروي: د وتونکي منزل لپاره همکار ټاکي، او هغه راتلونکې پاکټ ردوي چې سرچینه یې د هغه همکار له ټاکل شوې ساحې سره نه ځي چې پاکټ یې ډیکریپټ کړ۔ دواړو همکارانو ته ټول /48 ورکول به هغه دوهمه څېړنه بنده کړي او دا به روښانه نه وي چې کوم سایټ کوم بلاک لري۔ همدا توپیر غلطه سرچینه پته د خاموشې منلو پرځای ښکاره کوي۔
هر سایټ یوازې هغه منزلونو ته اړتیا لري چې د هغه د هب همکار له لارې رسېدونکي وي: سایټ A د هب پته، د سایټ B د تونل پته او د B LAN لیست کوي، او سایټ B برعکس ټولګه لیست کوي۔ لیستونه په قصداً ناهمغږ دي، ځکه چې هر راؤټر د ټوپولوژي بېله خوا ګوري۔ دواړه د پتو له پلان څخه ولیکئ، نه د بل سایټ له تنظیماتو، ځکه چې همداسې زوړه ساحه بیا شمېرنه تېروي۔
د wg-quick سره دا ساحې لارې هم جوړوي۔ د systemd-networkd یا لاسي تنظیم سره سمې لارې پخپله ورزیاتې کړئ؛ که نه، تونل هغه پاکټونه وړي چې کرنل هېڅکله هغې ته نه لیږي۔
لېږد بشپړ کړئ او دواړه لارې وازموئ
په هب او دواړو سایټ راؤټرونو کې IPv6 لېږد فعال کړئ، او د لېږد په پالیسۍ کې اړینې بین السایټي خدمات منئ۔ ICMPv6 Packet Too Big پیغامونه د کارېدو وړ وساتئ، ځکه چې غورځول یې د لارې MTU موندنه ماتوي او د لویو لېږدونو داسې بندښتونه جوړوي چې د غوښتنلیک د خرابیو په څېر ښکاري۔ هغه هب چې پرته د فایر وال اجازې لېږد کوي، پاکټ د لارښوونې او تونل ترمنځ غورځوي۔ دا د ناکامۍ حالت د پېژندلو ارزښت لري، ځکه چې تونل روان پاتې کیږي او یوازې ځینې جریانونه مري۔
sysctl net.ipv6.conf.all.forwarding
ip -6 route
ping -6 -c 3 fd7c:2e91:4a00:20::1
د سایټ A له کوربه څخه د سایټ B کوربه ته او بیا برعکسې لارې ته وازموئ۔ د هب د تونل پتې ته ping یوازې لومړی ټوپ ازموي او حتی کله چې LAN لارې غلطې وي بریالی کیږي۔ د کوربه څخه کوربه جریان هغه دی چې پلان ثابتوي۔
باندې WireGuard اړیکه کولی شي په IPv4 باندې چلېږي پداسې حال کې چې دننه ترافیک IPv6 وي، او دا خپلواکي د کډوالۍ پر مهال ګټوره ده۔ که وروسته نړیوال IPv6 وتل ورزیات شي، د چمتوکوونکي ځانګړنه، د سرچینې پتې ټاکنه او بیرته لارښوونه د نوي ډیزاین ګام په توګه بیا وګورئ؛ پورتنۍ خصوصي پلان د سایټ ترمنځ ترافیک لپاره معتبر پاتې کیږي۔