Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 2, 2008 15:57:54

ice
От:
Зарегистрирован: 2008-01-12
Сообщения: 156
Репутация: +  0  -
Профиль   Отправить e-mail  

IPv6 и его адреса.

Значит ситуация такая:

есть 2 хоста с адресами:
fe80::20c:29ff:fe1e:eb7e%4 и
fe80::205:29ff:fe1e:eb7e%5

На fe80::20c:29ff:fe1e:eb7e%4 поднят echo сервер (просто скриптик питоновский), есессно он ipv6 socket(AF_INET6 … ) порт 7777

Пытаюсь делать простым виндовым методом:

telnet fe80::20c:29ff:fe1e:eb7e%4 7777

работает, принимается, отдается..

Пишу клиента на питоне

from socket import *

s = socket(AF_INET6, SOCK_STREAM)
s.connect(('fe80::20c:29ff:fe1e:eb7e%4', 7777))
Возникает ошибка:

socket.error: A socket operation was attempted to an unreachable host

подозреваю, что неправильно введен адрес, потому как если с той же машины локально натравить на этот сервер клиента по адресу ‘::1’ то все воркет.

Как вводить правильные ipv6 адреса в этом случае?

Вообще сведений в сети не нашел по этому поводу :(

Кстати вызов getaddrinfo из socket дает адрес именно в такой вот форме, что передаю в connect.

Что делать и кто виноват? (с) :)

—————

Все нашел

s.connect(('fe80::20c:29ff:fe1e:eb7e', 7777, 0, 4))

Вот так надо :)



Отредактировано (Апрель 2, 2008 16:10:32)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version