>Интересно, а почему фильтрация пакета происходит в таком порядке? Не лучше ли было бы как в > iptables фильтровать транзитные пакеты в порядке dnat-filter-snat?А какая разница? Тогда бы точно так же возникали обратные вопросы.
Мне например, такой вариант намного удобней. Я пишу правила фильтрации на внешнем интерфейсе в контексте внешних адресов, не завязываясь на внутренее устройство сети. А фильтрация, завязанная на топологию внутренней сети и внутренние маршруты, производится на внутренних интерфейсах. И я для себя точно знаю, что если вдруг одна внутренняя сеть переехала с одного порта на другой или маршрутизация изменилась, то в правилах на внешнем порту мне точно ничего менять не нужно. Всему свое место...
>Может проще маркировать транслируемые пакеты для последующей фильтрации на основе значения
>tag? Тут главное, чтобы другие правила случайно не заменили маркер.
Вот-вот... Чтобы, не заменили. Ты это еще должен вспомнить через полгода, когда вдруг понадобиться что-то поправить. Предложенный мною вариант чуть сложнее реализовать, но работать должно быстрее. А главное понятнее, когда через какое-то время снова залазишь в конфиг.