Планирајте приватне VPN адресне распоне пре него што се локације сударе
Преклапајући приватни распони ломе рутирање пре било ког тунела. Пописшите префиксе, одвојите клијентске базене од локалних мрежа локација и тестирајте са удаљене стране.
Две локације које обе користе 192.168.1.0/24 могу свака да дођу до интернета и ипак не могу да дођу једна до друге. Приступник не пријављује грешку; он инсталира једну руту за тај префикс и шаље сваки пакет оном партнеру који га је први затражио. Ништа у руковању, листи шифара ни метрици интерфејса не каже који партнер није у праву. Планирање адреса је део дизајна који то решава пре него што се било ко повеже.
Пописшите сваки простор који мора бити доступан
Запишите распоне које треба рутирати, не само оне које конфигуришете. То значи локалне мреже локација, клијентске базене VPN-а, cloud подмреже, мреже за управљање и оне изван опсега, лабораторијске сегменте и мреже са којих се корисници редовно повезују од куће. Потрошачки рутер који се испоручује као 192.168.1.0/24 није хипотетички, а исти префикс се појављује у хотелима и конференцијским салама. Попис је табела префикса, власника и намене и једини је артефакт који спречава да се исти распон додели двапут.
| 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 |
Додајте префиксе које очекујете током следеће године, јер план који покрива само данас пада на првој новој локацији. Означите у сваком реду ко га може мењати, не само ко га поседује.
Поновна употреба је оно што ово чини тешким: приватни простор је коначан и свака организација 10.0.0.0/8 сматра својим. План не може да обећа да гостујућа мрежа неће слетети на један од ваших префикса, па дизајн мора да каже шта се догоди кад се то догоди. Два правила раде већину посла. Ставите клијентске базене у један суседни блок који можете да сажмете и никада не додељујте распон који други тим већ рутира. Све остало је запис који неко одржава ажурним.
Зашто преклапање побеђује табелу рутирања
Рута је префикс плус следећи скок, а прослеђивање бира најдужи префикс који се поклапа. Када два партнера оба траже 192.168.1.0/24, табела држи један запис за њега, па саобраћај за обе локације излази кроз исти тунел. Друга локација није погрешно конфигурисана; она је недоступна јер прва одговара за исте адресе. Ниједна метрика не може да их раздвоји, јер се поклапање догађа пре него што се метрике консултују.
Квар је асиметричан и лако се погрешно прочита. Хостови на локацији А досежу приступник и неке сервисе, док хостови локације Б не одговарају ништа, а лог показује здрав тунел у оба смера. Тај образац је судар адреса, а не грешка аутентификације или заштитног зида, и потврђивање захтева један испис табеле упоређен са пописом.
Намерно одредите величину клијентског базена и распона локација
Клијентски базен VPN-а је распон који приступник дели адресу по адресу, па његова величина ограничава истовременост. /24 држи 254 употребљиве адресе, што је издашно за мали тим и тесно за огранак који покреће контејнере; /22 не кошта ништа додатно унутар приватног простора и уклања расправу. Држите базен суседним и подаље од сваке локалне мреже локације, да сажета рута према клијентима никада не прогута локацију. Резервишите распон чак и док је базен празан, јер незаписани распон је онај који ће доделити следећи инжењер.
Локације добијају распоне димензионисане за очекиване хостове плус раст, поравнате на граници која се чисто сажима. Намерни размаци између додела не коштају ништа и купују простор за касније агрегирање.
Затим проверите смер који људи заборављају: повратни пут. Сваки рутер локације треба руту до клијентског базена, а концентратор треба руту до сваког префикса локације коју опслужује. Уредна табела префикса без пута назад до базена и даље је покварен дизајн, а симптом је једносмерна веза која ништа не одговара. Држите оба смера у истој табели и прегледајте је кад се дода локација.
Превођење и пренумерисање решавају различите проблеме
Када преклапање већ постоји, постоје две поштене опције и једна непоштена. Пренумерисање трајно уклања судар и кошта прозор за одржавање плус сваку хардкодирану адресу коју сте заборавили. Превођење адреса пресликава приватни распон једне стране у други распон на ивици тунела, што оставља обе локације нетакнутима али додаје стање, ломи протоколе који уграђују адресе и чини логове тежим за читање. Непоштена опција је хост рута до једног сервера, која пролази један тест и пада на свему осталом.
Бирајте по контроли и трајању. Локација коју поседујете и можете да планирате припада путу пренумерисања; партнерска мрежа коју не можете да дирате, коришћена за једну апликацију, кандидат је за превођење са документованим мапирањем. Запишите то мапирање, јер превођење које постоји само унутар конфигурационе датотеке нестаје у тренутку кад се датотека замени.
Тестирајте са удаљене стране пре увођења
Тестирајте са мреже која не хостује приступник, јер сопствена локална мрежа приступника скрива већину грешака рутирања. Повежите клијента иза обичног кућног рутера, затим дођите до сервиса на свакој локацији и једног унутар клијентског базена. Тестирајте и обрнут смер, са хоста локације на клијента, јер повратни путеви падају независно. Тест који само пингује приступник доказује да је тунел подигнут и ништа више.
Држите распоне, власнике и мапирања превођења у једном заједничком запису који следећа локација чита пре него што ишта додели. Прегледајте га кад се дода локација и третирајте недокументован распон као дефект, а не као изненађење.
Запис је резултат. План који живи у сећању три особе пада први пут кад је једна од њих на одмору, а преклапање пронађено у продукцији кошта више него што би табела коштала.