Есть ли возможность заставить QTcpServer принимать соединения только по IPv4? А по IPv6?
Если в listen указать ipv6 адрес, то сокет будет слушать
только ipv6, если ipv4, то
только ipv4.
Если есть QTcpSocket и я делаю connectToHost не по ip, а по доменному имени, то есть ли возможность задать версию ip протокола или надо в «ручную» ресолвить доменное имя и коннектиться уже только по ip нужного типа?
Вы меня разочаровываете...
void QAbstractSocket::connectToHost(const QString & hostName, quint16 port, OpenMode openMode = ReadWrite, NetworkLayerProtocol protocol = AnyIPProtocol) [virtual]
Attempts to make a connection to hostName on the given port. The protocol parameter can be used to specify which network protocol to use (eg. IPv4 or IPv6).
enum QAbstractSocket::NetworkLayerProtocol
This enum describes the network layer protocol values used in Qt.
Constant Value Description
QAbstractSocket::IPv4Protocol 0 IPv4
QAbstractSocket::IPv6Protocol 1 IPv6
QAbstractSocket::AnyIPProtocol 2 Either IPv4 or IPv6
QAbstractSocket::UnknownNetworkLayerProtocol -1 Other than IPv4 and IPv6