Un proxy peut écouter en IPv6 tout en transportant une connexion vers un serveur Telegram situé dans une autre famille d’adresses. Traitez le point de terminaison du proxy et le point de terminaison final de Telegram séparément.

Pour Telethon 1.45, avec la dépendance documentée python-socks[asyncio] disponible dans l’environnement de l’application :

from telethon import TelegramClient

client = TelegramClient(
    'existing-session', api_id, api_hash,
    proxy={
        'proxy_type': 'socks5',
        'addr': '2001:db8::10',
        'port': 1080,
        'rdns': True,
    },
)

Remplacez l’adresse IPv6 et le port de la documentation par le listener réel. Le champ d’adresse est un littéral sans crochets, car le port est déjà une valeur distincte. Les crochets sont nécessaires lorsqu’une adresse IPv6 est intégrée dans une authority d’URL.

Ajoutez les champs username et password pour un compte SOCKS lorsque c’est nécessaire. Un compte SOCKS5 est distinct de l’API ID, de l’API hash et de la session Telegram.

use_ipv6=True contrôle le choix par Telethon de l’adresse du serveur Telegram. Ce n’est pas l’interrupteur qui transforme un nom d’hôte de proxy IPv6 en adresse d’écoute valide.

Vérifiez le backend disponible pour l’interpréteur Python réel lorsqu’un environnement plus ancien échoue en IPv6. Un import dans un autre environnement virtuel ne change pas ce processus. Les modes de connexion du proxy MTProto utilisent un autre tuple contenant un secret ; c’est une autre configuration.

Articles similaires