Недавно мы начали экспериментировать с IPv6, и одной из первых проблем, с которыми нам приходится сталкиваться, является работа с совершенно отдельным набором правил брандмауэра (Linux iptables / ip6ables) для двух стеков протоколов. Наша логика брандмауэра основана в основном на ряде специализированных сетей (например, 10.0.0.0/24 - это сеть рабочих станций персонала, 10.1.0.0/24 - это сеть базы данных, 10.2.0.0/24 - это сеть веб-сервера и т. Д. ), и логика для IPv6 и IPv4 будет в значительной степени одинаковой, по модулю разных сетевых префиксов.
Что люди делают, справляются с такой ситуацией? В идеале я хотел бы иметь возможность создавать наборы правил iptables и ip6table из одного и того же исходного файла (файлов). Я уже собрал что-то, используя bash, но это не обязательно красиво, и я подозреваю, что где-то там должно существовать лучшее решение.
Я был бы особенно заинтересован в решении на основе Puppet, которое хорошо использует собственные механизмы зависимости Puppet для реализации относительного упорядочения правил (или групп правил).