Назад | Перейти на главную страницу

Маршрутизация политики IPv6 в Linux

В настоящее время моей организации доступны два активных диапазона IPv6, и мы переключаемся с одного на другой. Я бы хотел, чтобы они работали одновременно, но похоже, что Linux не поддерживает маршрутизацию политик для IPv6. Наш маршрутизатор на базе Linux работает под управлением 2.6.26-2-686 на Debian Lenny.

Вот что бы я хотел сделать:

# ip -6 rule add from 2001:388:7094:4080::/58 lookup oldv6 (политика направляет старый диапазон v6 с помощью таблицы oldv6)

# ip -6 route add throw 2001:388:7094:4080::/58 table oldv6 (возврат к основной таблице маршрутизации для локальной маршрутизации)

# ip -6 route add default via 2001:388:7094:1::1 dev eth1 (в противном случае используйте «старый» маршрутизатор по умолчанию)

Однако вторая строка не работает: RTNETLINK answers: No such device

Прочитав доступную документацию, выяснилось, что Linux не поддерживает маршрутизацию реальной политики для IPv6 ([2] - см. раздел 9.2, [3]), и подделывает только при добавлении таблиц. Конечно, в Linux эти документы не обновлялись более пяти лет, поэтому мне интересно, есть ли у кого-нибудь блестящие идеи - есть ли параметр или документация, которые я пропустил? Есть Тема 2007 года, предполагающая, что это не работает но я хотел бы услышать иное.

На основании экспериментов ответ кажется «да, маршрутизация политики IPv6 поддерживается в Linux». Я до сих пор не уверен, почему вышеперечисленные строки терпят неудачу, но пока я обошел это стороной.