Конфигурация сети изнутри программы

Существуют ли какие-либо программные эквиваленты для сетевых конфигурационных инструментов, таких как «ifconfig», «iwconfig» и т. Д.?

Я ищу элегантный способ доступа к функциональности и информации, которые они предоставляют изнутри программы.

One Solution collect form web for “Конфигурация сети изнутри программы”

ifconfig и друзья получают большую часть информации, которую они показывают, вызывая различные ioctl на сокетах. Я рекомендую прочитать источник ifconfig и другие инструменты, чтобы точно видеть, что они делают. Но в большинстве случаев легче будет popen команду ifconfig .

Обратите внимание, что в обоих случаях ваша программа должна быть перенесена в разные версии unix. Не ioctl или выходной формат ifconfig и других команд переносимы.

Преимущество использования ioctl не зависит от внешних инструментов. В Linux вы можете рассчитывать на доступность ifconfig и route , а также iwconfig если есть беспроводные интерфейсы, но не обязательно ip ( ip показывает больше информации, а его результат проще анализировать, но большинство дистрибутивов не устанавливают его по умолчанию , поэтому на самом деле это не очень хорошая идея для переносимости).

  • Debian 8: где установлены статические маршруты по умолчанию?
  • netcat из-за NAT
  • Как настроить linux для автоматического переключения между LAN и WLAN без использования сетевого менеджера
  • Как найти привязку процесса к сетевому интерфейсу
  • Как интерпретировать результаты iperf3?
  • Поиск локальной подсети
  • Как я могу использовать Ethernet для мониторинга отказа PPP-соединения 3G-модема?
  • Как файл хоста фактически используется в сетях unix / linux?
  • список доступных сетевых интерфейсов удаленного хоста (без SSH)?
  • Как рассчитать объем данных, передаваемых между двумя машинами Unix
  • Значение Strange MTU от ping
  • Как использовать tshark для выполнения этой задачи
  • Linux и Unix - лучшая ОС в мире.