Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 01 Jul 2015 22:02:53 +0300
From:      Lev Serebryakov <lev@FreeBSD.org>
To:        freebsd-ipfw@freebsd.org
Subject:   Re: keep-state and in-kernel NAT exposes local ip on external interface
Message-ID:  <5594395D.6050103@FreeBSD.org>
In-Reply-To: <1435692039.18121.12.camel@yahoo.com>
References:  <1435692039.18121.12.camel@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On 30.06.2015 22:20, Georgios Amanakis via freebsd-ipfw wrote:

  It is good example for my changes :) All this "skipto / keep-state"
magic is not understandable.

> On FreeBSD 10.1p13 with two interfaces em0(internet) and em1(lan) I
> can fish (tcpdump)packets on em0 which have escaped the in-kernel
> NAT and have as source address an IP on the LAN.
> 
> This should not happen and I can confirm that with pf this is not
> the case. I have the following ipfw rules:
> 
> nat:  ipfw nat 123 config ip xxx.xxx.xxx.xxx same_ports reset
> 
> 00100 reass ip from any to any in 00200 allow ip from any to any
> via lo0 00300 allow ip from any to any via em1 00400 nat 123 ip
> from any to any in recv em0 00500 check-state 00600 skipto 24000 ip
> from any to me dst-port 80,443,22,500,4500,1194,993,8112 in recv
> em0 keep-state 00700 skipto 24000 ip from any to any out xmit em0
> keep-state 00800 deny log ip from any to any 24000 nat 123 ip from
> any to any out xmit em0 24100 allow ip from any to any
> 
> Contrary to many online tutorials, including the example of the 
> handbook regarding NAT ( 
> https://www.freebsd.org/doc/handbook/firewalls-ipfw.html), when
> one places the NAT rules with the opposite order (i.e. outbound
> rule first and then the inbound rule) the problem disappears.
> 
> i.e. ... 00400 nat 123 ip from any to any out xmit em0 ... 24000
> nat 123 ip from any to any in recv em0 ...
> 
> Why is this happening? Any objections to reversing the order of the
> NAT rules? _______________________________________________ 
> freebsd-ipfw@freebsd.org mailing list 
> http://lists.freebsd.org/mailman/listinfo/freebsd-ipfw To
> unsubscribe, send any mail to
> "freebsd-ipfw-unsubscribe@freebsd.org"
> 


- -- 
// Lev Serebryakov
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (MingW32)

iQJ8BAEBCgBmBQJVlDldXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRGOTZEMUNBMEI1RjQzMThCNjc0QjMzMEFF
QUIwM0M1OEJGREM0NzhGAAoJEOqwPFi/3EePkigQAMhJSo5UaDxrAz5RmMt1KjJX
5kXKXe35NLzI6J3bt/ZBBwmJSl1Z/17BEhTAMQmietAi5zVV8QD8DB+lq/jjvY3F
TmADQ4O/b2Dml/Vgcg8fzv4Oai/fPENfNLZNItc/Hv9fxKtDUoxW3SehlTcti/DM
5VpIb0Td7o3WWEmtYMUHSvYIXpUQSr8IeE48Svd4dKJ7x7oJP11qpECa2vsDRJFc
8BM5jWWfJqfWcB//+G/9C9nT4DbTHhwrP4UkvZDwM2mc8xz5gzEtwXUDPle8Bgtb
StHrMkrgZvGfGWd95dPVm3oTdhIVvv3KSNW47PCo/xRVz8ZQKog2N4QYrNIUzhbL
Igmxus3VD4uwqr+3z+lB5lgUYMeB0pqnEihWGAQ15cwxNRlEEFOg/hGZTiNx9u88
2/UcK6up2jtxBTXy2Tf/CWL12PqnkDxsC2drZULDOR9P/XT3YcB++ie6Xz9iv7rt
3C8hOQ3B8LqAKfTP4LG2vh1uv4X6Vw7sfx3vpGXr3bQFaZt/odesI3/SiWaSmkNi
bu6JKU2QnepLRrKObeggIap4SSRq7AKZiVa+O5R3HJFAhsFLutgHIYP1G7+BzHAX
OCHRXgHiWDNNKa9tzUQgdS372kM+kP10vbY74TJ2dEL3Nwc9XehiasToEVfYhLin
FG8VdsZZSi+wA8Pg3YbQ
=kzTV
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5594395D.6050103>