Ведите два журнала маршрутов в лаборатории IPsec: базовый и защищённый
Два журнала: один достигает партнёра, другой несёт частные префиксы. Следите за обоими и относитесь к перераспределению как к решению политики, а не как к короткому пути.
В лаборатории IPsec переплетаются два вопроса: как пакет достигает внешнего адреса партнёра и как он достигает частных сетей за этим партнёром. Они относятся к разным журналам, потому что на них отвечают разные процессы маршрутизации и они отказывают с разными симптомами. Ведите журнал базового уровня для внешних конечных точек и следующих переходов, которые к ним ведут. Ведите журнал верхнего уровня для защищённых префиксов, их шлюзов и предполагаемого пути через туннель. Большая часть путаницы в лаборатории возникает, когда маршрут, законно существующий в одном журнале, читают как доказательство о другом.
Два журнала, два вопроса
Журналы остаются достаточно короткими, чтобы их вести вручную, пока лаборатория мала, и именно тогда они наиболее полезны. Двух столбцов достаточно: что это за запись и как к ней попадают.
| Ledger | What it lists |
|---|---|
| Underlay | Each gateway's external address and the next hop that reaches it |
| Protected | Each private prefix, its local gateway and its intended path through the tunnel |
Записывайте оба направления. Префикс, который есть в журнале выхода и отсутствует в журнале возврата, создаёт туннель, который несёт запросы и теряет ответы. Это полусбойное состояние — самый частый результат в лаборатории, и его легко принять за проблему политики.
Запишите назначение раньше протокола
Начните с назначений, а не с протоколов. Для каждого шлюза запишите внешний адрес и следующий переход, который к нему ведёт. Затем запишите каждый частный префикс, его локальный шлюз и путь, который он должен пройти через туннель.
Сделать это до выбора протокола маршрутизации — значит сохранить честность обсуждения. Проект приходит с требованиями, а не с предпочтениями. Спор о том, какой протокол запускать, превращается тогда в вопрос, какое требование действительно сложное.
Статический или динамический — решается по журналу
Статическая маршрутизация на транспортной стороне в лаборатории обычно правильна: две конечные точки, один следующий переход, нечему сходиться. Частная сторона может разумно быть динамической, потому что префиксы приходят и уходят вместе с упражнением. Запуск одного протокола маршрутизации на транспортной стороне и другого на частной не обязывает перераспределять между ними, и отношение к взаимному перераспределению как к предпосылке IPsec — это место, где лаборатории начинают выдавать результаты, которые никто не может объяснить.
Решайте два журнала по отдельности и отметьте, какой динамический. Один ответ для обеих сторон обычно означает, что два вопроса так и не были по-настоящему разделены.
Перераспределение — граница политики
Там, где маршруты должны пересекаться, сделайте пересечение политикой с именованными префиксами, направлением, обработкой метрики и защитой от циклов. Списки префиксов и карты маршрутов дают все четыре, а теги сохраняют перераспределённый маршрут узнаваемым после потери исходного контекста. Читайте семантику внимательно, потому что они не взаимозаменяемы: запрет ACL внутри условия совпадения означает, что маршрут не совпадает и оценка продолжается, тогда как последовательность запрета в карте маршрутов полностью останавливает перераспределение маршрута. Руководство по картам маршрутов для перераспределения охватывает эти условия и изменения атрибутов, которые с ними связаны.
Затем сравните получившуюся таблицу маршрутизации с обоими журналами. Лаборатория, которая начинает пересылку после широкого перераспределения, продемонстрировала достижимость, а не замысел. Любая запись в таблице, которой нет ни в одном из журналов, означает, что экспорт шире проекта, и каждое последующее объявление наследует эту неоднозначность.
Держите пример безопасности настолько же актуальным, как маршрутизацию
Старые руководства, опирающиеся на слабые алгоритмы или общий демонстрационный секрет, — исторические наблюдения. Копировать их в лабораторию, которую вы собираетесь расширять, — это путь, которым слабые настройки по умолчанию выживают в производстве. Используйте политику, поддерживаемую платформой, и записывайте проверенную версию, потому что лаборатория живёт дольше учебника.
Примите один одобренный поток от хоста к хосту, его обратный трафик и одно назначение, которое должно оставаться вне области защиты. Сохраняйте источник маршрута и согласованные селекторы с каждым результатом, чтобы запись показывала, какой уровень доказан, а не какой уровень случайно работал.
Когда что-то ломается, журнал говорит, какой уровень открывать. Нет достижимости партнёра — это транспорт, нет внутреннего маршрута — это частный путь, а маршрут, существующий без подходящего селектора, — это политика. Три предложения, один диагноз, никаких догадок.