getockname для сокета Python не дает адрес ipv6 - PullRequest
0 голосов
/ 26 июня 2019

У меня есть код Python для получения адреса ipv6 удаленной машины с помощью socket.getsockname. Он отлично работал в Python 2.7.3. Но в системе с Python 2.7.11 это дает неправильное значение. Хотели бы получить помощь, чтобы лучше понять проблему

У меня есть две машины, одна с Python 2.7.3 и другая с 2.7.11+. Я попробовал приведенную ниже программу на обеих машинах.

def checkit():
        s = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)
        s.connect(('10.10.10.10', 80))
        print "ipv6 address\n%s" % str(s.getsockname()[0])

checkit()

в Python 2.7.3 (ожидаемый результат

ipv6 address
2001:420:404a:2018:155d:30ea:c897:76e9

в Python 2.7.11

ipv6 address
::1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...