ipcalc.c(3)

НАЗВАНИЕ
ipcalc.c - предоставляет утилиты для обработки IP-адресов.

СИНТАКСИС

#include <ctype.h>
#include <popt.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>

  Определения
#define IPBITS (sizeof(длинное_целое_число_без_знака) * 8)
число битов в IP-адресе.
#define IPBYTES (sizeof(длинное_целое_число_без_знака))
число байтов в IP-адресе.

  Функции
длинное_целое_число_без_знака prefix2mask (prefix_в_виде_целого_числа)
создает сетевую маску из указанного числа битов.
целое_число mask2prefix (mask_в_виде_длинного_целого_числа_без_знака)
вычисляет число битов, размаскированных сетевой маской.
длинное_целое_число_без_знака default_netmask (addr_в_виде_длинного_целого_числа_без_знака)"
возвращает сетевую маску по умолчанию (каноническую), ассоциированную с указанным IP-адресом.
длинное_целое_число_без_знака calc_broadcast (addr_в_виде_длинного_целого_числа_без_знака, prefix_в_виде_целого_числа)
вычисляет широковещательный адрес и длину префикса заданного IP-адреса.
длинное_целое_число_без_знака calc_network (addr_в_виде_длинного_целого_числа_без_знака, prefix_в_виде_целого_числа)
вычисляет сетевой адрес и префикс для заданного адреса.
постоянная char* get_hostname (addr_в_виде_длинного_целого_числа_без_знака)
возвращает имя хоста, ассоциированное с указанным IP-адресом.
целое_число main (argc_в_виде_целого_числа, постоянная char **argv)
программа-упаковщик для функций ipcalc.

ПОДРОБНОЕ ОПИСАНИЕ

предоставляет утилиты для обработки IP-адресов.

 ipcalc предоставляет утилиты и консольный графический интерфейс для обработки IP-адресов и вычисления различных аспектов ip: адрес/маска сети/сетевой адрес/префикс/и т.п.

Доступ к функциональным возможностям может быть получен из других языков через описанный здесь интерфейс библиотеки. Для использования ipcalc из командного процессора, прочтите оперативную страницу руководства ipcalc(1).

При передаче параметров в различные функции, обратите внимание на то, принимают ли они порядок хост-байта или порядок сетевого байта. Большинство принимают порядок хост-байта и возвращают порядок хост-байта, но существует ряд исключений.

ДОКУМЕНТИРОВАНИЕ ФУНКЦИЙ

  длинное_целое_число_без_знака calc_broadcast (addr_в_виде_длинного_целого_числа_без_знака, prefix_в_виде_целого_числа)

вычисляет широковещательный адрес заданного IP-адреса и длину префикса.

Параметры:

addr
    IP-адрес в порядке сетевого байта.

prefix
    длина префикса.

Возвраты:
вычисленный широковещательный адрес для сети, в порядке сетевого байта.

  длинное_целое_число_без_знака calc_network (addr_в_виде_длинного_целого_числа_без_знака, prefix_в_виде_целого_числа)

вычисляет адрес сети и префикс для указанного адреса.

Параметры:

addr
    IP-адрес, в порядке сетевого байта

prefix
    сетевой префикс

Возвраты:
базовый адрес сети, с которым ассоциирован addr, в порядке сетевого байта.

  длинное_целое_число_без_знака default_netmask (addr_в_виде_длинного_целого_числа_без_знака)

возвращает сетевую маску по умолчанию (каноническую), ассоциированную с указанным IP-адресом.

 При первоначальной настройке Интернета все разнообразие диапазонов IP-адресов было разбито на три класса сетей: A, B и C. Эта функция возвращает сетевую маску, ассоциированную с указанным IP-адресом, определяя, где она входит в предопределенные классы.

Параметры:

addr
    IP-адрес в порядке сетевого байта.

Возвраты:
сетевая маска в порядке сетевого байта.

  постоянная char * get_hostname (addr_в_виде_длинного_целого_числа_без_знака)

возвращает имя хоста, ассоциированное с указанным IP_адресом.

Параметры:

addr
    IP-адрес, который необходимо найти для имени хоста, в порядке сетевого байта

Возвраты:
имя хоста, или пустое значение, если оно не может быть определено. Имя хоста хранится в статическом буфере, который может исчезнуть в любой момент, вызывающий оператор должен скопировать данные, если они нуждаются в долговременном хранении.

  main (argc_в_виде_целого_числа, постоянная char ** argv)

программа-упаковщик для функций ipcalc.

 Это программа-упаковшик для функций, предоставляемых библиотекой ipcalc. Она может быть использована из скриптов командного процессора ли непосредственно из командной строки.

Более подробную информацию смотрите, пожалуйста, в странице оперативного руководства ipcalc(1).

  целое_число mask2prefix (mask_в_виде_длинного_целого_числа_без_знака)

вычисляет число битов, размаскированных сетевой маской.

 Эта функция вычисляет значащие биты в IP-адресе, заданном сетевой маской. См. также prefix2mask.

Параметры:

mask
    сетевая маска, заданная, в виде длинного целого число без знака в порядке сетевого байта.

Возвраты:
число значащих битов.

  длинное_целое_число_без_знака prefix2mask (целое_число_битов)

создает сетевую маску из заданного числа битов.

 Эта функция преобразовывает длину префикса в сетевую маску. Так как CIDR (бесклассовая маршрутизация доменов интернет) была отменена, все больше и больше IP-адресов задается в формате адрес/префикс (например, 192.168.2.3/24 с соответствующей сетевой маской 255.255.255.0). Если вам необходимо узнать, какая сетевая маска соответствует префиксной части адреса, то эта функция вам поможет. См. также mask2prefix.

Параметры:

prefix
    число битов для создания маски.

Возвраты:
сетевая маска, в порядке сетевого байта.

АВТОР

Автоматически сгенерировано Doxygen'ом для initscripts из исходного кода.

ПЕРЕВОД

Павел Марьянов acid_jack@ukr.net