cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
831
Views
0
Helpful
11
Replies

Unequal load balancing a T1 with EIGRP

mhs
Level 1
Level 1

I am wondering how to get my EIGRP routing table to activly use the feasible successor routes in an equal load sharing manner. I have 3 networks in question here 192.168.1.0, 192.168.2.0, 192.168.10.0. Router a is 192.168.2.0 Router b is 192.168.1.0 Router C is 192.168.10.0. Router A has 2 Point to Point T1s in it, one going to router b and one going to router c. Router B and C currenly share 2 T1s (using bandwidth as the metric to load balance).

2.0== a------b====1.0

/ / /

/ / /

C=======10.0

LEGEND:

--- and /: represent point to point T1s

__________________________________________________

(I am sorry for the horrible diagram but I wanted to make it easier hopefully that is what I have done)

What I need is for Router A to send 1.0 and 10.0 traffic out both serial interfaces equally.

Right now Router A send all 1.0 traffic out the a-b link and all 10.0 traffic out the a-c link.

My current Eigrp topolgy looks like this: Ran command ((sh ip eigrp topology all-links))

P 192.168.10.0/24, 1 successors, FD is 2183168, serno 480

via 192.168.102.1 (2183168/28160), Serial0/0

via 192.168.8.49 (2695168/2183168), Serial0/1

192.168.1.0/24, 1 successors, FD is 2183168, serno 410

via 192.168.8.49 (2183168/28160), Serial0/1

via 192.168.102.1 (2695168/2183168), Serial0/0

Sh ip route output

D 192.168.1.0/24 [90/2183168] via 192.168.8.49, 12:22:11, Serial0/1

D 192.168.10.0/24 [90/2183168] via 192.168.102.1, 12:23:10, Serial0/0

The first link int each of the above topology is the primary route used, I need them to share these links. Can anyone assist me with this problem? EIGRP needs to remain the routing protocol.

11 Replies 11

dbellazetin
Level 4
Level 4

The metrics are not equal so EIGRP is performing default behavior and choosing the best route. If you want EIGRP to use both routes than put the command "variance 2" under EIGRP and you should have 2 successors for each route, thus 2 routes in your routing table for each destination.

Daniel

Daniel thanks for the reply. I have tried that variance command per Cisco's docs, but it did not work. Do I have to set the variance command on just the one router or on all three?

Unfortunately, with a triangle topology like you have, the alternate T1 is not a feasible successor and will not be used regardless of the variance setting. If you are not familiar with the concept of feasible successor as used by EIGRP, you should stop and do some studying before continuing, then come back and tweak your routing setup so that both links are feasible successors for both destination networks.

Hint: It's not easy, as you have to weight the routes based on the individual destinations being advertised, which makes it very easy to really screw up your network if you don't pay careful attention.

An easier solution is to use static routes rather than EIGRP. That way, both paths are equal cost and load sharing is automatic. Just make sure that loss of a link will cause the link to go down at the link level (e.g., point-to-point or frame relay with end-to-end keepalives). If you really only have three networks to worry about (rather than posting a simplified version of reality), this would be trivial.

Good luck and have fun!

Vincent C Jones

www.networkingunlimited.com

Unfortunatly, I have about 30 ehternet networks and about 20 different point to point WAN links. In the example I have given SIte C is the data center where most applications are hosted. However, site b host things such as intranet, e-mail, and file sharing.

mhs
Level 1
Level 1

OK I got this solved with some help.

You need to create an access list like

access-list 10 permit 192.168.10.0 0.0.0.255

Then look do a sh ip eigrp topology 192.168.10.0 and subtract the difference of the composite metric in my case it was 512000.

Then withing your eigrp router config add

offset-list 10 in 512000 Serial0/0 and the routes appear in the routing table.

You need to set this on both sides of the router so it is reverse on the otherside for the ACL.

Obviously you need to adjust the interfaces and metric number accrding to your specific site.

I just wanted to post the solution for others who may have this same problem.

I have an almost identical problem. I have a triangle topology, except that sites A, B, & C are all connected by T1s.

Since the Reported Distance is equal to the Feasible distance, EIGRP will not load balance.

I understand about using offset-list as mhs has done, however, this will not allow me to set up load balancing across all six serial interfaces of all three routers (although I can setup balancing between two of them) because once you set the offset value around the whole triangle, all of Reported Distances once again equal all of the Feasible distances.

The only way I can think of accomplishing this was if you were allowed to enter a NEGATIVE value in an offset-list (which you can't do).

mhs, where you able to get the load balancing to work across the whole triangle in both directions across each interface?

vcjones, you mention it can be done by weighting the routes. Can you please provide some more details (maybe one or two example commands?)

I would, of course, would like to avoid manual intervention in the case of a failure.

ITguy I was able to implement load balancing in both directions. I had to set offset lists and ACLs on both routers. This is what I typed in on the routers

Router a

router eigrp 100

offset-list 10 in 512000 Serial0/0

access-list 10 permit 192.168.10.0 0.0.0.255

Router C

router eigrp 100

offset-list 10 in 512000 Serial2/0

access-list 10 permit 192.168.2.0 0.0.0.255

Thanks mhs. Are only load balancing between A & C then? I am trying to load balance across A, B, & C.

To load balance across all three, you need to cheat! The trick is to not advertise the real destinations with EIGRP, but instead advertise a set of unique "target" addresses which are filtered so that each can be learned only via one of the routes. Then use static routes pointing to the target addresses to actually route to the real destinations.

By advertising a unique set of targets for each remote router, you can apply the necessary offsets to make both targets equal, allowing load sharing of the real traffic with the static routes.

Note that you must use indirect static routes so that you don't create routing loops when the link between the two other routers goes down.

Note that this only works when there is only one link between each pair of routers because it depends on the intermediate router not sending the packet back to balance its load.

Disclaimer: What is possible and what is practical are often two different things. Obviously, there are real problems scaling this approach to larger, more complex networks.

Good luck (you'll need it) and have fun (yeah, right).

Vincent C Jones

www.networkingunlimited.com

Thanks, vcjones. I understand the concept you are describing, and actually had been trying to find a way to cheat by creating a virtual interface but I can't find any good starting point for learning more on this.

Since I am a routing neophite, can you tell me where I can learn more on creating "indirect static routes?"

A Google search turns up empty. What keywords can I search on? I guess ultimately I am trying to learn how to create the additional set of targets you describe.

I use them quite extensively for dial backup and for exchanging routes through firewalls. There are many examples in my book, or for an extreme example, look at the white paper on Redundant Firewalls on my web site. Even though the routing protocol is BGP rather than EIGRP in that paper, the use of target routes rather than real routes to drive static routes is very clear (at least to me, many people find the example pretty opaque in general).

Good luck and have fun!

Vincent C Jones

www.networkingunlimited.com