To pass the CCNA exam, you’ve got to know how to work with IGRP and EIGRP unequal-cost load balancing. You may not see much IGRP in production networks anymore, but you’ll see a lot of EIGRP, and part of fine-tuning your EIGRP network is making sure that all paths are in use while allowing for varying bandwidth rates.\nUsing the variance command is the easy part – it’s getting the metric that’s the hard part with IGRP. With EIGRP, you just look in the topology table and that’s it. With IGRP, you’ve got to run a debug to get the right metric.\nThe variance command is a multiplier when the value supplied with the variance command is multiplied by the lowest-cost metric, it must exceed the higher-cost metric in order for the higher-cost route to be added.\nIf that sounds complicated, it’s not. It’s one of those things that sounds difficult, but isn’t. Trust me!\nIn this example, R1 has two paths to 172.23.0.0, but is currently using only one. By looking in the IP routing table, we’ve seen that the lowest-cost metric for network 172.23.0.0 on R1 is 8576. This path goes through the 184.108.40.206 network. There is another valid path that uses the 220.127.116.11 network, but is not currently in use.\nI 172.23.0.0\/16 via 18.104.22.168, 00:00:53, Serial0\nIGRP does not have a “show” command that displays all valid routes to a destination, as does EIGRP. The command debug ip igrp transactions will show the current metric of the routes using the 512 KBPS route.\nR1#debug ip igrp transactions\nIGRP protocol debugging is on\n19:17:51: IGRP: broadcasting request on Loopback0\n19:17:51: IGRP: broadcasting request on Serial0\n19:17:51: IGRP: broadcasting request on Serial1\n19:17:51: IGRP: received update from 22.214.171.124 on Serial1\n19:17:51: subnet 126.96.36.199, metric 23531 (neighbor 21531)\n19:17:51: subnet 188.8.131.52, metric 23531 (neighbor 8476)\n19:17:51: network 184.108.40.206, metric 24031 (neighbor 8976)\n19:17:51: network 220.127.116.11, metric 22131 (neighbor 1600)\n19:17:51: network 18.104.22.168, metric 22031 (neighbor 501)\n19:17:51: network 172.23.0.0, metric 21631 (neighbor 1100)\nR1(config)#router igrp 1\nR1(config-router)#variance 3\nR1#show ip route 172.23.0.0\nRouting entry for 172.23.0.0\/16\nKnown via “igrp 1”, distance 100, metric 8576\nRedistributing via igrp 1\nAdvertised by igrp 1 (self originated)\nLast update from 22.214.171.124 on Serial0, 00:00:01 ago\nRouting Descriptor Blocks:\n* 126.96.36.199, from 188.8.131.52, 00:00:20 ago, via Serial1\nRoute metric is 21631, traffic share count is 1\nTotal delay is 21000 microseconds, minimum bandwidth is 512 Kbit\nReliability 255\/255, minimum MTU 1500 bytes\nLoading 1\/255, Hops 0\n184.108.40.206, from 220.127.116.11, 00:00:20 ago, via Serial0\nRoute metric is 8576, traffic share count is 3\nTotal delay is 21000 microseconds, minimum bandwidth is 1544 Kbit\nReliability 255\/255, minimum MTU 1500 bytes\nLoading 1\/255, Hops 0\n18.104.22.168, from 22.214.171.124, 00:00:01 ago, via Serial0\nRoute metric is 8576, traffic share count is 3\nTotal delay is 21000 microseconds, minimum bandwidth is 1544 Kbit\nReliability 255\/255, minimum MTU 1500 bytes\nLoading 1\/255, Hops 0\nThe metric for 172.23.0.0 through the direct connection is 21631. A variance of 3 means that any route with a metric less than the best metric multiplied by the variance (in this case, 8576 x 3 = 25728) will be entered into the routing table. R1 now has three unequal-cost paths to 172.23.0.0 in its routing table, and load balancing will take place.\nIGRP unequal-cost load balancing takes some practice, but as you can see, once you get the metric it’s easy to work with. Just make sure you know how to get that metric!