Spec-Zone.ru › Qt 5.12

Класс QNetworkAddressEntry

Класс QNetworkAddressEntry хранит один IP-адрес, поддерживаемый сетевым интерфейсом, вместе с его связанной маской сети и адресом широковещательной рассылки. Подробнее...

Заголовок: #include <QNetworkAddressEntry>
qmake: QT += network
С момента: Qt 4.2
  • Список всех членов, включая унаследованные

Примечание: Все функции в этом классе являются перевходовыми.

Типы публичного доступа

перечисление DnsEligibilityStatus { DnsEligibilityUnknown, DnsEligible, DnsIneligible }

Функции публичного доступа

QNetworkAddressEntry()
QNetworkAddressEntry(const QNetworkAddressEntry &other)
~QNetworkAddressEntry()
QHostAddress broadcast() const
void clearAddressLifetime()
QNetworkAddressEntry::DnsEligibilityStatus dnsEligibility() const
QHostAddress ip() const
bool isLifetimeKnown() const
bool isPermanent() const
bool isTemporary() const
QHostAddress netmask() const
QDeadlineTimer preferredLifetime() const
int prefixLength() const
void setAddressLifetime(QDeadlineTimer preferred, QDeadlineTimer validity)
void setBroadcast(const QHostAddress &newBroadcast)
void setDnsEligibility(QNetworkAddressEntry::DnsEligibilityStatus status)
void setIp(const QHostAddress &newIp)
void setNetmask(const QHostAddress &newNetmask)
void setPrefixLength(int length)
void swap(QNetworkAddressEntry &other)
QDeadlineTimer validityLifetime() const
bool operator!=(const QNetworkAddressEntry &other) const
QNetworkAddressEntry & operator=(QNetworkAddressEntry &&other)
QNetworkAddressEntry & operator=(const QNetworkAddressEntry &other)
bool operator==(const QNetworkAddressEntry &other) const

Подробное описание

Класс QNetworkAddressEntry хранит один IP-адрес, поддерживаемый сетевым интерфейсом, вместе с его связанной маской сети и адресом широковещательной рассылки.

Каждый сетевой интерфейс может содержать ноль или более IP-адресов, которые в свою очередь могут быть связаны с маской сети и/или адресом широковещательной рассылки (в зависимости от поддержки операционной системой).

Этот класс представляет собой одну такую группу.

Документация по типам членов

перечисление QNetworkAddressEntry::DnsEligibilityStatus

Это перечисление указывает, может ли данный адрес хоста быть опубликован в системе доменных имен (DNS) или аналогичных механизмах разрешения имен. В общем случае адрес подходит для публикации, если к этому компьютеру можно обратиться по этому адресу неопределенное время, хотя он и не обязательно должен быть постоянным. Например, адреса, полученные через DHCP, часто подходят, но криптографически сгенерированные временные IPv6-адреса не подходят.

Постоянная Значение Описание
QNetworkAddressEntry::DnsEligibilityUnknown -1 Qt и операционная система не смогли определить, следует ли публиковать этот адрес или нет. Приложению может потребоваться применить дополнительные эвристики, если оно не найдет подходящих адресов.
QNetworkAddressEntry::DnsEligible 1 Этот адрес подходит для публикации в DNS.
QNetworkAddressEntry::DnsIneligible 0 Этот адрес не должен публиковаться в DNS и не должен передаваться другим сторонам, за исключением, возможно, в качестве адреса источника исходящего пакета.

Это перечисление было введено или изменено в Qt 5.11.

См. также dnsEligibility() и setDnsEligibility().

Документация по функциям членов

QNetworkAddressEntry::QNetworkAddressEntry()

Создает пустой объект QNetworkAddressEntry.

QNetworkAddressEntry::QNetworkAddressEntry(const QNetworkAddressEntry &other)

Создает объект QNetworkAddressEntry, который является копией объекта other.

QNetworkAddressEntry::~QNetworkAddressEntry()

Уничтожает этот объект QNetworkAddressEntry.

QHostAddress QNetworkAddressEntry::broadcast() const

