sexta-feira, 29 de março de 2019

EIGRP-EIGRP Enhanced Interior Gateway Routing Protocol


EIGRP Enhanced Interior Gateway Routing Protocol
Enhanced Interior Gateway Routing Protocol (EIGRP) is a Cisco-proprietary Hybrid routing protocol but in 2013 EIGRP was converted to an open standard protocol, that runs on Cisco routers and on some Cisco switches its provides extremely quick convergence times with minimal network traffic.
EIGRP Features:
·         it is open standard protocol.
·         it is an IGP Protocol
·         it is a hybrid/advance distance routing protocol.
·         metric is bandwidth, load, delay, reliability, mtu.
·         hello timer 5sec and hold timer 15sec
·         Internal Administrative Distance – 90 
·         External Administrative Distance – 170
·         protocol number 88
·         first time full update after that triggered update
·         there are two versions of eigrp v2 and v3.
·         its uses Diffusing Update Algorithm (DUAL) to choose the best path from the source to the destination.
·         EIGRP is a Hybrid routing protocol, which has the properties of Distance Vector.
·         It Support classless routing.
·         It Support automatic & manual summarization.
·         It Support VLSM & CIDR.
·         EIGRP multicast IP 224.0.0.10.
·         we can run maximum 30process on a single router
·         It Supports MD5 authentication.
·         Best path by default 4, max 16/32.
·         It uses Autonomous System number.
·         EIGRP will form neighbor relationships with adjacent routers in the same Autonomous System (AS).
·         EIGRP used Reliable Transport Protocol (RTP) to ensure delivery of packets.
·         EIGRP routers do not send periodic, full-table routing updates.
·         EIGRP has a maximum hop count of 255, by default it is 100
·         EIGRP creates three tables – neighbor table, topology table & routing table.
·         EIGRP supports load balancing: - equal cost & un-equal cost.









DUAL (Diffusing update algorithm): - Diffusing Update Algorithm (DUAL) calculates the best loop-free path to each remote network. if in topology table multiple path available than it will run dual and it will select best lowest metric route and inserts it in routing table. it also provides fast convergence.
EIGRP uses the advertised distance and feasible distance to determine the successor (best route) and feasible successor (backup route) to a destination network.

Feasible Distance (FD): -The route which have the lowest metric to reach each network will become the Feasible Distance (FD). The Feasible Distance for each network will be installed into the routing table.

Reported/advertised distance (RD/AD): – This is the metric of a remote network which reported by a neighbor router is called Reported/advertised distance. 

Successor: - A successor route is the best route to reach a remote network. A successor route use to forward EIGRP traffic to destination and it is stored in the topology table as well as routing table.

feasible successor: - it is a backup path of successor which stored in topology table.eigrp will keep up to 32 feasible successors in topology table in ios version 15.0

Feasibility Condition: - The Feasibility Condition consider that a route will not be accepted if the Reported Distance is more than the Feasible Distance (best path).
            AD<FD of current successor

Reliable Transport Protocol (RTP): - EIGRP use RTP to detecting packet loss and ensure ordered delivery of the packets. EIGRP Packet types that require RTP are Update, reply, Query, SIA-Query and SIA-Reply.


EIGRP Neighbor-ship parameters: -
·         A.S. must match.
·         K values must match.
·         Authentication must match.
·         Network id must match.

EIGRP packets Types: -
·         Hello                            -multicast
·         Update-RTP                -unicast or multicast
·         Query-RTP                  -multicast
·         Reply-RTP                   -unicast
·         Acknowledgement      -unicast

Hello: - Hello packet is used for neighbor relationships, and for keep-alive. it's always multicast to address 224.0.0.10.

EIGRP Hello Packet Contents:
·         Version
·         opcode: hello, ack =5, update=1, query =3, reply=4
·         checksum
·         autonomous system number
·         EIGRP parameters: k values, hold time
·         sequence and acknowledge: used for acknowledged packet only (update, query, reply)
·         software version: information about the iOS version

Update packets: - Update packets are sent to the neighbors to build the topology and routing tables. Updates sent to a new neighbor as unicasts. whenever, if a route is modifying, the update is sent as a multicast to the address 224.0.0.10.
·         update massage can be unicast or multicast
·         it used rtp protocol
·         contain (subnets/prefix length, delay, bandwidth, mtu, load, reliability, hop count.)
·         update packets are sent to the neighbor to build the topology table and routing table.
·         if eigrp form static neighbor-ship between router than update will be unicast

Query packets: - Query packets are sent by a router when a Successor route fail, and there are no Feasible Successors in the topology table. The router places the route in an Active state, and queries its neighbor for an alternative route. Query packets are sent as a multicast to address 224.0.0.10

Reply packets: - Reply packets are sent in response to Query packets, when the responding router has an alternative path for querying route (feasible successor). Reply packets are sent as a unicast to the querying router.

Acknowledgment packet: - Acknowledgment packet is sent for the EIGRP Update, Query & Reply packets. Acknowledgment is always sent uni-cast address. An acknowledgement is not sent for the Hello and Acknowledgement packet. 


Active Route:  It means that the router is trying to find out a route for the destination network, if the successor is fails.

Passive Route:  It means that the router has a backup route for the destination network.



Stuck in active: - when a router notices that a route failure and there is no feasible successor for that route it move in active state from passive and that router sends a query message to its neighbor and it will wait for 3min for reply. If router does not receive a reply within active timer, that route will considered stuck-inactive state and it will flap the neighbor-ship with its neighbor.
You can set active time manually using this command.
                                     Router(config-router) # timers active-time (time)

Solution of stuck in active: -

Disable active timers
router(config-router) # timers active-time disabled
Stub router
router(config-router) # eigrp stub



Types of EIGRP Table:

·         Neighbor Table
·         Topology Table
·         Routing Table

Neighbor Table: - Eigrp neighbor table contains information about routers with which have neighbor relationships. Using "show ip eigrp neighbors" command show the information about neighbor routers.

R2#sh ip eigrp neighbors

IP-EIGRP neighbors for process 100
H   Address                 Interface       Hold          Uptime       SRTT   RTO       Q Cnt      Seq.Num
                                                             (sec)                              (ms)         
1   20.1.1.1                Fa0/1                12            00:00:51       68      408             0                22
0   40.1.1.2                Fa1/0                14            00:01:34       67       402           0                 22


Neighbor Table Fields:

·         H (Handle): - H show the number of neighbor adjacency is formed. The first neighbor will have '0' the following one will have '1' and so on.
·         Address: - IP address of the neighbor router.
  • Interface: - Interface of the neighbor router connected.
  • Hold Time: - How long to hold neighbor information if hello is not received from the neighbor router. By default, it is 15 seconds.
  • Uptime: - Since when the neighbor router is up.
  • SRTT (Smooth Round Trip Time): - how much Time to take a packet to reach the neighbor and get an acknowledgment back. This time is in milliseconds.
  • RTO (Retransmission Timeout): - how much Time take to wait before router retransmits a packet to the neighbor router.
  • Q Cnt (Queue Count): - Number of packets that are waiting to be transmitted. Any number greater than 0 means some congestion in the network.
  • Seq Number (Sequence Number): - Which Sequence number used the last packet was received.




Topology table: - The topology table use to stores the all paths to destinations networks learnt by the neighbor routers. Using "show ip eigrp topology" command shows the EIGRP topology table.







R2#sh ip eigrp topology

IP-EIGRP Topology Table for AS (100)/ID (2.2.2.2)

Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - reply Status, s - sia Status

P 10.1.1.0/24, 1 successor, FD is 30720
via 20.1.1.1 (30720/28160), FastEthernet0/1
P 20.1.1.0/24, 1 successor, FD is 28160
via Connected, FastEthernet0/1
P 30.1.1.0/24, 1 successor, FD is 28160
via Connected, FastEthernet0/0
P 40.1.1.0/24, 1 successor, FD is 28160
via Connected, FastEthernet1/0
P 50.1.1.0/24, 1 successor, FD is 30720
via 40.1.1.2 (30720/28160), FastEthernet1/0

