Определить, является ли IP статичным или получен от DHCP на busybox - PullRequest
1 голос
/ 08 октября 2009

Я работаю на встроенном устройстве с запущенным BusyBox.
Система получает свой адрес с помощью команды ip. Я хочу выяснить из моей программы на C, является ли устройство ip static или полученный от DHCP-сервера. Как мне это сделать?

Ответы [ 4 ]

4 голосов
/ 27 мая 2011

Я не знаю, как ваши пользователи взаимодействуют с вашей встроенной системой. Но на наших (тех же компонентах) у нас есть CLI, который регистрирует выбранную настройку типа DHCP / STATIC в структуре SHM (дБ) для интерфейса.

По сути, вам нужно отслеживать, как был установлен IP интерфейса.

1 голос
/ 08 октября 2009

Команда dumpleases должна показывать текущую аренду. Я полагаю, если вы можете определить, что у вас есть IP-адрес, но нет аренды, тогда адрес является статическим.

0 голосов
/ 08 октября 2009

Если вы управляете средой, я предлагаю установить переменную env или создать файл флага, который вы можете указать, когда IP-адрес установлен.

0 голосов
/ 08 октября 2009

Посмотрите на этот вопрос и проверьте флаг IFF_DYNAMIC - который может быть установлен, когда DHCP активен на интерфейсе.

...