Сеть в Linux Linux (NetworkManager, systemd-networkd)

Сеть Linux: Linux: ошибка RTNETLINK answers: File exists при добавлении маршрута

  • Обновлено
  • Чтение ≈ 2 минуты

Краткий ответ

Сообщение RTNETLINK answers: File exists при добавлении маршрута означает, что запись с тем же адресным назначением или несовместимой комбинацией параметров уже существует; иногда конфликтует не один маршрут, а выбранная таблица.

В этой статье
  1. Что происходит и когда это важно
  2. Возможные причины и как их отличить
  3. Пошаговая диагностика и исправление
  4. Команды из инструкции с пояснениями
  5. Как проверить результат
  6. Если проблема не устранена

#Что происходит и когда это важно

При выполнении ip route add ... команда не применяет новый маршрут. Повторное выполнение на работающем сервере не нужно: сначала следует показать имеющуюся запись.

#Возможные причины и как их отличить

Возможная причинаКак узнатьЧто делать
Маршрут уже созданВ таблице уже есть подходящий destination.ip route show отображает нужную подсеть или шлюз.Не добавлять дубликат.
Неверная таблица или приоритетМаршрут нужен в отдельной policy-routing таблице, а команда добавляет его в main.ip rule и таблицы маршрутов показывают другой план.Сверить точные правила и метрики.
Конфигурацию автоматически восстанавливает менеджерПосле ручного изменения маршрут снова появляется.Устройство управляется NetworkManager/networkd.Править исходный профиль, а не бороться командами ip route на каждом запуске.

#Пошаговая диагностика и исправление

  1. Сохраните вывод и доступОткройте терминал. Если работа идёт на сервере по SSH, откройте резервную консоль и сохраните текущую маршрутизацию; не исполняйте ip route replace без понимания, куда уйдёт ваш сеанс.
  2. Посмотрите текущее состояние маршрутовВыполните ip -4 route show table main и ip -6 route show. Сопоставьте точную сеть, маску, шлюз и интерфейс с командой, вызвавшей ошибку. Не путайте 192.0.2.0/24 (пример для документации) с сетью своей организации.
  3. Проверьте правила policy routingВведите ip rule show и ip route show table all. Если используется несколько таблиц, дубликат может находиться не в основной. Вывод table all способен быть длинным — найдите вашу подсеть, не удаляйте записи до понимания маршрута.
  4. Определите, через что пойдут пакетыВыполните ip route get АДРЕС_НАЗНАЧЕНИЯ, подставив реальный IP одного допустимого узла в нужной сети. Сравните выбранный gateway и dev с ожидаемым. Если вывод уже корректен, ошибка повторного добавления не требует действий.
  5. Найдите источник автоматически добавляемого маршрутаЕсли работает NetworkManager, выполните nmcli connection show --active и найдите профиль с IPv4 routes. Для systemd-networkd смотрите файл .network, назначенный конкретному интерфейсу. Не меняйте сразу и настройки профиля, и маршрут вручную.
  6. Меняйте только подтверждённый конфликтСначала создайте резервную копию профильных сетевых настроек и обеспечьте локальный доступ. Если маршрутом управляет администратор или VPN, запросите корректные параметры. Действия ip route replace/del здесь намеренно не предлагаются как готовая команда: ошибка при их применении может отрезать сеть.
  7. Проверьте после исправленияПосле штатного применения согласованного профиля повторите ip route show, ip route get и проверку доступа к конкретному узлу, затем повторите после перезагрузки. При потере связи верните резервную копию через консоль.

#Команды из инструкции с пояснениями

Linux · Терминал (Bash)Команда
Маршруты IPv4 в основной таблице.
ip -4 route show table main
Linux · Терминал (Bash)Команда
Правила выбора таблиц.
ip rule show
Linux · Терминал (Bash)Команда
Сводка всех таблиц маршрутов.
ip route show table all

#Как проверить результат

Маршрут присутствует в правильной таблице, пакеты идут через нужный интерфейс, повторная штатная настройка не пытается создавать конфликтующую запись.

#Если проблема не устранена

Если два менеджера сети создают разные маршруты, приведите управление интерфейсом к одному источнику. При сложных ip rule и VRF передайте администратору вывод без секретных адресов.

Источники и обновления

Для этой статьи пока не указаны источники. Мы отмечаем такие материалы и дополняем их при проверке.

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.