При использовании socket.getaddrinfo()
:
>>> socket.getaddrinfo("example.net", 8000, socket.AF_UNSPEC, socket.SOCK_STREAM)
[(<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('93.184.216.34', 8000))]
Результат имеет вид:
(family, type, proto, canonname, sockaddr)
Я знаю, что family = AF_INET
, type = SOCKET_STREAM
и sockaddr=(HOST, PORT)
Что означают proto
и canonname
? Что такое «6» в приведенном выше возвращаемом результате, и когда canonname
не пусто?