是否可以在QAbstractSocket
上检索IPv6地址?您可以使用QAbstractSocket::peerAddress()
检索IPv4,但我不确定IPv6。
答案 0 :(得分:3)
看看文档。 peerAddress()
返回通用QHostAddress
- 它不仅限于IPv4!只要您连接到IPV6对等体,就会使用QHostAddress::toIPv6Address
返回完整的IPV6地址。像这样:
QAbstractSocket socket;
socket.connectToHost(QHostAddress("2607:f8b0:4009:803::1005"), 80); // google.com
....
const QHostAddress & addr = socket.peerAddress();
if (addr.protocol() == QAbstractSocket::IPv6Protocol) {
Q_IPV6ADDR address6 = addr.toIPv6Address();
...
}