·         P (Passive): - The router is not looking for the route. Means everything is going well.
·         A (Active): - The status of 'A' means the router is trying to find out a route for the destination, if the successor fails.
·         FD (Feasible Distance): - This is the best metric to reach a remote network.
·         30720/28160: - In the output 5632 is the feasible distance and 5376 is the advertised distance.
·         Advertised distance: - the metric of a remote network which reported by a neighbor router
·         Feasible distance: - This is the best metric to reach a remote network.




Routing table: - Routing table store the routes that are used for sending packets to the destination network. Routing table has the best possible route to a destination.

R1# show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     50.0.0.0/24 is subnetted, 1 subnets
D       50.1.1.0 [90/33280] via 20.1.1.2, 00:00:10, FastEthernet0/1
     20.0.0.0/24 is subnetted, 1 subnets
C       20.1.1.0 is directly connected, FastEthernet0/1
     40.0.0.0/24 is subnetted, 1 subnets
D       40.1.1.0 [90/30720] via 20.1.1.2, 00:01:01, FastEthernet0/1
     10.0.0.0/24 is subnetted, 1 subnets
C       10.1.1.0 is directly connected, FastEthernet0/0
     30.0.0.0/24 is subnetted, 1 subnets
D       30.1.1.0 [90/30720] via 20.1.1.2, 00:01:01, FastEthernet0/1



D: - Shows EIGRP route.

90/ 30720: - 90 show the internal Administrative Distance of EIGRP. 30720 is the metric to reach destination network.

00:01:01 - Time since the route was learnt.


Null 0: -
·         It is a loop avoidance mechanism entry stored in routing table,
·         Null0 will be created only in case of summarization (auto & manual)
·         If any traffic goes towards null0 then it will drop by eigrp.



EIGRP Metric Calculation: - EIGRP can utilize 5 separate metrics called K-Values to determine the best route to a destination:

Bandwidth (K1):  route path link. measured in kilobits, default is set to 1.
Delay (K3) Cumulative delay of all outgoing interfaces its tens of microseconds, by default is set to 1.
Reliability (K4):   Average reliability of outgoing interfaces, it from 1 to 255, 255 is most reliable, by default is set to 0.
Load (K2):  Cumulative load of outgoing interface, by default is set to 0.
MTU(K5): - lowest Maximum Transmission Unit in the path. MTU is never used to calculate metric, by default is set to 0.

By default, only total delay and minimum bandwidth are considered to calculate metric, but a network administrator can use all the K values to calculate metric.

By default, the full formula for determining the EIGRP metric: -
                        [10000000/bandwidth + delay] * 256

If all metrics were set, the full formula is:

[K1 * bandwidth * 256 + (K2 * bandwidth) / (256 - load) + K3 * delay * 256] * [K5 / (reliability + K4)]


Serial Cable: - Bandwidth 1544kbps, delay 20,000 microseconds
fast Ethernet: - Bandwidth 100000kbps, delay 1000 microsecond
Loopback: - Delay 5000 microsecond

Change metric weights: -

R1(config)# router eigrp 100
R1(config-router) # metric weights 0 1 1 1 0 0

Change bandwidth: -

R1(config)# interface f0/1
R1(config-if) # bandwidth 64
R1(config-if) # ip bandwidth-percent eigrp 100 30

Note: - By default, EIGRP will use up to 50% of the bandwidth of an interface.



Change Delay: -

R1(config)# interface f0/1
R1(config-if) # delay 10000


EIGRP Passive Interface:  It is possible to control which router interfaces will participate in the EIGRP process. this command use to prevents updates from being sent or received of this interface:
R1(config-router)#network 20.1.1.0
R1(config-router)#passive-interface Fast Ethernet 0/1

Basic EIGRP Configuration: -

