From: Patrick McHardy <kaber@trash.net>
Cc: dragon_nlt@yahoo.com,
Netfilter Development Mailinglist
<netfilter-devel@lists.netfilter.org>
Subject: Re: Transparent broadband network connectivity (IP PnP)
Date: Thu, 13 Mar 2003 20:19:16 +0100 [thread overview]
Message-ID: <3E70D9B4.4030703@trash.net> (raw)
In-Reply-To: <20030313090821.GA7053@naboo.de.gnumonks.org>
>
>
>>>Date: Thu, 13 Mar 2003 09:43:50 +0700
>>>To: laforge@gnumonks.org
>>>From: dragon_nlt@yahoo.com
>>>Subject: RE: Transparent broadband network connectivity (IP PnP)
>>>
>>>Hi,
>>>
>>>Maybe you will misunderstand my question. So i will describe the problem
>>>in detail.
>>>
>>>This is the implementation for such a public internet access network like
>>>airport, hotel, ... So the client IP address can be any thing. The main
>>>point is that a client just only need to plug into the net then he can
>>>surf internet without changing his ip configuration.
>>>I found some commercial products for this such as IP PnP
>>>(http://www.infino.co.kr/infino/eng/softpackage_e.php), Reliaware
>>>(http://www.demarctech.com/products/reliawave-rwh/reliawave-ipnpsg.html)
>>>(Please see Address Translate Function section). I wonder that iptables
>>>itself can do it or not.
>>>
>>>With iptables, we can nat outgoing traffic, but the problem is that
>>>clients inside internal network can be any IP address (different subnet,
>>>netmask, gateway, dns ... and even thought clients have the same IP). I
>>>think there is needed a layer-2 NAT, e.g. handling clients which may have
>>>any IP address (even the same IP address), etc. correctly. I found a
>>>useful thread here
>>>http://lists.personaltelco.net/pipermail/ptp/2002q4/010591.html.
>>>
>>>For example
>>>
>>>Client 1 -----------|
>>>192.168.10.5 |
>>> | 172.16.1.1 PublicIP
>>>Client 2 -----------| eth0 eth1
>>>DHCP(172.16.1.90) |-------- [ GW ] ----- [ router ] --- Internet
>>> | DefaultGW=RouterIP
>>>Client 3 -----------|
>>>200.192.16.10 |
>>> |
>>>Client 4 -----------|
>>>64.12.5.12
>>>
>>>I can set the eth0 into proxy arp mode (net.ipv4.conf.eth0.proxy_arp = 1)
>>>to set it as the gateway for all clients, and use iptables SNAT target
>>>inside nat POSTROUTING chain of eth1.
>>>
>>>iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source <eth1 ip>
>>>
>>>When client send a packet out, the packet goes into eth0, goes through
>>>forward chain after routing decision, get nat'd on eth1 then send to the
>>>router. The problem is that when the reply packet from router goes back
>>>eth1, after de-nat'd, the packet will be sent to the eth1 following the
>>>default route on gateway box instead of eth0 (since client can have any
>>>ip, so we can't set the routing table; default gateway is router's ip via
>>>eth1). I think there is needed such a MAC based NAT module on PREROUTING
>>>chain of eth0. So the gateway will don't care about client IP, just client
>>>MAC address (assume that MAC address is unique). Do you have any idea?
>>>
>>>Best Regards,
>>>
>>>John Duke
>>>
>>>
I guess you could use conntrack match with --orig-dst and ROUTE target
to force packets
out the "correct" interface. You probably still need to do some things
to make linux send
arp requests for these ips.
Patrick
next prev parent reply other threads:[~2003-03-13 19:19 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <5.2.0.9.2.20030313100719.01f73bc0@216.136.173.10>
2003-03-13 9:08 ` Transparent broadband network connectivity (IP PnP) Harald Welte
2003-03-13 18:18 ` Ilguiz Latypov
2003-03-13 19:19 ` Patrick McHardy [this message]
2003-03-13 20:37 Ian Latter
-- strict thread matches above, loose matches on Subject: below --
2003-03-13 21:44 Ian Latter
2003-03-13 23:32 ` Patrick McHardy
2003-03-17 14:36 ` John Duke
2003-03-17 17:14 ` Cedric de Launois
2003-03-14 0:36 Ian Latter
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=3E70D9B4.4030703@trash.net \
--to=kaber@trash.net \
--cc=dragon_nlt@yahoo.com \
--cc=netfilter-devel@lists.netfilter.org \
/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.