Вопрос или проблема
Для моего туннеля я добавил следующий маршрут и правило:
ip rule add from 127.0.0.1/8 iif lo table 123
ip route add local 0.0.0.0/0 dev lo table 123
Это работало хорошо несколько недель, а затем внезапно исчезло без перезагрузки, хотя я сохранил это в /etc/network/if-up.d/localroute
. Нужно ли мне сделать это в другом месте, например, в netplan?
- Debian 12
- OVH VPS
- /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
network: {config: disabled}
Спасибо
Ответ или решение
Проблема с потерей маршрутов на OVH VPS может возникнуть по нескольким причинам, и важно рассмотреть все возможные факторы, способствующие этому явлению. В вашем случае вы добавили правило и маршрут для создания туннеля, используя следующие команды:
ip rule add from 127.0.0.1/8 iif lo table 123
ip route add local 0.0.0.0/0 dev lo table 123
Анализ проблемы
Вы отмечаете, что ваша конфигурация работает несколько недель, а затем перестает действовать. Это может быть связано с рядом причин:
-
Конфигурация сети: Вы указали, что используете Debian 12 и настроили файл
/etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
, чтобы отключить управление сетью, но важно убедиться, что другие инструменты, такие какNetplan
илиNetworkManager
, не активны, так как это может привести к конфликтам. Убедитесь, что все настройки в этих файлах полностью отключены или правильно настроены. -
Пробуждение конфигурации: Возможно, что другие службы или скрипты, работающие в системе, перезаписывают ваши правила и маршруты. Проверьте
/etc/network/if-up.d/
, чтобы удостовериться, что нет конфликтующих скриптов, которые могут удалять или изменять ваши настройки. Также рассмотрите возможность добавления ваших команд в другие файлы, такие как/etc/rc.local
, чтобы они выполнялись при каждом запуске системы. -
Отсутствие постоянного хранения маршрутов: Несмотря на то, что вы добавили настройки в
if-up.d
, стоит проверить, сохраняются ли они в других местах. Можно использовать службуsystemd
с созданием юнита для выполнения маршрутов после загрузки. Например, создайте файл/etc/systemd/system/custom-routes.service
с содержимым:[Unit] Description=Custom routing rules [Service] Type=oneshot ExecStart=/bin/bash -c "ip rule add from 127.0.0.1/8 iif lo table 123; ip route add local 0.0.0.0/0 dev lo table 123" RemainAfterExit=yes [Install] WantedBy=multi-user.target
После этого активируйте его с помощью команд:
systemctl enable custom-routes.service systemctl start custom-routes.service
Рекомендации по дальнейшим действиям
-
Мониторинг сетевых изменений: Ведите лог изменений сетевой конфигурации. Используйте такие инструменты, как
auditd
, чтобы отслеживать изменения в системных сетевых настройках и выявить, какие процессы могут вызывать удаления или изменения маршрутов. -
Проверка на конфликты: Убедитесь, что другие сетевые настройки, установленные в вашей системе (например, в
/etc/network/interfaces
или конфигурацииNetplan
), не вступают в конфликт с вашей настройкой. Полная остановка служб, связанных сNetplan
илиNetworkManager
, может помочь в устранении конфликтов. -
Обновление системы: Убедитесь, что ваш сервер и установленные пакеты обновлены до последних стабильных версий. Обновления могут содержать исправления проблем с сетью и конфигурацией.
Заключение
Проблема с потерей маршрутов на OVH VPS может иметь множество причин, включая конфликты с конфигурацией сети и автоматическую настройку. После выполнения всех рекомендаций, направленных на стабильность вашей сетевой конфигурации, вам следует регулярно проверять работу маршрутов. Таким образом, вы сможете обеспечить надежность и предсказуемость работы вашей системы.