Сбой добавления маршрута по умолчанию в той же подсети

505
Garth

Я запускаю Fedora 22 (Kernel 4.0.4) и пытаюсь добавить маршрут по умолчанию для пользовательской таблицы маршрутизации SERVINT, используемой vlan30 на интерфейсе Ethernet, enp3s0.

VLAN имеет два связанных IP-адреса:

192.168.129.66 и 192.168.129.67, / 29 подсеть.

Интерфейс vlan в разведке маршрутизации (межсетевой экран ZyXel 110):

192.168.129.65 (в той же подсети, что и адреса NIC)

После перезагрузки сервера я очищаю все маршруты и правила, используя:

ip route flush cache

ip route очистить все

флеш правила ip

Все правила и маршруты удалены.

Затем я добавляю маршрут:

ip route add 192.168.129.64/29 dev vlan30 Прото статическая область видимости глобальный src 192.168.129.67 таблица SERVINT

Пока все хорошо. Когда я иду, чтобы добавить маршрут по умолчанию к 192.168.129.65, я получаю «RTNETLINK ответы: сеть недоступна», но маршрут по умолчанию находится в подсети маршрута, определенного ранее.

Единственный способ получить маршрут по умолчанию, который будет принят, - это определить его как IP-адрес на сетевой карте, тогда, конечно, он не будет взаимодействовать с интеллектом маршрутизации для дальнейшей маршрутизации .... так что это тоже сбой ,

У кого-нибудь есть идеи относительно того, что может быть не так?

ТЕСТ ОБНОВЛЕНИЕ_25062015

Если я сделаю вышеупомянутое с VLAN, маршрутизируемым в «основной» таблице (таблица № 254), все будет работать правильно, но когда это будет сделано в пользовательской таблице (таблица № 200), ошибка будет последовательной, как описано выше.

Конфигурация KERNEL имеет CONFIG_IP_MULTIPLE_TABLES = y, поэтому следует включить несколько таблиц и функции маршрутизации политики. Пользовательская таблица определена в файле / etc / iproute2 / rt_tables .

Есть ли что-нибудь еще, что остановит использование пользовательских таблиц маршрутизации?

Ура, GM

0
Вы можете заполнить пользовательскую таблицу маршрутизации, но если у вас нет правила ее использования, она не будет использоваться. Что показывает `ip a`? / 29 или / 32 на ваш IP-адрес? Если / 29, то вам не нужно добавлять маршрут для / 29, это должно произойти автоматически. wurtel 9 лет назад 0
Маршрут по умолчанию для таблицы SERVINT даже не записывался в файл, поэтому наличие или отсутствие применимого правила не оценивалось. Garth 9 лет назад 0
Привет, Гарт, пожалуйста, убери РЕШЕНО из вопроса, ты сможешь принять ответ через несколько часов. bummi 9 лет назад 1
Форумность редактирования заголовков с надписью «решено» проистекает из того факта, что формат форума затрудняет обозначение вопроса как завершенного, и он здесь не нужен. Через некоторое время вы сможете использовать «галочку» рядом с вашим ответом, чтобы пометить его как правильный ответ и, таким образом, «решить» ваш вопрос. У нас есть задержка для того, чтобы пометить собственные ответы как правильные, чтобы предотвратить злоупотребление системой и дать другим возможность публиковать решения. Mokubai 9 лет назад 0

1 ответ на вопрос

0
Garth

I finally found the cause of this particular problem - the stock Fedora 22 Server install does NOT install some needed files for supporting Multiple Route Tables.

The packages with the missing files are "kernel-headers", "kernel-devel" and "libnl3-devel". Without these packages the fib_rules module will not run.