Возвращает адрес широковещательной рассылки, связанный с IPv4-адресом и маской сети. Его обычно можно вывести из этих двух, установив в 1 биты IP-адреса, где маска сети содержит 0. (Другими словами, путем побитового ИЛИ IP-адреса с обратной маской сети)

Этот член всегда пуст для IPv6-адресов, поскольку концепция широковещательной рассылки была отменена в этой системе в пользу многоадресной рассылки. В частности, группа хостов, соответствующая всем узлам в локальной сети, может быть достигнута с помощью специальной многоадресной группы «все узлы» (адрес FF02::1).

См. также setBroadcast().

void QNetworkAddressEntry::clearAddressLifetime()

Сбрасывает как предпочтительный, так и действительный срок действия для этого адреса. После этого вызова isLifetimeKnown() вернет false.

Эта функция была введена в Qt 5.11.

См. также preferredLifetime(), validityLifetime(), isLifetimeKnown() и setAddressLifetime().

QNetworkAddressEntry::DnsEligibilityStatus QNetworkAddressEntry::dnsEligibility() const

Возвращает, подходит ли этот адрес для публикации в системе доменных имен (DNS) или аналогичных механизмах разрешения имен.

В общем случае адрес подходит для публикации, если к этому компьютеру можно обратиться по этому адресу неопределенное время, хотя он и не обязательно должен быть постоянным. Например, адреса, полученные через DHCP, часто подходят, но криптографически сгенерированные временные IPv6-адреса не подходят.

В некоторых системах, QNetworkInterface должен эвристически определить, какие адреса допустимы.

Эта функция была добавлена в Qt 5.11.

См. также isLifetimeKnown(), isPermanent() и setDnsEligibility().

QHostAddress QNetworkAddressEntry::ip() const

Эта функция возвращает один найденный IPv4 или IPv6 адрес, найденный в сетевом интерфейсе.

См. также setIp().

bool QNetworkAddressEntry::isLifetimeKnown() const

Возвращает true если срок жизни адреса известен, false если нет. Если срок жизни неизвестен, то preferredLifetime() и validityLifetime() вернут QDeadlineTimer::Forever.

Эта функция была добавлена в Qt 5.11.

См. также preferredLifetime(), validityLifetime(), setAddressLifetime() и clearAddressLifetime().

bool QNetworkAddressEntry::isPermanent() const

Возвращает true если этот адрес постоянный для этого интерфейса, false если он временный. Постоянный адрес — это адрес без срока действия, часто статический (настраивается вручную).

Если эта информация не может быть определена, эта функция возвращает true.

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

Эта функция была добавлена в Qt 5.11.

См. также isLifetimeKnown(), validityLifetime() и isTemporary().

bool QNetworkAddressEntry::isTemporary() const

Возвращает true если этот адрес временный для этого интерфейса, false если он постоянный.

Эта функция была добавлена в Qt 5.11.

См. также isLifetimeKnown(), validityLifetime() и isPermanent().

QHostAddress QNetworkAddressEntry::netmask() const

Возвращает маску сети, связанную с IP-адресом. Маска сети выражается в виде IP-адреса, например, 255.255.0.0.

Для IPv6-адресов длина префикса преобразуется в адрес, где количество установленных в 1 битов равно длине префикса. Для длины префикса в 64 бита (самое распространённое значение), маска сети будет выражена как QHostAddress, содержащий адрес FFFF:FFFF:FFFF:FFFF::

См. также setNetmask() и prefixLength().

QDeadlineTimer QNetworkAddressEntry::preferredLifetime() const

Возвращает крайний срок, когда этот адрес становится устаревшим (больше не предпочтительным), если известен. Если срок жизни адреса неизвестен (см. isLifetimeKnown()), эта функция всегда возвращает QDeadlineTimer::Forever.

Пока адрес предпочтительный, он может использоваться операционной системой в качестве адреса источника для новых исходящих пакетов. После того, как он устареет, он останется действительным для входящих пакетов немного дольше, пока не будет удалён (см. validityLifetime()).

Эта функция была добавлена в Qt 5.11.

См. также validityLifetime(), isLifetimeKnown(), setAddressLifetime() и clearAddressLifetime().

int QNetworkAddressEntry::prefixLength() const

