"Проброс порта" с IPv4 на IPv6

Впервые опубликовано 2012-01-26.

GNU/Linux

Установить openbsd-inetd, netcat6.

В /etc/inetd.conf добавить:

ЛОКАЛЬНЫЙ_ПОРТ stream tcp6 nowait ПОЛЬЗОВАТЕЛЬ /bin/nc6 nc6 -w 20 СЕРВЕР УДАЛЁННЫЙ_ПОРТ

Например для проброса с локального сервера IPv6-порта 80 на удалённый сервер (имеющий IPv4 или IPv6), с запуском nc6 от имени пользователя «proxy»:

80 stream tcp6 nowait proxy /bin/nc6 nc6 -w 20 some-other-server.example.com 80

После чего выполнить /etc/init.d/openbsd-inetd restart.

Windows

спасибо за дополнение Denis Serov

netsh int portproxy set v6tov4 listenport connectaddress connectport listenaddress protocol

Где:

  • v4tov4 - обновление записи для прослушивания IPv4 и подключения прокси-сервера через IPv4;
  • v4tov6 - обновление записи для прослушивания IPv4 и подключения прокси-сервера через IPv6;
  • v6tov4 - обновление записи для прослушивания IPv6 и подключения прокси-сервера через IPv4;
  • v6tov6 - обновление записи для приема для IPv6 и подключения прокси-сервера через IPv6.

На примере v6tov4:

  • listenport - прослушиваемый порт IPv4;
  • connectaddress - адрес IPv6 для подключения;
  • connectport - порт IPv6 для подключения;
  • listenaddress - прослушиваемый адрес IPv4;
  • protocol - используемый протокол. Сейчас поддерживается только TCP(?).

Просмотр всех созданных правил перенаправления:

<code>netsh int portproxy show all<.code>

Используя portproxy можно перенаправить и локальный трафик, используя в listenaddress 127.0.0.1 или ::1


v4v6-portforward.txt · Последние изменения: 2014-07-01 07:44 UTC От rm