프록시는 IPv6에서 수신하면서 다른 주소 체계에 있는 Telegram 서버로 연결을 전달할 수 있습니다. 프록시 엔드포인트와 최종 Telegram 엔드포인트를 따로 다루세요.

Telethon 1.45에서 애플리케이션 환경에 문서화된 python-socks[asyncio] 의존성이 있다면:

from telethon import TelegramClient

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

문서의 IPv6 주소와 포트를 실제 리스너로 바꾸세요. 주소 필드는 대괄호가 없는 리터럴입니다. 포트가 이미 별도 값이기 때문입니다. IPv6 주소를 URL authority에 넣을 때는 대괄호가 필요합니다.

필요하면 SOCKS 계정용 username과 password 필드를 추가하세요. SOCKS5 계정은 Telegram의 API ID, API hash, session과 별개입니다.

use_ipv6=True는 Telethon이 Telegram 서버 주소를 고르는 동작을 제어합니다. IPv6 프록시 호스트 이름을 유효한 수신 주소로 바꾸는 스위치는 아닙니다.

오래된 환경에서 IPv6가 실패하면 실제 Python 인터프리터가 사용할 수 있는 백엔드를 확인하세요. 다른 가상 환경에서의 import는 이 프로세스를 바꾸지 않습니다. MTProto 프록시 연결 모드는 secret이 포함된 다른 튜플을 사용합니다. 그것은 다른 구성입니다.

관련 글