All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul hesselsp@sheridanc.on.ca
To: lartc@vger.kernel.org
Subject: [LARTC] load balance/redundancy
Date: Sun, 10 Dec 2000 23:50:18 +0000	[thread overview]
Message-ID: <marc-lartc-98373938217019@msgid-missing> (raw)
In-Reply-To: <marc-lartc-98373938217013@msgid-missing>

<PRE>Arthur,

Thanks for your help.  I tried what you suggested, here is the result:

# /sbin/ip route add default nexthop via 24.141.xxx.1 nexthop via
64.229.xxx.1
RTNETLINK answers: Network is unreachable

So instead, I tried:

# /sbin/ip route add default nexthop via 24.141.xxx.1 dev eth0 nexthop via
64.229.xxx.1 dev ppp0

# ip route ls
64.229.xxx.1 dev ppp0  proto kernel  scope link  src 64.229.xxx.12
24.141.xxx.0/22 dev eth0  proto kernel  scope link  src 24.141.xxx.89
127.0.0.0/8 dev lo  scope link
default
        nexthop via 24.141.xxx.1  dev eth0 weight 1
        nexthop via 64.229.xxx.1  dev ppp0 weight 1

and that seemed to work, so I tried:

# /sbin/ip route add default nexthop dev eth0 nexthop dev ppp0

# ip route ls
64.229.xxx.1 dev ppp0  proto kernel  scope link  src 64.229.xxx.12
24.141.xxx.0/22 dev eth0  proto kernel  scope link  src 24.141.xxx.89
127.0.0.0/8 dev lo  scope link
default
        nexthop dev eth0 weight 1
        nexthop dev ppp0 weight 1


Now this seems to work.  Is there anything wrong with this?  Can you take
a guess at why what you suggested didn't work?  I think I tried all the
different permutations with addresses, I think the problem must come from
the pppoe interface.

Now all I have to do is kludge something together for my redundancy, set
up firewalling, and masqerading.

Thanks,
Paul


On Sun, 10 Dec 2000, Arthur van Leeuwen wrote:

&gt;<i> On Sun, 10 Dec 2000 <A HREF="mailto:hesselsp@ashaman.dhs.org">hesselsp@ashaman.dhs.org</A> wrote:
</I>&gt;<i> 
</I>&gt;<i> &gt; Well, I think I have the redundancy down... In a kludgy way.  Right now I
</I>&gt;<i> &gt; have two default routes.
</I>&gt;<i> 
</I>&gt;<i> &gt; route add default gw 24.141.xxx.1
</I>&gt;<i> &gt; route add default gw 64.229.xxx.1
</I>&gt;<i> 
</I>&gt;<i> Actually, if I understand the code correctly what you do here is in fact
</I>&gt;<i> create a multipath route. A cleaner way to do so is using ip route 2 as
</I>&gt;<i> follows:
</I>&gt;<i> 
</I>&gt;<i> ip route add default nexthop via 24.141.xxx.1 nexthop via 64.229.xxx.1
</I>&gt;<i> 
</I>&gt;<i> This explicitly states that you will be using a multipath route and balances
</I>&gt;<i> outgoing routes over the two interfaces.
</I>&gt;<i> 
</I>&gt;<i> &gt; I can write a script that if one of connections goes down for x number of
</I>&gt;<i> &gt; pings, then remove the route.
</I>&gt;<i> 
</I>&gt;<i> And here's the crux. It would be nice for the kernel to use its idea of
</I>&gt;<i> gateway reachability (in the neighbor cache) to automatically ignore an
</I>&gt;<i> upstream hop in case it is dead. However, for multipath routes, no
</I>&gt;<i> death detection is done on the gateways in the different hops. This is
</I>&gt;<i> quite somewhat different from the single default route behaviour 
</I>&gt;<i> 
</I>&gt;<i> &gt; Now for the load balancing.
</I>&gt;<i> 
</I>&gt;<i> The kernel balances outgoing routes over the upstream interfaces. Unless all
</I>&gt;<i> your packets go to the same address, that should balance your traffic
</I>&gt;<i> already. Other than that there's some code based on EQL that will flush the
</I>&gt;<i> route cache after every packet, thereby smashing the route-balancing down to
</I>&gt;<i> packet-level load balancing. I can't seem to find the URL for that code,
</I>&gt;<i> though, unfortunately.
</I>&gt;<i> 
</I>&gt;<i> &gt; Can you point me to documentation on iproute?  Other then the Advanced
</I>&gt;<i> &gt; Routing HOWTO, unless I am missing something in it.
</I>&gt;<i> 
</I>&gt;<i> <A HREF="http://snafu.freedom.org/linux2.2/iproute-notes.html#doc">http://snafu.freedom.org/linux2.2/iproute-notes.html#doc</A>
</I>&gt;<i> 
</I>&gt;<i> There's some more interesting stuff on <A HREF="http://snafu.freedom.org/linux2.2/">http://snafu.freedom.org/linux2.2/</A>
</I>&gt;<i> as well. 
</I>&gt;<i> 
</I>&gt;<i> Doei, Arthur.
</I>&gt;<i> 
</I>&gt;<i> 
</I>
-- 
HEY!  I'm a guy like me!

		--Homer



</PRE>

  parent reply	other threads:[~2000-12-10 23:50 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-12-10  5:22 [LARTC] load balance/redundancy Paul
2000-12-10 16:30 ` Arthur
2000-12-10 17:32 ` hesselsp
2000-12-10 17:57 ` Arthur
2000-12-10 23:50 ` Paul [this message]
2000-12-11  0:11 ` hesselsp
2000-12-11  8:00 ` Arthur
2000-12-11  9:56 ` dan_c

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=marc-lartc-98373938217019@msgid-missing \
    --to=lartc@vger.kernel.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.