linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* ip routing
@ 2003-11-30  8:24 Rainer Hochreiter
  2003-11-30 10:20 ` bert hubert
  0 siblings, 1 reply; 2+ messages in thread
From: Rainer Hochreiter @ 2003-11-30  8:24 UTC (permalink / raw)
  To: linux-kernel

hi list!

i have a problem with ip routing!

first of all my configuration:

Tux1 .... embedded linux (kernel-2.4.10) running busybox-0.60.3
          and 2 lan interfaces in different networks
          default gateway 10.1.0.254 via eth0
R1, R2 .. router (linux for testing)
Tux2 .... linux with network different to Tux1/eth0/eth1

     eth0=10.1.0.1/16 +-----+ eth1=10.2.0.1/16
                   .--|Tux1 |--.
                   |  +-----+  |
eth1=10.1.0.254/16 |           | eth1=10.2.0.254/16
                +-----+     +-----+
   ip_forward=1 | R1  |     | R2  | ip_forward=1
                +-----+     +-----+
eth0=10.3.1.254/16 |           | eth0=10.3.2.254/16
                   |           |
                   '-----+-----'
                         | eth0=10.3.0.1/16
                      +-----+
                      |Tux2 |
                      +-----+

i want to achieve, that each packet received on Tux1/eth1 will also be
replied via this interface. this isn't the case now, because the
received packets came from a different network and therefore the replies
are sent back via Tux1/eth0 using the default route.

but the replies have to be sent even when the connection between
Tux1/et0 and R1 is not available. a possible solution is, setting a
network route for network Tux2/eth0 via Tux1/eth1, but in my special
case, i do not know from which network i'll receive the packets!

and here i reached the point where my knowledge ends;-(

i tried to solve this problem in my application running on Tux1, using
the following code:

s = socket();
bind(s, "10.2.0.1"); // bind to Tux1/eth1
listen(s);
s2 = accept(s);
int yes=1;
setsockopt(s2, SOL_SOCKET, SO_DONTROUTE, &yes, sizeof(yes));

...but setting SO_DONTROUTE on socket s2 doesn't have the effect, that
the reply packets are always sent back via Tux1/eth1! 
is it possible at all to guarantee this in any case? because this means
bypassing the routing stuff!

any hints welcome!

greetings, 
rainer

PLEASE personally CC any answers and comment to my question - thnx!



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: ip routing
  2003-11-30  8:24 ip routing Rainer Hochreiter
@ 2003-11-30 10:20 ` bert hubert
  0 siblings, 0 replies; 2+ messages in thread
From: bert hubert @ 2003-11-30 10:20 UTC (permalink / raw)
  To: Rainer Hochreiter; +Cc: linux-kernel


On Sun, Nov 30, 2003 at 09:24:01AM +0100, Rainer Hochreiter wrote:

>      eth0=10.1.0.1/16 +-----+ eth1=10.2.0.1/16
>                    .--|Tux1 |--.
>                    |  +-----+  |
> eth1=10.1.0.254/16 |           | eth1=10.2.0.254/16

I haven't read all of your problem, but you might want to look policy
routing on http://lartc.org/howto/lartc.rpdb.html


-- 
http://www.PowerDNS.com      Open source, database driven DNS Software 
http://lartc.org           Linux Advanced Routing & Traffic Control HOWTO

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-11-30 10:20 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-11-30  8:24 ip routing Rainer Hochreiter
2003-11-30 10:20 ` bert hubert

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).