¿Cómo crear un socket IPv6 en python? ¿Por qué obtuve el socket.error: (22, 'Argumento no válido')?

Quiero dejar el socket Ipv6 en python, lo hago así:

#!/usr/bin/env python
import sys
import struct
import socket

host = 'fe80::225:b3ff:fe26:576'
sa = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)
sa.bind((host , 50000))

Pero falló:

socket.error: (22, 'Invalid argument') ?

¿Alguien puede ayudarme? ¡Gracias!

Lo vuelvo a hacer así, pero todavía no puedo trabajar

    >>>host = 'fe80::225:b3ff:fe26:576'
    >>>sa = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)
    >>>res = socket.getaddrinfo(host, port, socket.AF_UNSPEC, socket.SOCK_DGRAM, 0, socket.AI_PASSIVE)
    >>>family, socktype, proto, canonname, sockaddr = res[0]
    >>>print sockaddr
('fe80::225:b3ff:fe26:576', 50001, 0, 0)
    >>>sa.bind(sockaddr)
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "<string>", line 1, in bind
socket.error: (22, 'Invalid argument')

Respuestas a la pregunta(2)

Su respuesta a la pregunta