Прозрачный прокси-сервер для трафика IPv6 в Linux

StackOverflow https://stackoverflow.com/questions/625166

  •  05-07-2019
  •  | 
  •  

Вопрос

При обслуживании сетей часто бывает целесообразно запустить прозрачный прокси-сервер.Под прозрачным прокси-сервером я подразумеваю прокси, который "перехватывает" исходящие соединения и запускает их через локальную службу.В частности, я запускаю брандмауэр Linux с squid, настроенный так, что все tcp / ip-соединения, подключенные к порту 80, проксируются squid.

Это достигается с помощью таблицы iptables 'nat', использующей IPv4.

Но iptables для IPv6 не имеет таблицы 'nat', поэтому я не могу использовать ту же реализацию.Какой метод я могу использовать для прозрачного прокси-трафика для соединений IPv6?

Это было полезно?

Решение

Жизнеспособный способ сделать это - использовать правило TPROXY в iptables, документация доступна здесь:

Это должен поддерживать Squid (>= версия 3.2).Используя --enable-linux-netfilter и тот iptables -t mangle -j TPROXY правило.

Другие советы

У iptables есть цель QUEUE, которую вы можете использовать для доставки пакетов в пользовательское пространство. Я не уверен, но, возможно, что-то может быть реализовано там.

После этого вы можете попытаться добавить что-то в ядро, чтобы выполнить перенаправление.

Ты не можешь. Цитата из squid-cache.org :

  

NAT просто не существует в IPv6. От   Дизайн.      

Учитывая, что прозрачность / перехват   на самом деле особенность, приобретенная   тайно крутить NAT-маршруты внутри   и обратно на себя. Это довольно   логично, что протокол без NAT   не может сделать прозрачность и   перехват таким образом.

Вот реализация:

http://www.suse.de/~krahmer/ip6nat/

Еще один вид уродливого взлома:

  • ПОМЕТЬТЕ весь трафик с помощью iptables (кажется, есть цель CONNMARK для IPv6)
  • направляйте весь отмеченный трафик на устройство tun
  • выполните NAT в пользовательском пространстве в демоне, прослушивающем устройство tun
  • ...

Напишите свою собственную реализацию NAT в стеке IPv6.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top