Изменил и адаптировал под udev скрипт lan.sh (входит в состав модуля autoNet). Логика такая:
- проверка подключения кабеля. (carrier=[01])
- если есть, поиск файла конфигурации по address (HWaddr), сделано во избежание путаницы при работе с флешки на разных машинах.
- если нет - dhcpcd $IFACE
- если есть, "$STATIC_IP" = "yes" настройка по файлу, "$STATIC_IP" = "no" - exit.
- проверка подключения пингом.
- вывод сообщения о результатах.
Скрипт адаптирован для запуска из-под udev, но может быть запущен ifplugd или командой lan.sh $IFACE.
99-net_up.rules:
ACTION=="add|change", SUBSYSTEM=="net", ATTR{operstate}=="down", RUN+="net_up.sh %k"