En proxy kan lyssna på IPv6 medan den bär en anslutning till en Telegram-server i en annan adressfamilj. Behandla proxyns slutpunkt och Telegrams slutpunkt var för sig.

För Telethon 1.45, när det dokumenterade beroendet python-socks[asyncio] finns i programmets miljö:

from telethon import TelegramClient

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

Ersätt dokumentationens IPv6-adress och port med den faktiska lyssnaren. Adressfältet är en literal utan hakparenteser, eftersom porten redan är ett separat värde. Hakparenteser behövs när en IPv6-adress bäddas in i en URL-authority.

Lägg till fälten username och password för ett SOCKS-konto när det behövs. Ett SOCKS5-konto är skilt från Telegrams API ID, API hash och session.

use_ipv6=True styr Telethons val av Telegram-serveradress. Det är inte strömbrytaren som gör ett IPv6-proxy-värdnamn till en giltig lyssnaradress.

Kontrollera den backend som den faktiska Python-tolken har tillgång till när en äldre miljö misslyckas på IPv6. En import i en annan virtuell miljö ändrar inte den här processen. MTProto-proxyns anslutningslägen använder en annan tuple med en hemlighet; det är en annan konfiguration.

Relaterade artiklar