Як зберегти читабельність плану адрес IPv6 для VPN і через рік
Читабельний план каже, який префікс належить якому майданчику і як повертаються відповіді. Записуйте ролі, нотацію, делегування та зворотні маршрути поруч із кожним записом.
Два питання вирішують, чи вартий план адрес свого місця: який префікс належить якому майданчику і як відповідь виходить із цього майданчика. Дайте відповідь на обидва за один раз, і супровідник зможе змінити піра, нікого не допитуючи. Усе інше в документі існує, щоб підтримувати ці дві відповіді. Те, що не підтримує жодної, — оздоба.
На що читач має відповісти, перш ніж торкнутися піра
Стиснення робить адреси охайними, а охайність — не структура. Структура — це знання, який діапазон делегував провайдер, який обрали ви, який є пулом клієнтів і який стоїть за майданчиком.
Пишіть для колеги, який прийде наступного кварталу і муситиме додати другий майданчик. Ніщо на сторінці не скаже, звідки взявся префікс, якщо запис цього не робить. Пропустіть це, і перша зміна перетвориться на археологію.
Що має нести кожен рядок плану
Чотири поля роблять запис перевірюваним: довжина префікса, власник, куди далі йде трафік і який компонент видає значення. Зіставте їх із робочою конфігурацією, і будь-яка розбіжність випливе сама. Наступний стрибок, націлений на тунель, видалений минулого місяця, виглядає хибним одразу, а не зливається з рештою.
Тримайте ролі в окремих рядках, навіть коли дві з них сьогодні ділять один префікс. Їхнє об'єднання перетворює подальший поділ на щось, що читається як новий розподіл, а не як виправлення.
| Entry | Fields to record | Why a reviewer needs it |
|---|---|---|
| Endpoint addresses | Prefix, owning side, session initiator | Firewall rules and peer config both read it |
| Tunnel interfaces | Prefix and length, next hop, interface name | Shows the path a packet actually takes |
| Client allocations | Pool range, size, distributing component | Shows room left before a redesign |
| Downstream networks | Prefix, site label, return route | Explains a reply that never arrives |
Де розходяться канонічний текст і синтаксис конфігурації
RFC 5952 закріплює єдину текстову форму адреси: малі літери, без провідних нулів і найдовша послідовність нульових груп, стиснута рівно один раз. Використовуйте її в нотатках, заявках і журналах змін, щоб два документи порівнювалися без перетворення. Читачі, які зустріли два написання однієї адреси, починають шукати різницю, якої немає. Послідовність тут дешева і прибирає цілий клас хибних тривог.
Файли конфігурації підкоряються власним правилам, і це не правила читабельності. Адреса в парі з портом потребує дужок навіть тоді, коли гола адреса не потребує, а копія з нотатки у файл конфігурації втрачає цю відмінність без попередження. Назвіть форму, яку використовує кожне поле, інакше план спричинить саме ту помилку перенесення, яку мав запобігти.
Дві нотації прийнятні, доки кожна позначена. Саме непозначене змішування й запрошує помилку.
Де з'являються перекривані діапазони та відсутні зворотні маршрути
Перекриття переживає інші помилки, бо ніщо не виглядає неправильним, доки два майданчики не відповідають за один діапазон. Позначте майданчик і генеруйте локально унікальні префікси документованою процедурою, а не копіюючи приклад.
Список клієнтів ніколи не пояснює, у який бік іде відповідь. Запишіть зворотний шлях шлюзу LAN поруч із діапазоном пірів, який несе тунель, і запис пояснить віддалену підмережу, що отримує запити й мовчить. Запустіть перевірки нижче на машині та порівняйте їх із записом. План, що суперечить ip -6 route, — це план, який люди перестають читати.
ip -6 route show default
ip -6 route get 2001:db8:2::10
ip -6 addr show dev wg0
Доступність — не дозвіл, і префікс ніколи не означає політику. Запишіть передбачуваний доступ поруч із маршрутом, до якого він застосовується. Інакше наступний читач сприйме адресу в плані як дозвіл дістатися до кожної служби за нею.
Як план переживає третій майданчик
Позначте кожен префікс як делегований, призначений локально або маршрутизований інакше. Для всього, що може рухатися, назвіть процес, який це робить. Потім перелічіть записи DNS і правила брандмауера, які мають змінитися в тому самому вікні, бо оновлення префікса, що зупиняється на маршрутизаторі, зроблено наполовину.
Після зміни дійдіть до ресурсу за кожною межею, якої торкнулася зміна, перш ніж редагувати документ. План, що описує мережу минулого місяця, гірший за відсутній, бо люди йому довіряють. Тримайте відкликані виділення в списку з датою, коли вони зникли, щоб ніхто випадково не видав їх знову. Секрети залишаються поза файлом; план пояснює мережу, а не відкриває її.
Зберігайте план там, де зміни проходять перевірку, поруч із конфігурацією, яку він описує. Документ, який ніхто не перечитує, гниє швидше за мережу, яку він відображає.