Re: IP Tunnel+IP Tables.

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

 



Thanks for the reply Jim.
The problem we're having is just changing the internal
net addresses costs too much. It is not ordinary
network but special network that has very limited
resources (even putting one more wire other that what
we have is not allowed). Well I thought about the
solutions, but nothing is really satisfactory at the
moment. So I'm trying to see if I miss anything by my
lack of knowledge.

Here are solutions I'm considering.
1. Use IP Tunnel between the machine A and machine B.
This can prevent client machines from touching inner
machines, but since machine A and machine B are still
using the public IP addresses as private addesses. If
the machine on the internet has the same address as
what machine A or B are using, the client machines
won't be able to contact true destination.
Besides this we have one machine A, but we can have
upto 300 Linux B machines. For this, I believe machine
A will be responsible for upto 300 tunneling
configured for each Linux B machines. I'm not sure how
realistic it is to configure 300 ipip tunneling on one
box. (I feel that calculating IP checksum will kill
the processor.)

2. Using DNAT at machine B and again DNAT at machine
A. For this to work I need to maintain two tables, but
we're currently using class A addresses (uggggg). So
we'll basically need to maintain very large (I mean
VERY LARGE) tables at machine A and machine B. I'm not
sure if IP tables supports wild card matching or some
sort (I gotta dig into this).

3. Just don't allow client from accessing those public
internet machines using the address we're using.
This seems to be the easiest. Install firewall on
machine B, and block anything that goes to the IP
addresses that we're using. Well, but people who wants
to contact the machines that has the same IP addresses
as we do will complain.

Above are 3 possible senarios I can think of. If
anyone out there can give me any suggestion, please
help.

--- Jim Carter <jimc@xxxxxxxxxxxxx> wrote:
> On Thu, 9 Oct 2003, kilho Kim wrote:
> > the problems. The problem we're facing is we have
> huge
> > subnet (even though main idea is the same as Box A
> &
> > Box B) and we are using public IP addresses as our
> > private network's ip addresses. For this reason,
> we
> > are trying to hide our network from the clients.
> Yes
> > there maybe some case that the client can actually
> try
> > to access the host that has the duplicated ip
> address
> > as one of our machine does. The way we try to
> solve
> > this is by using the tunneling between the linux A
> and
> > linux B.
> 
> Internet -- A -- mid-net -- B -- internal clients
> 
> If I understand you right, some or all of the
> mid-net clients actually have
> IP addresses that global internet machines have. 
> You have bigger problems
> than just giving internet access to your internal
> clients.  Mid-net
> machines will not be able to talk to the internet
> because return packets
> will go to the true owners of the IP addresses.  You
> need to convince your
> management to clean up your network addressing.  The
> range 10.0.0.0/8 (and
> others) is intended for this purpose.  It has 2^24
> addresses and should be
> big enough :-)  Here at UCLA the entire hospital
> (maybe 10^4 machines) has
> used this strategy.
> 
> Your external services (web server, SMTP gateway,
> DNS) would be on a small
> subnet with public addresses (belonging to you),
> from which a second router
> would lead to the internal net.  As an alternative,
> Linux A could do DNAT
> so internet users could contact it on port 25, 53 or
> 80 and the connections
> would be forwarded to mid-net server(s).  But that's
> more complicated.
> 
> If you have control of Linux A and Linux B, but your
> management is
> (expletive deleted), a tunnel like you describe
> should work, as long as
> your internal clients don't try to contact any
> mid-net machines,
> specifically including any DNS servers on the
> mid-net.  Or alternatively,
> you forget about the tunnel, the internal clients
> see the mid-net, but they
> never see the true owners of those addresses on the
> internet.  You can
> easily find that things don't work because of the
> inconsistent addressing.
> 
> Hmmm.  I didn't notice if you said you had the
> tunnel working.  You need to
> establish a host route specifically from Linux B to
> Linux A and vice versa.
> Otherwise, tunnel envelope packets (that ought to go
> direct from A <-> B)
> will be sent from B down the tunnel to (what it
> thinks is) the global
> Internet, or from A to the global internet instance
> of B's mid-net address.
> It would really be best to avoid the whole issue by
> using private
> addresses.
> 
> James F. Carter          Voice 310 825 2897    FAX
> 310 206 6673
> UCLA-Mathnet;  6115 MSA; 405 Hilgard Ave.; Los
> Angeles, CA, USA 90095-1555
> Email: jimc@xxxxxxxxxxxxx 
> http://www.math.ucla.edu/~jimc (q.v. for PGP key)
> 


__________________________________
Do you Yahoo!?
The New Yahoo! Shopping - with improved product search
http://shopping.yahoo.com


[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