From: Jesse Molina <jesse@opendreams.net>
To: Tore Anderson <tore.anderson@redpill-linpro.com>
Cc: netfilter@vger.kernel.org
Subject: Re: How do we arp for NAT? Secondary IPs, proxy arp? something else?
Date: Sun, 24 May 2009 14:02:41 -0700 [thread overview]
Message-ID: <4A19B5F1.4080000@opendreams.net> (raw)
In-Reply-To: <4A192D38.90008@redpill-linpro.com>
That's a pretty good suggestion, but it's more of a workaround than
something that actually addresses the issue at hand. I'm looking for a
solution on the GNU/Linux host, not in the world around it.
To restate my question: What alternative ways are there to make the
GNU/Linux system reply to ARP requests for an IP, without that IP being
an actual interface on the host, or that interface must not be used by
local services *in any way*, for the reasons of using it via SNAT/DNAT?
Here is an example where the solution you suggested would not work: I
have a Qwest ADSL line with a /29 network. That's what we have, and
it's not going to change. Qwest will not issue you a /30 for the
point-to-point between the ADSL router device and your GNU/Linux
firewall. The ADSL router's filtering and firewall capabilities suck or
just don't exist. A bridge firewall would work here, but we could not
use NAT and RFC1918 addresses. We have 100 actual hosts on that RFC1918
network, but only four of them need a public resource, and they are all
tcp/80 web servers.
All commercial firewall products that I know of can do this. You don't
give your Cisco ASA/PIX a secondary IP -- the nat or static statement
induces the host to ARP for the IP that you have assigned for the
translation. Same thing with Checkpoint, same thing with NetScreen.
Thanks for the suggestion though -- that's certainly a good one, but it
still seems like there is functionality missing from the Linux kernel to
handle this, or it's somewhere that I don't know of.
Tore Anderson wrote:
> Hi Jesse,
>
> * Jesse Molina
>
>> What else is there? Loop interfaces with proxy arping? I've been
>> reading about some functionality for NAT in the ip tool (ip route add
>> nat ...) but it looks depreciated. There also seems to be something
>> like "ip rule add nat ..." but I've not figured that out yet. I had
>> read somewhere that "ip route add nat ..." specifically would arp for
>> the translated address, but again, the man pages says that's depreciated
>> in the 2.6 kernel.
>
> I'd simply route the IP adresses used for NAT to your Linux-based
> firewall, if I were you. That way you'll only need a /30 link network
> to be used on the public interface, while the addresses used for NAT do
> not have to be local to the firewall in any way. As an added bonus
> you'll get less ARP traffic on the public interface, as the upstream
> router only needs to learn the L2-address of the next-hop router (your
> firewall, that is).
>
> BR,
--
# Jesse Molina
# Mail = jesse@opendreams.net
# Page = page-jesse@opendreams.net
# Cell = 1.602.323.7608
# Web = http://www.opendreams.net/jesse/
next prev parent reply other threads:[~2009-05-24 21:02 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-24 10:37 How do we arp for NAT? Secondary IPs, proxy arp? something else? Jesse Molina
2009-05-24 11:19 ` Tore Anderson
2009-05-24 21:02 ` Jesse Molina [this message]
2009-05-24 21:55 ` Tore Anderson
2009-05-24 23:27 ` Mike Wright
2009-05-25 9:14 ` Pascal Hambourg
2009-05-29 8:09 ` Jesse Molina
2009-06-12 7:12 ` Jesse Molina
[not found] ` <20090524164956.6f3fa24e@catlap>
2009-05-24 21:15 ` Jesse Molina
2009-05-25 4:51 ` Robert Nichols
2009-05-25 7:21 ` Покотиленко Костик
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A19B5F1.4080000@opendreams.net \
--to=jesse@opendreams.net \
--cc=netfilter@vger.kernel.org \
--cc=tore.anderson@redpill-linpro.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.