Netfilter заявляет, что у них есть поддержка SNAT и DNAT для ipv6. Я просматриваю страницы руководства ip6tables и вижу, что там перечислены SNAT и DNAT. Итак, мой вопрос: как вы устанавливаете для них правила? Я пробовал использовать ту же структуру правил для iptables, но ip6tables не имеет таблицы nat, а SNAT / DNAT - это виртуальные состояния. Поэтому я не знаю, какие изменения следует внести в пример вроде:
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.2.3.4
применимо к ip6tables. Спасибо за помощь!
РЕДАКТИРОВАТЬ **: вам нужно ядро 3.7+, так как тогда они выпустили таблицу NAT для ipv6. Затем вы используете iptables 1.4.17 и можете использовать простую команду:
ОРИГИНАЛ **:
На веб-сайте netfilter вы можете найти:
На странице руководства ipv6 (http://linux.die.net/man/8/ip6tables)
Кажется, это возможно. Но я не нашел примеров его использования.
У меня есть нат таблица:
apoc ~ # ip6tables -t nat -nvL
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
И может писать правила SNAT:
apoc ~ # ip6tables -t nat -A POSTROUTING -o eth1 -j SNAT --to 2001:db8::1
apoc ~ # ip6tables -t nat -nvL POSTROUTING
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 SNAT all * eth1 ::/0 ::/0 to:2001:db8::1
Это на ArchLinux с ядром 3.10.7-1-ARCH; это относительно недавнее дополнение к коду netfilter.
Однако я должен повторить Майкла Хэмптона:
Не говоря уже о том, что если вы даже думаете о NAT в контексте развертывания IPv6, что-то ужасно неправильно, и вам нужно пересмотреть структуру своей сети.
Нет NAT с IPv6. Один из основных моментов IPv6 - устранение NAT. NAT был изобретен (в первую очередь) как способ увеличить полезный объем пространства IPv4. С IPv6 мы возвращаемся к исходной конструкции, когда все конечные точки в Интернете адресуются со всех остальных конечных точек.