ВУЗ:
Составители:
44
}
Пространство имен интернет
Первоначально пространство имен интернет использовало только протокол
интернет (IP) версии 4 (IPv4), имеющий 32-битные адреса. С постоянным ростом
количества хостов в интернет появилась необходимость в создании нового протокола с
большим адресным пространством. В настоящее время Linux может использовать также
и версию IPv6 протокола интернет, имеющий 128-битное адресное пространство,
который должен со временем заменить IPv4.
Для создания гнезда в пространстве имен IPv4 используется символьное имя
PF_INET. Для создания гнезда в пространстве IPv6 используется символьное имя
PF_INET6.
Адрес в пространстве интернет включает следующие компоненты:
• адрес машины, к которой необходимо подключиться;
• номер порта этой машины.
Типы данных для представления адреса гнезда в пространстве имен интернет
определены в заголовочном файле <netinet/in.h>. Для адреса IPv4:
struct sockaddr_in {
sa_family_t sin_family;
struct in_addr sin_addr;
unsigned short int sin_port;
};
Структура данных используется для представления адресов в пространстве
имен интернет стандарта IPv4. Здесь sin_family определяет формат адреса гнезда;
sin_addr определяет адрес хоста в сети; sin_port – номер порта.
При вызове функций bind и getsockname аргумент LENGTH нужно установить
значением sizeof (struct sockaddr_in).
Для представления адреса IPv6 используется структура
struct sockaddr_in6 {
sa_family_t sin6_family;
struct in6_addr sin6_addr;
uint32_t sin6_flowinfo;
uint16_t sin6_port;
};
Здесь sin6_family – формат адреса гнезда, sin6_addr – адрес хоста, sin6_flowinfo
– в настоящий момент не используется, sin6_port – адрес порта.
Адреса хостов
Каждый компьютер в сети интернет имеет один или несколько адресов,
номеров, которые идентифицируют компьютер среди всех остальных в сети. Обычно
адреса пространства IPv4 представляется в виде четырех чисел, разделенных точками,
адреса пространства IPv6 – в виде последовательность до восьми чисел, разделенных
двоеточиями. Примеры адресов:
IPv4 - 128.52.46.32,
IPv6 - 5f03:1200:836f:c100::1.
Каждый компьютер имеет также одно или более символьных имен, состоящих
из слов, разделенных точками. Программы, позволяющие пользователю указать хост, с
которым необходимо установить соединение, должны давать возможность указывать и
символьное и числовое представление адреса. Однако, программе необходим числовой
адрес для установления соединения, поэтому необходимо конвертировать символьное
представление в числовое.
}
Пространство имен интернет
Первоначально пространство имен интернет использовало только протокол
интернет (IP) версии 4 (IPv4), имеющий 32-битные адреса. С постоянным ростом
количества хостов в интернет появилась необходимость в создании нового протокола с
большим адресным пространством. В настоящее время Linux может использовать также
и версию IPv6 протокола интернет, имеющий 128-битное адресное пространство,
который должен со временем заменить IPv4.
Для создания гнезда в пространстве имен IPv4 используется символьное имя
PF_INET. Для создания гнезда в пространстве IPv6 используется символьное имя
PF_INET6.
Адрес в пространстве интернет включает следующие компоненты:
• адрес машины, к которой необходимо подключиться;
• номер порта этой машины.
Типы данных для представления адреса гнезда в пространстве имен интернет
определены в заголовочном файле . Для адреса IPv4:
struct sockaddr_in {
sa_family_t sin_family;
struct in_addr sin_addr;
unsigned short int sin_port;
};
Структура данных используется для представления адресов в пространстве
имен интернет стандарта IPv4. Здесь sin_family определяет формат адреса гнезда;
sin_addr определяет адрес хоста в сети; sin_port – номер порта.
При вызове функций bind и getsockname аргумент LENGTH нужно установить
значением sizeof (struct sockaddr_in).
Для представления адреса IPv6 используется структура
struct sockaddr_in6 {
sa_family_t sin6_family;
struct in6_addr sin6_addr;
uint32_t sin6_flowinfo;
uint16_t sin6_port;
};
Здесь sin6_family – формат адреса гнезда, sin6_addr – адрес хоста, sin6_flowinfo
– в настоящий момент не используется, sin6_port – адрес порта.
Адреса хостов
Каждый компьютер в сети интернет имеет один или несколько адресов,
номеров, которые идентифицируют компьютер среди всех остальных в сети. Обычно
адреса пространства IPv4 представляется в виде четырех чисел, разделенных точками,
адреса пространства IPv6 – в виде последовательность до восьми чисел, разделенных
двоеточиями. Примеры адресов:
IPv4 - 128.52.46.32,
IPv6 - 5f03:1200:836f:c100::1.
Каждый компьютер имеет также одно или более символьных имен, состоящих
из слов, разделенных точками. Программы, позволяющие пользователю указать хост, с
которым необходимо установить соединение, должны давать возможность указывать и
символьное и числовое представление адреса. Однако, программе необходим числовой
адрес для установления соединения, поэтому необходимо конвертировать символьное
представление в числовое.
44
Страницы
- « первая
- ‹ предыдущая
- …
- 42
- 43
- 44
- 45
- 46
- …
- следующая ›
- последняя »
