En esta página

QNetworkAddressEntry Class

La clase QNetworkAddressEntry almacena una dirección IP soportada por una interfaz de red, junto con su máscara de red y dirección de difusión asociadas. Más...

Cabecera: #include <QNetworkAddressEntry>
CMake: find_package(Qt6 REQUIRED COMPONENTS Network)
target_link_libraries(mytarget PRIVATE Qt6::Network)
qmake: QT += network

Nota: Todas las funciones de esta clase son reentrantes.

Tipos Públicos

enum DnsEligibilityStatus { DnsEligibilityUnknown, DnsEligible, DnsIneligible }

Funciones Públicas

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=(const QNetworkAddressEntry &other)
bool operator==(const QNetworkAddressEntry &other) const
(since 6.2) QDebug operator<<(QDebug debug, const QNetworkAddressEntry &entry)

Descripción detallada

Cada interfaz de red puede contener cero o más direcciones IP, que a su vez pueden estar asociadas con una máscara de red y/o una dirección de difusión (dependiendo del soporte del sistema operativo).

Esta clase representa uno de estos grupos.

Tipo de miembro Documentación

enum QNetworkAddressEntry::DnsEligibilityStatus

Este enum indica si una dirección de host dada es apta para ser publicada en el Sistema de Nombres de Dominio (DNS) u otros mecanismos similares de resolución de nombres. En general, una dirección es apta para su publicación si es una dirección en la que esta máquina será localizada durante un periodo de tiempo indeterminado, aunque no tiene por qué ser permanente. Por ejemplo, las direcciones obtenidas mediante DHCP suelen ser aptas, pero las direcciones IPv6 temporales generadas criptográficamente no lo son.

ConstanteValorDescripción
QNetworkAddressEntry::DnsEligibilityUnknown-1Qt y el sistema operativo no pudieron determinar si esta dirección debe ser publicada o no. La aplicación puede necesitar aplicar más heurísticas si no puede encontrar ninguna dirección elegible.
QNetworkAddressEntry::DnsEligible1Esta dirección es elegible para su publicación en DNS.
QNetworkAddressEntry::DnsIneligible0Esta dirección no debería ser publicada en DNS y no debería ser transmitida a otras partes, excepto quizás como la dirección de origen de un paquete saliente.

Véase también dnsEligibility() y setDnsEligibility().

Documentación de la función de miembro

QNetworkAddressEntry::QNetworkAddressEntry()

Construye un objeto QNetworkAddressEntry vacío.

QNetworkAddressEntry::QNetworkAddressEntry(const QNetworkAddressEntry &other)

Construye un objeto QNetworkAddressEntry que es una copia del objeto other.

[noexcept] QNetworkAddressEntry::~QNetworkAddressEntry()

Destruye este objeto QNetworkAddressEntry.

QHostAddress QNetworkAddressEntry::broadcast() const

