IPv4 и IPv6 в одном VRF
- Проверено на версии — 2.2.1
- Требуется — изолированная сеть на VLAN
Изолированной сети нужны обе версии протокола в одном сегменте. Отдельный профиль для IPv6 заводить не нужно: сеть IPv6 добавляется в тот же сегмент и живёт в той же таблице маршрутизации. Значения — из сквозного примера.
Что получится
- Каждый агент получит адрес в сети
fd00:88::/64рядом со своим адресом IPv4. - Плавающий шлюз IPv6 будет переезжать вместе с шлюзом IPv4, а не независимо от него.
- Конфигурация балансировки сможет принимать соединения на VIP обоих семейств.
Настройка
- Откройте профиль
demoна редактирование. - В том же сегменте заполните:
- Сеть, IPv6 —
fd00:88::/64; - Плавающий шлюз, IPv6 —
fd00:88::1.
- Сеть, IPv6 —
- Поля IPv6 у узлов оставьте пустыми — адреса выдаст система.
- Сохраните профиль.
Адрес IPv6 повторяет хостовую часть адреса IPv4 того же узла: агент с 10.88.0.11 получит fd00:88::11. Так адреса обоих семейств легко сопоставить глазами.
Чтобы конфигурация балансировки принимала соединения по IPv6, добавьте её VIP fd00:88::100/128 в секции Отказоустойчивость (HA) рядом с VIP IPv4.
Для обмена маршрутами IPv6 добавьте в карточке BGP профиля второго соседа с адресом fd00:88::114 и его разрешёнными префиксами. Отдельного номера автономной системы для IPv6 не требуется — он общий.
Проверка
В интерфейсе системы
- В списке VRF у профиля
demoв столбце Сети появилась вторая сеть. - На вкладке Сеть → <сетевой агент> → IP/VIP у каждого агента есть адреса обоих семейств, а у одного из них — оба плавающих шлюза.
- На вкладке Соседи видны соседи IPv6 на интерфейсе
ens19.300. - Если настроен BGP, на вкладке Конфигурация появился блок
address-family ipv6 unicastс соседом и подставленным адресом источника.
Отказоустойчивость проверяется остановкой агента, который держит шлюзы: на вкладке IP/VIP второго агента должны появиться оба плавающих шлюза и оба VIP. Раздельного переключения быть не должно — адреса обоих семейств связаны в одну группу и переключаются вместе.
На машине
ip -6 route show vrf demo
ip vrf exec demo ping6 -c3 fd00:88::114
vtysh -c 'show bgp vrf demo ipv6 unicast'У принятых маршрутов IPv6 следующим узлом будет link-local адрес вида fe80::…, а не адрес соседа из сети сегмента. Это нормальное поведение BGP для IPv6, а не признак ошибки.
Частые ошибки
| Сообщение | Что означает | Что сделать |
|---|---|---|
gateway_ipv6: "fd00:99::1" вне подсети fd00:88::/64 узла slb-node-1 — клиенты сегмента не увидят шлюз вне своей подсети | Плавающий шлюз IPv6 задан вне сети сегмента | Возьмите адрес внутри сети IPv6 сегмента |
сеть IPv6 "10.88.0.0/24" не того семейства | В поле Сеть, IPv6 введена сеть IPv4 | Проверьте, в какое поле вводится значение |
NAT-политика открывает IPv6-назначения (...), но from_prefixes не содержит ни одного IPv6-префикса | В Cross-VRF политике перечислены назначения IPv6, а источники только IPv4 | Добавьте сеть IPv6 в Сети источников |
Адреса IPv6 не выдались ни одному агенту — проверьте, что Диапазон выдачи, IPv6 либо пуст, либо действительно лежит внутри указанной сети.