[PR #922] [CLOSED] fix: поддержка IPv6-адресов в --dc-ip #71

Closed
opened 2026-07-19 11:34:38 +03:00 by mirror-bot · 0 comments

📋 Pull Request Information

Original PR: https://github.com/Flowseal/tg-ws-proxy/pull/922
Author: @f4rceful
Created: 5/31/2026
Status: ❌ Closed

Base: main ← Head: fix/ipv6-dc-ip


📝 Commits (1)

  • e11d3bf fix: accept IPv6 addresses in --dc-ip parsing

📊 Changes

1 file changed (+10 additions, -1 deletions)

View changed files

📝 proxy/config.py (+10 -1)

📄 Description

## Что сделано

  • parse_dc_ip_list теперь проверяет IP через socket.inet_pton (сначала AF_INET, затем AF_INET6) вместо inet_aton.

Зачем

inet_aton понимает только IPv4, поэтому записи --dc-ip с IPv6-адресами отклонялись с ошибкой Invalid --dc-ip, хотя остальной конвейер (asyncio.open_connection) с IPv6 работает нормально. Из-за этого нельзя было задать IPv6-адрес датацентра вручную.

inet_pton валидирует обе версии адресов, поэтому теперь --dc-ip 2:2001:67c:4e8::a принимается корректно, а явно битые значения по-прежнему отклоняются.

Как проверить

  • python -m proxy.tg_ws_proxy --dc-ip 2:2001:67c:4e8::a — запускается без ошибки конфигурации.
  • python -m ruff check proxy/config.py — без замечаний.
  • Локально проверено юнит-тестами: IPv4 → принят, IPv6 → принят, смешанный список → принят, мусор / отсутствие двоеточия / нечисловой DC → отклонены.

Примечание: этот PR и PR с media-aware выбором IP оба правят parse_dc_ip_list. Какой будет смержен вторым — потребует тривиального ребейза одной строки (валидация IP). Готов поправить.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/Flowseal/tg-ws-proxy/pull/922 **Author:** [@f4rceful](https://github.com/f4rceful) **Created:** 5/31/2026 **Status:** ❌ Closed **Base:** `main` ← **Head:** `fix/ipv6-dc-ip` --- ### 📝 Commits (1) - [`e11d3bf`](https://github.com/Flowseal/tg-ws-proxy/commit/e11d3bfae7e41335a7854c3f3f33384d53688745) fix: accept IPv6 addresses in --dc-ip parsing ### 📊 Changes **1 file changed** (+10 additions, -1 deletions) <details> <summary>View changed files</summary> 📝 `proxy/config.py` (+10 -1) </details> ### 📄 Description ## Что сделано - `parse_dc_ip_list` теперь проверяет IP через `socket.inet_pton` (сначала `AF_INET`, затем `AF_INET6`) вместо `inet_aton`. ## Зачем `inet_aton` понимает только IPv4, поэтому записи `--dc-ip` с IPv6-адресами отклонялись с ошибкой `Invalid --dc-ip`, хотя остальной конвейер (`asyncio.open_connection`) с IPv6 работает нормально. Из-за этого нельзя было задать IPv6-адрес датацентра вручную. `inet_pton` валидирует обе версии адресов, поэтому теперь `--dc-ip 2:2001:67c:4e8::a` принимается корректно, а явно битые значения по-прежнему отклоняются. ## Как проверить - `python -m proxy.tg_ws_proxy --dc-ip 2:2001:67c:4e8::a` — запускается без ошибки конфигурации. - `python -m ruff check proxy/config.py` — без замечаний. - Локально проверено юнит-тестами: IPv4 → принят, IPv6 → принят, смешанный список → принят, мусор / отсутствие двоеточия / нечисловой DC → отклонены. --- > Примечание: этот PR и PR с media-aware выбором IP оба правят parse_dc_ip_list. Какой будет смержен вторым — потребует тривиального ребейза одной строки (валидация IP). Готов поправить. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
mirror-bot added the pull-request label 2026-07-19 11:34:38 +03:00
mirror-bot changed title from [PR #922] [CLOSED] fix: поддержка IPv6-адресов в --dc-ip to [PR #922] fix: поддержка IPv6-адресов в --dc-ip 2026-07-20 04:11:01 +03:00
mirror-bot changed title from [PR #922] fix: поддержка IPv6-адресов в --dc-ip to [PR #922] [CLOSED] fix: поддержка IPv6-адресов в --dc-ip 2026-07-20 23:14:55 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Utilities/tg-ws-proxy#71