Dy site celulare pa porte hyrëse: ndërtoni një hub që funksionon
Kur asnjëra site nuk pranon lidhje IPv4 hyrëse, lërini të dyja të nisin drejt një hubi të arritshëm. Ekzekutoni hapat e rrugëtimit, përcjelljes dhe alternativës në këtë rend.
Dy site në lidhje celulare përballen me të njëjtin problem në të dy drejtimet: asnjëra nuk mund të pranojë një lidhje IPv4 të pakërkuar, prandaj asnjëra nuk mund të luajë rolin e serverit në një tunel të drejtpërdrejtë. Arkitektura që funksionon vendos një palë të tretë të arritshme në mes: çdo site lidhet nga jashtë dhe mesi përcjell vetëm trafikun që ju miratoni. Ky mes mund të jetë një ruter që e menaxhoni vetë ose një produkt që prezanton bashkëmoshatarët, dhe këto nuk janë e njëjta gjë. Hapat më poshtë janë renditur ashtu që secili të prodhojë provë përpara se hapi tjetër të varet prej tij.
Asnjëra site nuk mund të thirret, prandaj të dyja duhet të thirrin nga jashtë
Konfirmoni kufizimin përpara se të projektoni rreth tij. Nëse operatori i jep ndërfaqes WAN një adresë private, asnjë përcjellje porte në ruterin e vetë sites nuk do ta bëjë të arritshme, sepse përkthimi ndodh më lart. Një adresë publike IPv6 mund të ekzistojë në të njëjtën lidhje dhe ta ndryshojë projektin plotësisht, prandaj kontrolli mbulon të dyja familjet. Shkruani përgjigjen për çdo site, sepse të dyja rrallë kanë kufizime identike edhe kur ndajnë të njëjtin operator.
Rasti i zakonshëm celular duket si një adresë nga diapazoni i përkthyer i operatorit me një rrugë të paracaktuar përmes saj. Ky nuk është defekt për t'u riparuar; ky është arsyeja pse ekziston hubi. Ajo që kërkoni është çdo adresë që një palë e tretë mund ta arrijë pa folur site-i i pari.
Dy komanda i përgjigjen pyetjes së adresimit për site-in përpara të cilit qëndroni. Ekzekutojini në ruterin e sites, jo në një laptop pas tij:
ip -4 addr show scope global
ip -6 addr show scope globalKush i prezanton bashkëmoshatarët dhe kush i mbart paketat
Prezantimi dhe transporti janë detyra të veçanta që produktet shpesh i bashkojnë pa e bërë kufirin të dukshëm. Një mekanizëm takimi i ndihmon dy bashkëmoshatarë të gjejnë një rrugë kandidate; një rele i mbart paketat e tyre kur nuk ekziston rrugë e drejtpërdrejtë. Blerja e një shërbimi që prezanton bashkëmoshatarë nuk ju jep një ruter, dhe ky ndryshim vendos nëse projektit i duhet fare hub.
Kalimi ka fjalorin e vet, dhe fjalët përshkruajnë role, jo garanci. Specifikimi ICE përshkruan kandidatët dhe kontrollet e lidhshmërisë, STUN përshkruan një mënyrë për të mësuar rreth përkthimit të adresave, dhe TURN përshkruan transportin e përcjellë për aplikacionet që e zbatojnë atë. Asnjë prej këtyre mekanizmave nuk shfaqet në një portë të zakonshme sepse e keni drejtuar atë drejt një adrese zbulimi. Verifikoni kalimin si aftësi të produktit dhe supozoni rele derisa një test të tregojë të kundërtën.
Një rrugë për çdo site, në pronësi të një bashkëmoshatari
Hubit i duhet një tunel për çdo site, një prefiks LAN i veçantë pas secilit dhe një rrugë për çdo prefiks që përmend pronarin e tij. Në shembull hubi është 10.61.0.1, site A është 10.61.0.11 me LAN 10.60.10.0/24, dhe site B është 10.61.0.12 me LAN 10.60.20.0/24. Secila rrugë më poshtë tregon bashkëmoshatarin që zotëron prefiksin, jo ndërfaqen e tunelit:
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.77Përcjellja duhet të jetë e aktivizuar, përndryshe paketat ndalen në hub pa asnjë gabim që tregon shkakun. Komanda e fundit i përgjigjet pyetjes reale, sepse pyet se cilën rrugë do të merrte një paketë nga LAN-i i sites A në LAN-in e sites B me burimin të përfshirë në kërkim. Trajtojeni një kërkim që përmend ndërfaqen e tunelit si provë dhe një që bie në rrugën e paracaktuar si një rrugë që mungon, jo si një mister. Pastaj kufizoni transitin me qëllim, sepse një hub që përcjell mes çdo bashkëmoshatari i kthen dy site në një rrjet të sheshtë dhe politika e aksesit që mendonit se kishit nuk zbatohet më.
Vendosni edhe ku mbaron kriptimi. Kur hubi mban të dy skajet e tunelit, operatori i atij makinerie dhe ngarkesa e tij e punës i bashkohen modelit të besimit dhe disponueshmërisë, dhe gjerësia e brezit të tij bëhet pjesë e rrugës.
Mbani çdo mapim të gjallë përmes operatorit
Çdo site fillon tunelin e vet, dhe secili duhet të mbajë mapimin e përkthimit të gjallë, përndryshe operatori e harron atë. Një mesazh mbajtjeje gjallë në anën që nis e ruan atë mapim mes shtrëngimeve të duarve. Kufizoni prefikset e lejuara në adresën e hubit dhe LAN-in e largët, që një bashkëmoshatar i komprometuar të mos mund të kërkojë një prefiks që nuk e zotëron:
[Peer]
PublicKey = <hub public key>
Endpoint = 192.0.2.10:51820
AllowedIPs = 10.61.0.1/32, 10.60.20.0/24
PersistentKeepalive = 25Pasqyroni bllokun në site-in tjetër me prefiksin e vet të largët, dhe kundërshtoni dëshirën për të lejuar të gjithë diapazonin e tunelit. Një shtrëngim duarsh që ndalon dhe rifillon nga një portë e re burimore është nënshkrimi i një mapimi të skaduar, dhe vulat kohore të shtrëngimit janë prova se ka ndodhur. Një interval më i shkurtër se afati i operatorit e parandalon skadimin në vend që ta rregullojë më vonë. Kur operatori ndryshon sjelljen e përkthimit, prisni që ato kohë të ndryshojnë bashkë me të.
Provoni të dy drejtimet, pastaj provoni rikuperimin
Verifikimi është i drejtuar, prandaj një ping nga A në B provon gjysmën e projektit dhe asgjë rreth rrugës së kthimit. Kontrolloni rrugën e përgjigjes me të njëjtin kërkim të vetëdijshëm për burimin në hub, pastaj përsëritni testin nga ana tjetër. Shtrëngimet e duarve të freskëta gjithashtu i përkasin provës, sepse një tunel i papunë për një orë mund të testojë një mapim të vjetër:
wg show wg0 latest-handshakes
ping -c 3 10.60.20.55
traceroute -n 10.60.20.55Pastaj provoni dështimin që prisni, jo suksesin që dëshironi. Rinisni lidhjen e një site dhe konfirmoni se tuneli kthehet pa i prekur një njeri asnjë skaj, sepse një projekt që kërkon një operator pas çdo ndryshimi te operatori është i papërfunduar. Shënoni rrugën kryesore, alternativën IPv6 kur ekziston, dhe sjelljen kur hubi nuk është i disponueshëm. Hubi tani është pjesë e modelit tuaj të disponueshmërisë, prandaj shkruajeni atë në vend që ta zbuloni gjatë një ndërprerjeje.