ipwf dummynet vs. kernel NAT and firewall rules
Don Lewis
truckman at FreeBSD.org
Wed Mar 9 18:09:33 UTC 2016
On 9 Mar, Franco Fichtner wrote:
> Hi Don,
>
> If you mean pf(4)-based NAT, there is a patch that originates from
> m0n0wall that handles the transition. We're using it in OPNsense
> for that reason. Here is the patch for 10.x, maybe that is what
> you're looking for:
Nope, I'm using ipfw in-kernel NAT, which is not the default in
rc.firewall, but is easy to paste in next to or in place of the default
natd configuration.
case ${firewall_nat_enable} in
[Yy][Ee][Ss])
if [ -n "${firewall_nat_interface}" ]; then
if echo "${firewall_nat_interface}" | \
grep -q -E '^[0-9]+(\.[0-9]+){0,3}$'; then
firewall_nat_flags="ip ${firewall_nat_interface} ${firewall_nat_flags}"
else
firewall_nat_flags="if ${firewall_nat_interface} ${firewall_nat_flags}"
fi
${fwcmd} nat 123 config log ${firewall_nat_flags}
${fwcmd} add nat 123 ip4 from any to any via ${firewall_nat_interface}
fi
;;
esac
My suspicion is that if a packet matches the rule to pass it to dummynet
that it is bypassing NAT.
More information about the freebsd-ipfw
mailing list