Transparent broadband network connectivity (Internet PnP)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

Can someone let me know if current netfilter can allow clients inside
Internal network (can be any different ip) access Internet? There are some
commercial products such as Reliaware
(http://www.demarctech.com/products/reliawave-rwh/reliawave-ipnpsg.html)
(see Address Translate Function section), WayPort (http://www.wayport.net),
IP PnP (http://www.infino.co.kr/infino/eng/softpackage_e.php) provide that
feature but I'm looking for an opensource solution.

The main point of this system is that the client just only need to plug
into the net then he can surf internet without changing his ip
configuration. So clients inside internal network can have any IP address
(different subnet, netmask, gateway, dns ... and even thought clients have
the same IP)

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 routine, 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).

Do anyone have idea to solve this? Do current netfilter can do it or I need
to hack some netfilter code?

Best Regards,

JD



[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux