Dalawang cellular site na walang papasok na port: bumuo ng hub na gumagana
Kapag walang site na tumatanggap ng papasok na koneksyon na IPv4, hayaan ang dalawa na magsimula patungo sa isang naaabot na hub. Patakbuhin ang mga hakbang sa routing, pagpapasa at fallback sa ganitong pagkakasunod-sunod.
Ang dalawang site sa cellular uplink ay may parehong problema sa magkabilang direksyon: wala sa kanila ang makakatanggap ng hindi hiniling na koneksyon na IPv4, kaya wala sa kanila ang makakaganap bilang server sa direktang tunnel. Ang arkitekturang gumagana ay naglalagay ng naaabot na ikatlong partido sa gitna: bawat site ay tumatawag palabas at ang gitna ay nagpapasa lamang ng trapikong inaprubahan mo. Ang gitnang iyon ay maaaring router na pinamamahalaan mo o produktong nagpapakilala ng mga peer, at hindi ito pareho. Ang mga hakbang sa ibaba ay inayos upang ang bawat isa ay magbigay ng ebidensya bago umasa ang susunod dito.
Walang site na matatawagan, kaya pareho dapat tumawag palabas
Kumpirmahin ang limitasyon bago magdisenyo sa paligid nito. Kung bibigyan ng operator ng pribadong address ang WAN interface, walang port forwarding sa sariling router ng site ang makakagawa nitong naaabot, dahil nagaganap ang pagsasalin sa itaas. Maaaring may pampublikong IPv6 address sa parehong link at ganap na baguhin ang disenyo, kaya sinasaklaw ng pagsusuri ang dalawang pamilya. Isulat ang sagot para sa bawat site, dahil bihirang magkaroon ng magkatulad na limitasyon ang dalawa kahit magkapareho sila ng operator.
Ang karaniwang cellular na kaso ay mukhang address mula sa isinaling saklaw ng operator na may default na ruta sa pamamagitan nito. Hindi ito depektong dapat ayusin; ito ang dahilan kung bakit may hub. Ang hinahanap mo ay anumang address na maaabot ng ikatlong partido nang hindi muna nagsasalita ang site.
Dalawang command ang sumasagot sa tanong sa addressing ng site na nasa harap mo. Patakbuhin ang mga ito sa router ng site, hindi sa laptop sa likod nito:
ip -4 addr show scope global
ip -6 addr show scope globalSino ang nagpapakilala ng mga peer, at sino ang nagdadala ng mga packet
Ang pagpapakilala at transportasyon ay magkahiwalay na gawain na kadalasang pinagsasama ng mga produkto nang hindi ginagawang nakikita ang hangganan. Ang mekanismo ng pagkikita ay tumutulong sa dalawang peer na makahanap ng kandidatong landas; ang relay ang nagdadala ng kanilang mga packet kapag walang direktang landas. Ang pagbili ng serbisyong nagpapakilala ng mga peer ay hindi nagbibigay sa iyo ng router, at ang pagkakaibang iyon ang nagpapasya kung kailangan ng disenyo ng hub.
May sariling bokabularyo ang traversal, at ang mga salita ay naglalarawan ng tungkulin, hindi garantiya. Ang espesipikasyon ng ICE ay naglalarawan ng mga kandidato at pagsusuri ng konektibidad, inilalarawan ng STUN ang isang paraan upang matutunan ang tungkol sa pagsasalin ng address, at inilalarawan ng TURN ang transportasyong dumadaan sa relay para sa mga aplikasyong nagpapatupad nito. Wala sa mga mekanismong ito ang lumilitaw sa karaniwang gateway dahil itinuro mo ito sa isang address ng pagtuklas. Beripikahin ang traversal bilang kakayahan ng produkto, at ipagpalagay na may relay hanggang may pagsubok na magpakita ng kabaligtaran.
Isang ruta bawat site, pag-aari ng isang peer
Kailangan ng hub ng isang tunnel bawat site, hiwalay na LAN prefix sa likod ng bawat isa, at ruta para sa bawat prefix na nagpapangalan sa may-ari nito. Sa halimbawa ang hub ay 10.61.0.1, ang site A ay 10.61.0.11 na may LAN 10.60.10.0/24, at ang site B ay 10.61.0.12 na may LAN 10.60.20.0/24. Bawat ruta sa ibaba ay tumuturo sa peer na nagmamay-ari ng prefix, hindi sa interface ng tunnel:
ip route add 10.60.10.0/24 via 10.61.0.11 dev wg0
ip route add 10.60.20.0/24 via 10.61.0.12 dev wg0
sysctl net.ipv4.ip_forward
ip route get 10.60.20.55 from 10.60.10.77Dapat nakabukas ang pagpapasa, kung hindi ay tumitigil ang mga packet sa hub nang walang error na nagtuturo ng dahilan. Sinasagot ng huling command ang tunay na tanong, dahil itinatanong nito kung aling landas ang tatahakin ng packet mula sa LAN ng site A patungo sa LAN ng site B habang kasama ang pinagmulan sa paghahanap. Ituring na ebidensya ang paghahanap na nagpapangalan sa interface ng tunnel, at ang bumabagsak sa default na ruta ay kulang na ruta, hindi misteryo. Pagkatapos ay sadyang limitahan ang transit, dahil ang hub na nagpapasa sa pagitan ng bawat peer ay ginagawang flat na network ang dalawang site at hindi na naaangkop ang patakaran sa pag-access na akala mo ay mayroon ka.
Magpasya rin kung saan nagtatapos ang encryption. Kapag hawak ng hub ang dalawang dulo ng tunnel, sumasama ang operator ng makinaryang iyon at ang workload nito sa modelo ng tiwala at kakayahang magamit, at nagiging bahagi ng landas ang bandwidth nito.
Panatilihing buhay ang bawat mapping sa pamamagitan ng operator
Bawat site ay nagsisimula ng sariling tunnel, at bawat isa ay dapat panatilihing buhay ang mapping ng pagsasalin kung hindi ay makakalimutan ito ng operator. Pinapanatili ng keepalive sa panig na nagsisimula ang mapping na iyon sa pagitan ng mga handshake. Limitahan ang mga pinapayagang prefix sa address ng hub at sa malayong LAN, upang ang kompromisadong peer ay hindi makakapag-claim ng prefix na hindi pag-aari nito:
[Peer]
PublicKey = <hub public key>
Endpoint = 192.0.2.10:51820
AllowedIPs = 10.61.0.1/32, 10.60.20.0/24
PersistentKeepalive = 25Salaminin ang bloke sa kabilang site gamit ang sarili nitong malayong prefix, at labanan ang tuksong payagan ang buong saklaw ng tunnel. Ang handshake na humihinto at nagsisimulang muli mula sa bagong source port ay lagda ng nag-expire na mapping, at ang mga timestamp ng handshake ay ebidensya na nangyari ito. Ang agwat na mas maikli kaysa timeout ng operator ay pumipigil sa pag-expire sa halip na ayusin ito pagkatapos. Kapag binago ng operator ang pag-uugali nito sa pagsasalin, asahan na magbabago rin ang mga oras na iyon kasama nito.
Patunayan ang dalawang direksyon, pagkatapos patunayan ang pagbangon
Ang beripikasyon ay may direksyon, kaya ang ping mula A patungong B ay nagpapatunay ng kalahati ng disenyo at wala tungkol sa rutang pabalik. Suriin ang rutang pabalik gamit ang parehong paghahanap na may kamalayan sa pinagmulan sa hub, pagkatapos ulitin ang pagsubok mula sa kabilang panig. Kasama rin sa ebidensya ang mga sariwang handshake, dahil ang tunnel na walang ginagawa nang isang oras ay maaaring sumusubok ng lumang mapping:
wg show wg0 latest-handshakes
ping -c 3 10.60.20.55
traceroute -n 10.60.20.55Pagkatapos subukan ang kabiguan na inaasahan mo, hindi ang tagumpay na gusto mo. I-restart ang uplink ng isang site at kumpirmahin na bumabalik ang tunnel nang walang taong humahawak sa alinmang dulo, dahil ang disenyong nangangailangan ng operator pagkatapos ng bawat pagbabago sa operator ay hindi pa tapos. Itala ang pangunahing landas, ang alternatibong IPv6 kapag mayroon, at ang pag-uugali kapag hindi available ang hub. Bahagi na ngayon ng modelo ng kakayahang magamit mo ang hub, kaya isulat ito sa halip na matuklasan ito habang may outage.