Конфигурация TinyProxy Upstream IPv6

Как я могу настроить входящий поток tinyproxy для адреса IPv6?

Следующее не работает.

Upstream "[2001:xxxx:xxx:xx:xxx:xxxx:xxxx:380f]:8888"

Обновить

Я получаю следующую ошибку: Unable to parse config file. Not starting.

2 ответа

Правильный синтаксис восходящего потока:

      Upstream http "[2001:xxxx:xxx:xx:xxx:xxxx:xxxx:380f]:8888"

Вы просто пропустилиhttp.

Я пытался

      upstream http "[fe80::1]:8888"

но я также получаю сообщение об ошибке:

      ERROR: Syntax error on line 157
Unable to parse config file. Not starting.

Похоже, TiniyProxy (по крайней мере версия 1.11.1) не поддерживает адреса IPv6.

источник/conf.c:

      #define IP "((([0-9]{1,3})\\.){3}[0-9]{1,3})"
...
#ifdef UPSTREAM_SUPPORT
STDCONF (upstream,
     "(" "(none)" WS STR ")|" \
     "(" "(http|socks4|socks5)" WS \
         "(" USERNAME /*username*/ ":" PASSWORD /*password*/ "@" ")?"
         "(" IP "|" ALNUM ")"
         ":" INT "(" WS STR ")?" ")", handle_upstream),
#endif

Регулярное выражение #определенное вIPсоответствует только числовым адресам IPv4.

Я изменил conf.c, включив в него адреса IPv6:

      STDCONF (upstream,
     "(" "(none)" WS STR ")|" \
     "(" "(http|socks4|socks5)" WS \
         "(" USERNAME /*username*/ ":" PASSWORD /*password*/ "@" ")?"
         "(" IP "|" "\\[" IPV6 "\\]" "|" ALNUM ")"
         ":" INT "(" WS STR ")?" ")", handle_upstream),

и я также удалил двойные кавычки из оператора конфигурации:

      upstream http [fe80::1]:8888

Теперь tinyproxy запускается без каких-либо проблем в файле конфигурации. Но я не проверял, действительно ли восходящее соединение работает или нужны другие исправления для использования IPv6-адреса для восходящего прокси. Мой главный подозрение заключается в том, что мне, вероятно, нужно убрать квадратные скобки с числового IPv6-адреса.

Другие вопросы по тегам