Devuelve la dirección de difusión asociada a la dirección IPv4 y la máscara de red. Normalmente se puede derivar a partir de estas dos poniendo a 1 los bits de la dirección IP donde la máscara de red contiene un 0. (En otras palabras, mediante bitwise-OR'ing la dirección IP con el inverso de la máscara de red)

Este miembro está siempre vacío para las direcciones IPv6, ya que en este sistema se ha abandonado el concepto de difusión en favor de la multidifusión. En particular, el grupo de hosts correspondiente a todos los nodos de la red local puede ser alcanzado por el grupo especial multicast "all-nodes" (dirección FF02::1).

Véase también setBroadcast().

void QNetworkAddressEntry::clearAddressLifetime()

Restablece tanto el tiempo de vida preferido como el válido para esta dirección. Después de esta llamada, isLifetimeKnown() devolverá false.

Véase también preferredLifetime(), validityLifetime(), isLifetimeKnown(), y setAddressLifetime().

QNetworkAddressEntry::DnsEligibilityStatus QNetworkAddressEntry::dnsEligibility() const

Devuelve si esta dirección es apta para su publicación en el Sistema de Nombres de Dominio (DNS) o mecanismos similares de resolución de nombres.

En general, una dirección es apta para su publicación si es una dirección en la que esta máquina será localizada durante un tiempo indeterminado, aunque no tiene por qué ser permanente. Por ejemplo, las direcciones obtenidas mediante DHCP suelen ser aptas, pero las direcciones IPv6 temporales generadas criptográficamente no lo son.

En algunos sistemas, QNetworkInterface necesitará determinar heurísticamente qué direcciones son elegibles.

Véase también isLifetimeKnown(), isPermanent() y setDnsEligibility().

QHostAddress QNetworkAddressEntry::ip() const

Esta función devuelve una dirección IPv4 o IPv6 encontrada, que fue encontrada en una interfaz de red.

Véase también setIp().

bool QNetworkAddressEntry::isLifetimeKnown() const

Devuelve true si se conoce el tiempo de vida de la dirección, false en caso contrario. Si no se conoce el tiempo de vida, tanto preferredLifetime() como validityLifetime() devolverán QDeadlineTimer::Forever.

Véase también preferredLifetime(), validityLifetime(), setAddressLifetime() y clearAddressLifetime().

bool QNetworkAddressEntry::isPermanent() const

Devuelve true si esta dirección es permanente en esta interfaz, false si es temporal. Una dirección permanente es aquella que no tiene tiempo de expiración y suele ser estática (configurada manualmente).

Si no se ha podido determinar esta información, esta función devuelve true.

Nota: Dependiendo del sistema operativo y de la herramienta de configuración de red, es posible que una dirección temporal sea interpretada como permanente, si la herramienta no informó correctamente los detalles al sistema operativo.

Véase también isLifetimeKnown(), validityLifetime(), y isTemporary().

bool QNetworkAddressEntry::isTemporary() const

Devuelve true si esta dirección es temporal en esta interfaz, false si es permanente.

Véase también isLifetimeKnown(), validityLifetime(), y isPermanent().

QHostAddress QNetworkAddressEntry::netmask() const

Devuelve la máscara de red asociada a la dirección IP. La máscara de red se expresa en forma de dirección IP, como 255.255.0.0.

Para direcciones IPv6, la longitud del prefijo se convierte en una dirección donde el número de bits puestos a 1 es igual a la longitud del prefijo. Para una longitud de prefijo de 64 bits (el valor más común), la máscara de red se expresará como QHostAddress con la dirección FFFF:FFFF:FFFF:FFFF::

Véase también setNetmask() y prefixLength().

QDeadlineTimer QNetworkAddressEntry::preferredLifetime() const

Devuelve la fecha límite en la que esta dirección pasa a estar obsoleta (deja de ser preferida), si se conoce. Si no se conoce la fecha límite de la dirección (véase isLifetimeKnown()), esta función siempre devuelve QDeadlineTimer::Forever.

Mientras una dirección es preferida, puede ser utilizada por el sistema operativo como dirección de origen para nuevos paquetes salientes. Después de convertirse en obsoleta, seguirá siendo válida para los paquetes entrantes durante un tiempo más hasta que finalmente se elimine (véase validityLifetime()).

Ver también validityLifetime(), isLifetimeKnown(), setAddressLifetime(), y clearAddressLifetime().

int QNetworkAddressEntry::prefixLength() const

Devuelve la longitud del prefijo de esta dirección IP. La longitud del prefijo coincide con el número de bits puestos a 1 en la máscara de red (véase netmask()). Para direcciones IPv4, el valor está comprendido entre 0 y 32. Para direcciones IPv6, está entre 0 y 128 y es la forma preferida de representar direcciones.

Esta función devuelve -1 si no se ha podido determinar la longitud del prefijo (es decir, netmask() devuelve un QHostAddress() nulo).

Véase también setPrefixLength() y netmask().

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

Establece tanto el tiempo de vida preferido como el válido para esta dirección en los plazos preferred y validity, respectivamente. Después de esta llamada, isLifetimeKnown() devolverá true, incluso si ambos parámetros son QDeadlineTimer::Forever.

Véase también preferredLifetime(), validityLifetime(), isLifetimeKnown(), y clearAddressLifetime().

void QNetworkAddressEntry::setBroadcast(const QHostAddress &newBroadcast)

Establece la dirección IP de difusión de este objeto QNetworkAddressEntry en newBroadcast.

Véase también broadcast().

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

Establece el indicador de elegibilidad DNS para esta dirección en status.

Véase también dnsEligibility().

void QNetworkAddressEntry::setIp(const QHostAddress &newIp)

Establece la dirección IP que contiene el objeto QNetworkAddressEntry en newIp.

Véase también ip().

void QNetworkAddressEntry::setNetmask(const QHostAddress &newNetmask)

Establece la máscara de red que contiene este objeto QNetworkAddressEntry a newNetmask. Al establecer la máscara de red también se establece la longitud del prefijo para que coincida con la nueva máscara de red.

Véase también netmask() y setPrefixLength().

void QNetworkAddressEntry::setPrefixLength(int length)

Establece la longitud del prefijo de esta dirección IP en length. El valor de length debe ser válido para este tipo de dirección IP: entre 0 y 32 para direcciones IPv4, entre 0 y 128 para direcciones IPv6. Establecer cualquier valor inválido es equivalente a establecer -1, lo que significa "sin longitud de prefijo".

Al establecer la longitud del prefijo también se establece la máscara de red (véase netmask()).

Véase también prefixLength() y setNetmask().

[noexcept] void QNetworkAddressEntry::swap(QNetworkAddressEntry &other)

Intercambia esta instancia de entrada de dirección de red con other. Esta operación es muy rápida y nunca falla.

QDeadlineTimer QNetworkAddressEntry::validityLifetime() const

Devuelve la fecha límite en la que esta dirección deja de ser válida y será eliminada de la pila de red, si se conoce. Si no se conoce el plazo de validez de la dirección (véase isLifetimeKnown()), esta función siempre devuelve QDeadlineTimer::Forever.

Mientras una dirección sea válida, será aceptada por el sistema operativo como una dirección de destino válida para esta máquina. Si es usada como dirección de origen para nuevos paquetes salientes es controlado por, entre otras reglas, el tiempo de vida preferido (ver preferredLifetime()).

Ver también preferredLifetime(), isLifetimeKnown(), setAddressLifetime(), y clearAddressLifetime().

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

Devuelve true si esta entrada de dirección de red es diferente de other.

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

Hace una copia del objeto QNetworkAddressEntry other .

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

Devuelve true si esta entrada de dirección de red es la misma que other.

No miembros relacionados

[since 6.2] QDebug operator<<(QDebug debug, const QNetworkAddressEntry &entry)

Escribe el QNetworkAddressEntry entry en el flujo y devuelve una referencia al flujo debug.

Esta función se introdujo en Qt 6.2.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.