The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"IPv6 SLAAC, два роутера и выбор SRC адреса для default маршрута"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Маршрутизация, NAT / Linux)
Изначальное сообщение [ Отслеживать ]

"IPv6 SLAAC, два роутера и выбор SRC адреса для default маршрута"  +/
Сообщение от Аноним (-), 03-Сен-21, 05:23 
Есть локальная сеть, в ней есть два роутера, оба раздают адреса с помощью SLAAC (Адреса упрощены для читаемости):
- Роутер1, fe80::1111, подсеть 2002:0:0:aaaa::/64, маршрут    ::/0 в интернет
- Роутер2, fe80::2222, подсеть  300:0:0:bbbb::/64, маршрут 200::/7 в yggdrasil

Соответственно клиент в сети получает разных 2 адреса (+1 link-local) и соответствующие мршруты:
$ ip addr show dev wlp1s0
3: wlp1s0:
    inet6  300:0:0:bbbb::cccc/64 scope global dynamic noprefixroute
    inet6 2002:0:0:aaaa::dddd/64 scope global dynamic noprefixroute
    inet6 fe80::0123:4567:9abc:def0/64 scope link noprefixroute

$ ip -6 route
300:0:0:bbbb::/64 dev wlp1s0 proto ra metric 600 pref medium
200::/7 via fe80::2222 dev wlp1s0 proto ra metric 600 pref medium
2002:0:0:aaaa::/64 dev wlp1s0 proto ra metric 600 pref medium
fe80::/64 dev wlp1s0 proto kernel metric 600 pref medium
default via fe80::1111 dev wlp1s0 proto ra metric 20600 pref low

Проблема же заключается в том, для большинства исходящих пакетов по default маршруту SRC адрес выбирается 300:0:0:bbbb::cccc, с которым очевидно ничего работать не будет, а должен бы 2002:0:0:aaaa::dddd. Например:

$ ip route get 2001:4860:4860::8888
2001:4860:4860::8888 from :: via fe80::1111 dev wlp1s0 proto ra src 300:0:0:bbbb::dddd metric 20600 pref low

Т.е. пакет уходит в интернет через роутер1, но с адресом из подсети роутера2 (как я понял).

В виде одноразового костыля подходит ручное и явное указание SRC для default маршрута, но тогда SLAAC перестаёт быть stateless и теряет смысл, да и не на всех устройствах это сделать можно. Собственно вопрос такой: как эту ситуацию разрулить не вмешиваясь в настройки клиентов?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "IPv6 SLAAC, два роутера и выбор SRC адреса для default маршрута"  +/
Сообщение от Ann None (?), 03-Сен-21, 20:41 
> подсеть  300:0:0:bbbb::/64, маршрут 200::/7 в yggdrasil
Ответить | Правка | Наверх | Cообщить модератору

2. "IPv6 SLAAC, два роутера и выбор SRC адреса для default маршрута"  +/
Сообщение от Аноним (-), 04-Сен-21, 01:11 
>> подсеть  300:0:0:bbbb::/64, маршрут 200::/7 в yggdrasil

Ну да. Что не так?

Ответить | Правка | Наверх | Cообщить модератору

3. "IPv6 SLAAC, два роутера и выбор SRC адреса для default маршрута"  +/
Сообщение от shadow_alone (ok), 04-Сен-21, 21:21 
Тут либо на стороне клиентов разруливать, либо:

убрать с клиентов несколько адресов оставив один, а потом на роутере, в зависимости от маршрута делать NAT per address.


Ответить | Правка | Наверх | Cообщить модератору

4. "IPv6 SLAAC, два роутера и выбор SRC адреса для default маршрута"  +/
Сообщение от korax (?), 06-Сен-21, 21:44 
Аж целый rfc есть про выбор адресов

https://datatracker.ietf.org/doc/html/rfc3484

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру