Как вы хотите идентифицировать сетевую карту? Вы можете попробовать взглянуть на /etc/udev/rules.d/70-persistent-net.rules
, который отображает аппаратные MAC-адреса в хорошие имена (например, eth0).
Затем, когда у вас есть более подходящее имя, вы можете запустить такие вещи, как ethtool eth0
, чтобы определить, подключено ли оно [физически] (последняя строка), ifconfig eth0
, чтобы определить, работает ли оно (ищите "UP BROADCAST. .. "), и если у него есть IP-адрес.
Я готов предположить, что для этого есть автоматические библиотеки; ты смотрел вокруг? Я не уверен, есть ли в NetworkManager легко доступный код, но это должно быть хорошим первым местом для поиска.