Подскажите пожалуйста, что может быть и куда копать, у меня идеи иссякли. Hе могу нормально заставить работать проброс портов с внешнего IP сервера на порты работающих на этом сервере jail-ов с сервисами. Hе получалось с ядерным NAT, не получается и с natd. Всё работает прекрасно до тех пор, пока объёмы пробрасываемых соединений невелики. Hапример, прекрасно пробрасывается и работает redirect udp 53 с белого адреса от PPPoE на порт udp 3053 jail, висящего на сером адресе, прикрученом к lo1. Полностью аналогичные правила для порта tcp 53 синхронизировать зону вторичному NS не позволяют, процесс идёт, но со сбоями и тормозами, соединение в итоге обрывается. Предположил, что я не умею готовить port redirect на ядерном NAT и перешёл на natd. Для экспериментов уже выбрал 80-й порт и протокол http. Аналогично, пока перегоняю файл небольшого размера (48K ещё протискивается, меньше - лучше), процесс со скрипом и тормозами всё-таки идёт. Файл размером 64K передаётся с такими-же тормозами, но в итоге отваливается по таймауту. Более-мене нормально проходят первые 16..20 килобайт, дальше начинаются тормоза. Судя по tcpdump тормозит с отправкой (уже прошедших через natd) пакетов сервер.
В режиме verbose смотрю на работу natd - вроде не к чему придраться. Hарочно сделал так, чтобы в этот instance natd попадали только те пакеты, которые он должен обработать, остальные проходят мимо, не помогло.
ipfw show 1101 1111 1121 1122 01101 47 3282 divert 3667 tcp from remote_client to PPPoE_IP_my dst-port 80 in 01111 52 85137 divert 3669 tcp from jail_web 3080 to remote_client out 01121 52 85137 fwd PPPoE_IP_gw tcp from PPPoE_IP_my to remote_client 01122 47 3282 allow tcp from remote_client to jail_web dst-port 3080