Есть несколько пакетов, которые могут управлять сетью. NetworkManager и wicd - два, с которыми я знаком. Их можно запустить из командной строки, и они могут полностью управлять сетью. Вы можете использовать любую из них для проверки работоспособности сети и инициирования перезапуска в случае потери соединения.
Если устройство предоставляет сервис, такой как Upstart/Systemd, вы также можете установить правила на этом уровне, чтобы инициировать перезагрузку при потере подключения к интернету.
Если вы ограничены в возможностях программного обеспечения, доступного на устройстве Synology, вы можете запускать что-то из cron каждые пару минут.
if ! ping -Q 1 -c 1 -t 1 google.com; then
ifdown eth0
sleep 3
ifup eth0
fi
systemd-networkd
, когда он включен, учитывает настройки в/etc/systemd/network
Принимая во внимание, что NetworkManager
будет следовать некоторым автоматическим правилам, например, попытается подключиться к проводному соединению, если найдет его.
Обе службы включаются и выключаются как systemd
, а systemd с помощью udev создает файлы устройств для сетевых адаптеров. Как правило, вам, вероятно, не следует включать оба одновременно, но если вы это сделаете, вам нужно быть осторожным, чтобы их конфигурации не конфликтовали.
netplan
перед запуском любого сетевого менеджера создает конфигурации для любого из них на основе своей собственной конфигурации. Таким образом, netplan на самом деле является абстракцией конфигурации, и независимо от того, использует ли он systemd -networkd или NetworkManager, он является частью конфигурации.
iproute2
— пакет инструментов для настройки сетевых интерфейсов в командной строке. Он включает в себя конфигурацию ссылок, аналогичную сетевым менеджерам и старому ifconfig. В то время как net-tools
, ipupdown
и ifupdown2
используют сетевые конфигурации в /etc/network/interfaces для настройки и деконфигурации интерфейсов.
ifupdown
или другие его версии можно использовать для управления сетями, но это не автоматически, а для запуска при загрузке можно использовать службу systemd.
ifupdown2
использует графы зависимостей, аналогичные тому, что делает systemd
, но с сетевыми интерфейсами. Кроме того, он действует как абстракция для других инструментов, таких какiproute2