R1(config) # router eigrp 100
R1(config-router) # network 20.1.1.0  255.255.255.0
R1(config-router) # network 10.1.1.0  255.255.255.0

·         The router eigrp 100 command, enables the EIGRP process.
·         The "100" indicates the Autonomous System Number.
·         The Autonomous System number can range from 1 to 65535.
·         Only EIGRP routers in AS 100 will form neighbor adjacencies and share updates with this router.
·         The network Command identify which networks you want to advertise to other EIGRP routers.


Auto-summarization: -

The router performed the auto-summarization will also add the summary route to its routing table, with a Null0 interface. This is to prevent routing loops.
Auto-summarization can be disabled Manually:
R1(config) # router eigrp 100
R1(config-router) # no auto-summary

EIGRP Summarization: -
·         The router perform summarization will add the summary route to its routing table, with a next hop of the Null0 interface.
·         The summary route will only stay in the routing table if a more specific route still exists.
·         EIGRP summary route has an Administrative Distance of 5. 
·         Ip summary-address command allows us to manually summarize this network.

R1(config) # interface f0/1
R1(config-if) # ip summary-address eigrp 100 10.0.0.0 255.0.0.0


EIGRP Load-balancing: -If the router receives and installs multiple paths with the same administrative distance and cost to a destination, load-balancing can occur.
Load balancing increases the utilization of network segments, and so increases effective network bandwidth.

There are two types of load balancing:

a)     Equal cost load balancing
b)    Unequal cost load balancing

Equal Cost Load Balancing: -  When a route is learnt from two or more different neighbors and has found same metric then both these routes are installed in routing table and load balancing is done. The metric is same it's known as equal cost load balancing. We can manually perform EIGRP equal cost load balancing using offset list or delay Command.


Unequal Cost Load Balancing: -  When a route is learnt from two or more different neighbors and has found different metric then load balancing will not occur automatically. Then we need "variance" Command. This command makes EIGRP load Unequal Cost Load Balancing.

·         The variance command multiply in this instance of 2.
·         We multiply this variance value by the metric of our Feasible Distance.
·         Variance is range is 1-128.


Offset-list: - EIGRP Offset-list is usually used to increase the metric of routes being advertised over a link. It is used for equal cost load-balancing or path manipulation.

·         router(config)#access-list 1 permit 1.1.1.0 0.0.0.255
·         router(config-router) #offset-list 1 in 100 (on all interface)
·         router(config-router) #offset-list 1 in 100 Ethernet 0/0 (for specific interface)
·         router# show ip protocol (to check offset list).



Variance: - EIGRP provides a mechanism to load balance over unequal cost paths through Variance Command. Variance is a number 1 to 128, its multiplied by the best metric then includes the routes with the lesser or equal metric. it will multiply with successor when dual algorithm run on topology table.

            R1 (config) # router eigrp 100
            R1 (config-router) # variance (1 to 128)

Change Max-Path: -

By default, eigrp support equal cost load balancing in 4 paths but we can change it up to 32 in ios version 15.0 and above.

R1 (config-router) # maximum-path 8 (1 to 32)



EIGRP Authentication: - EIGRP authentication use routers to authenticate every EIGRP message. The routers should use the same pre-shared key and generate an MD5 digest for each EIGRP message. If a router configured for EIGRP authentication receives an EIGRP message, and the message's MD5 digest does not pass the authentication checking, the router silently discards the message.



The EIGRP authentication configuration process requires a few steps.
·         Create a key chain.
·         Enable EIGRP MD5 authentication on an interface using the ip authentication mode eigrp asn md5 interface Command.
·         The correct key chain to be used on an interface using the ip authentication key-
chain eigrp
asn name-of-chain command.

Configuration:

R1(config)#key chain cisco (key chain name can be different)
R1(config-keychain)#key 1
R1(config-keychanin-key)#key-string cisco1
R1(config-if)#ip authentication mode eigrp 100 md5
R1(config-if)#ip authentication key-chain eigrp 100 cisco
R1#show key chain



Nenhum comentário:

Postar um comentário