IPv6 в прокси: адреса, поддержка и совместимость
IPv6 расширяет адресное пространство и меняет формат IP-заголовка, но не отменяет прикладные протоколы. HTTP и SOCKS5 продолжают выполнять свои роли поверх IPv6. Для рабочего подключения поддержку должны иметь клиент, прокси-сервер, DNS и маршрут к целевому сервису.
Главное за минуту
- IPv6-адрес имеет 128 бит и текстовую запись с двоеточиями.
- SOCKS5 содержит отдельный тип адреса IPv6.
- Поддержка только на одном участке цепочки недостаточна.
- IPv4 и IPv6 следует проверять как разные сетевые пути.
Архитектура адресов IPv6
IPv6-адрес идентифицирует интерфейс или набор интерфейсов согласно архитектуре адресации. Сокращение нулевых групп делает запись короче, поэтому визуально разные строки могут обозначать один адрес. Сравнивать адреса лучше после нормализации.
IPv6 в SOCKS5 и HTTP
SOCKS5 передаёт IPv6 как отдельный ATYP с 16 байтами адреса. В HTTP буквальный IPv6 внутри URI требует квадратных скобок. Если программа не понимает эту запись, ошибка относится к клиенту или формату, а не обязательно к доступности узла.
Сквозная совместимость
Клиенту нужен IPv6-стек либо способность передать IPv6-назначение прокси. Прокси должен иметь маршрут к назначению, DNS — отдавать нужные записи, а целевой сервис — принимать соединение. Отказ одного звена требует точной локализации.
Как проводить тест
Используйте собственный dual-stack стенд, где известны A- и AAAA-записи и журналы сервера. Выполните отдельные попытки по IPv4 и IPv6, сохраните адрес назначения, время соединения и результат приложения. Это позволяет отличить форматную ошибку от проблемы маршрута.
Практический чек-лист
- 1Проверить поддержку IPv6 в клиентской программе.
- 2Использовать квадратные скобки там, где требуется URI.
- 3Проверить AAAA-запись и маршрут прокси.
- 4Сравнить IPv4 и IPv6 отдельными тестами.
- 5Не делать вывод по одному DNS-ответу без соединения.
Источники и документы
Материал подготовлен по первичным, официальным и техническим источникам. Формулировки статьи являются самостоятельным изложением.