Возвращает длину префикса этого IP-адреса. Длина префикса соответствует количеству битов, установленных в 1 в маске сети (см. netmask()). Для IPv4-адресов значение находится в диапазоне от 0 до 32. Для IPv6-адресов оно находится в диапазоне от 0 до 128 и является предпочтительной формой представления адресов.

Функция возвращает -1, если длина префикса не может быть определена (т.е. netmask() возвращает null QHostAddress()).

Эта функция была добавлена в Qt 4.5.

См. также setPrefixLength() и netmask().

void QNetworkAddressEntry::setAddressLifetime(QDeadlineTimer preferred, QDeadlineTimer validity)

Устанавливает предпочтительный и действительный сроки жизни для этого адреса соответственно к preferred и validity крайним срокам. После этого вызова isLifetimeKnown() вернёт true, даже если оба параметра равны QDeadlineTimer::Forever.

Эта функция была добавлена в Qt 5.11.

См. также preferredLifetime(), validityLifetime(), isLifetimeKnown() и clearAddressLifetime().

void QNetworkAddressEntry::setBroadcast(const QHostAddress &newBroadcast)

Устанавливает IP-адрес широковещания для этого объекта QNetworkAddressEntry на newBroadcast.

См. также broadcast().

void QNetworkAddressEntry::setDnsEligibility(QNetworkAddressEntry::DnsEligibilityStatus status)

Устанавливает флаг допустимости DNS для этого адреса на status.

Эта функция была добавлена в Qt 5.11.

См. также dnsEligibility().

void QNetworkAddressEntry::setIp(const QHostAddress &newIp)

Устанавливает IP-адрес, содержащийся в объекте QNetworkAddressEntry, на newIp.

См. также ip().

void QNetworkAddressEntry::setNetmask(const QHostAddress &newNetmask)

Устанавливает маску сети, содержащуюся в этом объекте QNetworkAddressEntry, на newNetmask. Установка маски сети также устанавливает длину префикса в соответствии с новой маской сети.

См. также netmask() и setPrefixLength().

void QNetworkAddressEntry::setPrefixLength(int length)

Устанавливает длину префикса этого IP-адреса на length. Значение length должно быть допустимым для этого типа IP-адреса: от 0 до 32 для IPv4-адресов, от 0 до 128 для IPv6-адресов. Установка любого недопустимого значения эквивалентна установке -1, что означает «нет длины префикса».

Установка длины префикса также устанавливает маску сети (см. netmask()).

Эта функция была добавлена в Qt 4.5.

См. также prefixLength() и setNetmask().

void QNetworkAddressEntry::swap(QNetworkAddressEntry &other)

Меняет местами экземпляры этого сетевого адреса с other. Эта функция очень быстрая и никогда не терпит неудач.

Эта функция была добавлена в Qt 5.0.

QDeadlineTimer QNetworkAddressEntry::validityLifetime() const

Возвращает крайний срок, когда этот адрес становится недействительным и будет удалён из стека сетевых соединений, если известен. Если срок жизни адреса неизвестен (см. isLifetimeKnown()), эта функция всегда возвращает QDeadlineTimer::Forever.

Пока адрес действителен, он будет принят операционной системой как допустимый адрес назначения для этой машины. Будет ли он использоваться в качестве адреса источника для новых исходящих пакетов, контролируется, среди прочих правил, предпочтительным сроком жизни (см. preferredLifetime()).

Эта функция была добавлена в Qt 5.11.

См. также preferredLifetime(), isLifetimeKnown(), setAddressLifetime() и clearAddressLifetime().

bool QNetworkAddressEntry::operator!=(const QNetworkAddressEntry &other) const

Возвращает true если этот сетевой адрес отличается от other.

QNetworkAddressEntry &QNetworkAddressEntry::operator=(QNetworkAddressEntry &&other)

Оператор перемещающего присваивания.

QNetworkAddressEntry &QNetworkAddressEntry::operator=(const QNetworkAddressEntry &other)

Создает копию объекта QNetworkAddressEntry other.

bool QNetworkAddressEntry::operator==(const QNetworkAddressEntry &other) const

Возвращает true , если эта запись сетевого адреса совпадает с other.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qnetworkaddressentry.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API