Planeerige privaatsed VPN-aadressivahemikud enne, kui saidid kokku põrkavad
Kattuvad privaatsed vahemikud lõhuvad marsruutimise enne igasugust tunnelit. Inventeerige eesliited, mõõtke kliendikogumid saidi LAN-idest eraldi ja testige kaugemalt poolt.
Kaks saiti, mis mõlemad kasutavad 192.168.1.0/24, võivad kumbki internetini jõuda ja ikkagi mitte teineteiseni. Lüüs ei teata viga; see paigaldab sellele eesliitele ühe marsruudi ja saadab iga paketi sellele partnerile, kes selle esimesena nõudis. Miski käepigistuses, šifrite loendis ega liidese metrikas ei ütle, milline partner on vale. Aadresside planeerimine on see disaini osa, mis selle enne kellegi ühendumist ära otsustab.
Inventeerige iga ruum, millele peab ligi saama
Kirjutage üles vahemikud, mida tuleb marsruutida, mitte ainult need, mida te konfigureerite. See tähendab saidi LAN-e, VPN-i kliendikogumeid, pilve alavõrke, haldus- ja ribaväliseid võrke, laborisegmente ja võrke, kust kasutajad tavaliselt kodust ühenduvad. Tarbijaruuter, mis tarnitakse 192.168.1.0/24-na, ei ole hüpoteetiline, ja sama eesliide esineb hotellides ja konverentsikeskustes. Inventuur on tabel eesliitest, omanikust ja otstarbest ning see on ainus artefakt, mis takistab sama vahemikku kaks korda välja anda.
| Prefix | Purpose | Owner |
|---|---|---|
| 10.20.0.0/16 | site LANs | network team |
| 10.20.100.0/22 | VPN client pool | remote access |
| 10.20.200.0/24 | management | operations |
Lisage eesliited, mida järgmise aasta jooksul ootate, sest ainult tänast kattev plaan ebaõnnestub esimesel uuel saidil. Märkige igas reas, kes seda muuta saab, mitte ainult kes seda omab.
Just korduskasutus teeb selle raskeks: privaatne ruum on lõplik ja iga organisatsioon peab 10.0.0.0/8 oma omaks. Plaan ei saa lubada, et mõni tulevane külalis-LAN ei maandu ühele teie eesliitest, seega peab disain ütlema, mis juhtub, kui see juhtub. Kaks reeglit teevad suurema osa tööst. Pange kliendikogumid ühte külgnevasse plokki, mida saate kokku võtta, ja ärge kunagi määrake vahemikku, mida teine meeskond juba marsruudib. Kõik muu on register, mida keegi ajakohasena hoiab.
Miks kattuvus võidab marsruutimistabeli
Marsruut on eesliide pluss järgmine hüpe ja edastamine valib pikima sobiva eesliite. Kui kaks partnerit nõuavad mõlemad 192.168.1.0/24, hoiab tabel selle jaoks ühte kirjet, nii et mõlema saidi liiklus väljub sama tunnelit pidi. Teine sait ei ole valesti konfigureeritud; see on kättesaamatu, sest esimene vastab samadele aadressidele. Ükski metrika ei saa neid eraldada, sest vaste tekib enne, kui metrikatelt küsitakse.
Tõrge on asümmeetriline ja kergesti valesti loetav. Saidi A hostid jõuavad lüüsini ja mõne teenuseni, samal ajal kui saidi B hostid ei vasta millelegi, ja logi näitab mõlemas suunas tervet tunnelit. See muster on aadresside kokkupõrge, mitte autentimise ega tulemüüri viga, ja selle kinnitamiseks kulub üks tabeli väljavõte, mida võrreldakse inventuuriga.
Mõõtke kliendikogum ja saidi vahemikud teadlikult
VPN-i kliendikogum on vahemik, mida lüüs jagab ühe aadressi kaupa, seega selle suurus piirab samaaegsust. /24 mahutab 254 kasutatavat aadressi, mis on väikese meeskonna jaoks helde ja konteinereid käitava harukontori jaoks kitsas; /22 ei maksa privaatses ruumis midagi lisaks ja kaotab vaidluse. Hoidke kogum külgnev ja igast saidi LAN-ist eemal, et klientide suunas suunatud koondmarsruut ei neelaks kunagi saiti. Broneerige vahemik ka siis, kui kogum on tühi, sest kirjutamata vahemik on see, mille järgmine insener määrab.
Saidid saavad vahemikud, mis on mõõdetud oodatavate hostide pluss kasvu järgi, joondatud piirile, mis koondub puhtalt. Teadlikud lüngad määramiste vahel ei maksa midagi ja ostavad ruumi hilisemaks agregeerimiseks.
Seejärel kontrollige suunda, mille inimesed unustavad: tagasiteed. Iga saidi ruuter vajab marsruuti kliendikogumini ja kontsentralisaator vajab marsruuti igasse saidi eesliitesse, mida ta teenindab. Korralik eesliidete tabel ilma teeta kogumini on endiselt katkine disain ja sümptom on ühesuunaline ühendus, mis ei vasta millelegi. Hoidke mõlemad suunad samas tabelis ja vaadake see üle iga kord, kui sait lisandub.
Tõlkimine ja ümbernumerdamine lahendavad erinevaid probleeme
Kui kattuvus juba on, on kaks ausat valikut ja üks ebaaus. Ümbernumerdamine kõrvaldab kokkupõrke jäädavalt ja maksab hooldusakna pluss iga kõvakodeeritud aadressi, mille unustasite. Aadressitõlge vastendab ühe poole privaatse vahemiku teise vahemikku tunneliserval, mis jätab mõlemad saidid puutumata, kuid lisab oleku, lõhub aadresse sisaldavad protokollid ja muudab logid raskemini loetavaks. Ebaaus valik on hostmarsruut ühte serverisse, mis läbib ühe testi ja ebaõnnestub kõiges muus.
Valige kontrolli ja eluea järgi. Sait, mida te omate ja saate ajastada, kuulub ümbernumerdamise teele; partneri võrk, mida te ei saa puutuda ja mida kasutatakse ühe rakenduse jaoks, on kandidaat tõlkimiseks dokumenteeritud vastendusega. Kirjutage see vastendus üles, sest tõlge, mis eksisteerib ainult konfiguratsioonifailis, kaob hetkel, mil fail asendatakse.
Testige kaugemalt poolt enne juurutamist
Testige võrgust, mis lüüsi ei majuta, sest lüüsi enda LAN varjab enamiku marsruutimisvigadest. Ühendage klient tavalise koduruuteri taha ja jõudke seejärel teenuseni igal saidil ning üheni kliendikogumi sees. Testige ka vastassuunda, saidi hostist kliendini, sest tagasiteed ebaõnnestuvad iseseisvalt. Test, mis ainult pingib lüüsi, tõestab, et tunnel on püsti, ja mitte midagi enamat.
Hoidke vahemikud, omanikud ja tõlkevastendused ühes jagatud registris, mida järgmine sait loeb enne millegi määramist. Vaadake see üle, kui sait lisandub, ja kohelge dokumenteerimata vahemikku defektina, mitte üllatusena.
Register on tulem. Plaan, mis elab kolme inimese mälus, ebaõnnestub esimesel korral, kui üks neist on puhkusel, ja tootmises leitud kattuvus maksab rohkem, kui tabel oleks maksnud.