Skip to content

EIGRP

EIGRP (Enhanced Interior Gateway Routing Protocol) is an advanced distance-vector interior gateway protocol that provides fast convergence and loop-free routing using the DUAL algorithm on NX-OS. Each EIGRP process is identified by an instance tag and supports IPv4 and IPv6 unicast address families in the default VRF and in user-defined VRFs. Per address family, the process manages the autonomous system number, router ID, administrative distances, maximum paths, metric weights and wide (64-bit) metrics, stub routing, graceful restart (NSF) timers, default metrics, default-information origination, route redistribution with maximum-prefix limits, table-maps, and MD5 authentication. EIGRP interface-level configuration enables the process per address family and manages hello and hold timers, bandwidth and delay metric components, BFD, next-hop-self, split-horizon, passive mode, authentication, distribute-lists, offset-lists, and summary addresses across loopback, VLAN, Ethernet, port-channel, and subinterface types.

Diagram
NameTypeConstraintMandatoryDefault Value
devicesListdevicesNo
device_groupsListdevice_groupsNo
globalClassglobalNo
templatesListtemplatesNo
interface_groupsListinterface_groupsNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
configurationClassconfigurationNo

NameTypeConstraintMandatoryDefault Value
routingClassroutingNo
interfacesClassinterfacesNo

NameTypeConstraintMandatoryDefault Value
subinterfacesListsubinterfacesNo
eigrpClasseigrpNo

NameTypeConstraintMandatoryDefault Value
loopbacksListloopbacksNo
vlansListvlansNo
ethernetsListethernetsNo
port_channelsListport_channelsNo

ethernets (nxos.devices.configuration.interfaces)

Section titled “ethernets (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
subinterfacesListsubinterfacesNo
eigrpClasseigrpNo

port_channels (nxos.devices.configuration.interfaces)

Section titled “port_channels (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
subinterfacesListsubinterfacesNo
eigrpClasseigrpNo

NameTypeConstraintMandatoryDefault Value
eigrp_processesListeigrp_processesNo

loopbacks (nxos.devices.configuration.interfaces)

Section titled “loopbacks (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
eigrpClasseigrpNo

vlans (nxos.devices.configuration.interfaces)

Section titled “vlans (nxos.devices.configuration.interfaces)”
NameTypeConstraintMandatoryDefault Value
eigrpClasseigrpNo

subinterfaces (nxos.devices.configuration.interfaces.ethernets)

Section titled “subinterfaces (nxos.devices.configuration.interfaces.ethernets)”
NameTypeConstraintMandatoryDefault Value
eigrpClasseigrpNo

eigrp_processes (nxos.devices.configuration.routing)

Section titled “eigrp_processes (nxos.devices.configuration.routing)”
NameTypeConstraintMandatoryDefault Value
nameStringYes
flush_routesBooleantrue, falseNo
isolateBooleantrue, falseNo
address_familiesListaddress_familiesNo
vrfsListvrfsNo

eigrp (nxos.devices.configuration.interfaces.loopbacks)

Section titled “eigrp (nxos.devices.configuration.interfaces.loopbacks)”
NameTypeConstraintMandatoryDefault Value
instance_nameStringYes
address_familiesListaddress_familiesNo

address_families (nxos.devices.configuration.routing.eigrp_processes)

Section titled “address_families (nxos.devices.configuration.routing.eigrp_processes)”
NameTypeConstraintMandatoryDefault Value
address_familyChoiceipv4-unicast, ipv6-unicastYes
shutdownBooleantrue, falseNo
autonomous_systemIntegermin: 1, max: 65535No
router_idIPNo
distance_internalIntegermin: 1, max: 255No
distance_externalIntegermin: 1, max: 255No
maximum_pathsIntegermin: 1, max: 32No
timers_active_timeAnyInteger[min: 1, max: 65535] or Choice[disabled] or String[Regex: ^.*[\$\%]\{.*$]No
metric_version_64bitBooleantrue, falseNo
metric_rib_scaleIntegermin: 1, max: 255No
metric_maximum_hopsIntegermin: 1, max: 255No
metric_weights_tosIntegermin: 0, max: 8No
metric_weights_k1Integermin: 0, max: 255No
metric_weights_k2Integermin: 0, max: 255No
metric_weights_k3Integermin: 0, max: 255No
metric_weights_k4Integermin: 0, max: 255No
metric_weights_k5Integermin: 0, max: 255No
metric_weights_k6Integermin: 0, max: 255No
log_adjacency_changesBooleantrue, falseNo
log_neighbor_warningsBooleantrue, falseNo
log_neighbor_warnings_intervalIntegermin: 1, max: 65535No
passive_interface_defaultBooleantrue, falseNo
suppress_fib_pendingBooleantrue, falseNo
bfdBooleantrue, falseNo
authentication_modeChoicemd5No
authentication_key_chainStringNo
default_metric_bandwidthIntegermin: 1, max: 16777215No
default_metric_delayIntegermin: 0, max: 16777215No
default_metric_reliabilityIntegermin: 0, max: 255No
default_metric_loadingIntegermin: 1, max: 255No
default_metric_mtuIntegermin: 128, max: 9216No
graceful_restartBooleantrue, falseNo
timers_nsf_route_holdIntegermin: 20, max: 300No
timers_nsf_convergeIntegermin: 60, max: 180No
timers_nsf_signalIntegermin: 10, max: 360No
nsf_await_redist_proto_convergenceBooleantrue, falseNo
default_information_originateBooleantrue, falseNo
default_information_originate_alwaysBooleantrue, falseNo
default_information_originate_route_mapStringNo
redistribute_maximum_prefixIntegermin: 1, max: 65535No
redistribute_maximum_prefix_thresholdIntegermin: 1, max: 100No
redistribute_maximum_prefix_warning_onlyBooleantrue, falseNo
redistribute_maximum_prefix_withdrawBooleantrue, falseNo
redistribute_maximum_prefix_retriesIntegermin: 1, max: 12No
redistribute_maximum_prefix_timeoutIntegermin: 60, max: 600No
table_mapStringNo
table_map_filterBooleantrue, falseNo
stubBooleantrue, falseNo
stub_directBooleantrue, falseNo
stub_staticBooleantrue, falseNo
stub_summaryBooleantrue, falseNo
stub_redistributedBooleantrue, falseNo
stub_receive_onlyBooleantrue, falseNo
stub_leak_mapStringNo
redistributionsListredistributionsNo

vrfs (nxos.devices.configuration.routing.eigrp_processes)

Section titled “vrfs (nxos.devices.configuration.routing.eigrp_processes)”
NameTypeConstraintMandatoryDefault Value
vrfStringYes
address_familiesListaddress_familiesNo

address_families (nxos.devices.configuration.interfaces.loopbacks.eigrp)

Section titled “address_families (nxos.devices.configuration.interfaces.loopbacks.eigrp)”
NameTypeConstraintMandatoryDefault Value
address_familyChoiceipv4-unicast, ipv6-unicastYes
shutdownBooleantrue, falseNo
hello_intervalIntegermin: 1, max: 65535No
hold_timeIntegermin: 1, max: 65535No
bandwidthIntegermin: 0, max: 2560000000No
bandwidth_percentIntegermin: 1, max: 100No
delayIntegermin: 0, max: 16777215No
delay_picosecondsBooleantrue, falseNo
mtuIntegermin: 209, max: 16384No
bfdBooleantrue, falseNo
next_hop_selfBooleantrue, falseNo
split_horizonBooleantrue, falseNo
passive_interfaceBooleantrue, falseNo
authentication_modeChoicemd5No
authentication_key_chainStringNo
distribute_listsListdistribute_listsNo
offset_listsListoffset_listsNo
summary_addressesListsummary_addressesNo

redistributions (nxos.devices.configuration.routing.eigrp_processes.address_families)

Section titled “redistributions (nxos.devices.configuration.routing.eigrp_processes.address_families)”
NameTypeConstraintMandatoryDefault Value
protocolChoicestatic, direct, bgp, isis, ospf, ospfv3, eigrp, rip, amt, lispYes
protocol_instanceStringNo
asnAnyString or Integer[min: 0, max: 4294967295]No
route_mapStringNo

distribute_lists (nxos.devices.configuration.interfaces.loopbacks.eigrp.address_families)

Section titled “distribute_lists (nxos.devices.configuration.interfaces.loopbacks.eigrp.address_families)”
NameTypeConstraintMandatoryDefault Value
directionChoicein, outYes
route_mapStringNo
prefix_listStringNo

offset_lists (nxos.devices.configuration.interfaces.loopbacks.eigrp.address_families)

Section titled “offset_lists (nxos.devices.configuration.interfaces.loopbacks.eigrp.address_families)”
NameTypeConstraintMandatoryDefault Value
directionChoicein, outYes
route_mapStringNo
prefix_listStringNo
offsetIntegermin: 0, max: 2147483647No

summary_addresses (nxos.devices.configuration.interfaces.loopbacks.eigrp.address_families)

Section titled “summary_addresses (nxos.devices.configuration.interfaces.loopbacks.eigrp.address_families)”
NameTypeConstraintMandatoryDefault Value
prefixIPYes
distanceIntegermin: 1, max: 255No
leak_mapStringNo

Example 1: Basic EIGRP IPv4 routing in the default VRF

nxos:
devices:
- name: LEAF1
configuration:
feature:
eigrp: true
routing:
eigrp_processes:
- name: CORE
address_families:
- address_family: ipv4-unicast
autonomous_system: 100
router_id: 10.0.0.1
maximum_paths: 4
log_adjacency_changes: true
interfaces:
loopbacks:
- id: 0
eigrp:
instance_name: CORE
address_families:
- address_family: ipv4-unicast
passive_interface: true
ethernets:
- id: 1/1
eigrp:
instance_name: CORE
address_families:
- address_family: ipv4-unicast
hello_interval: 2
hold_time: 6
- id: 1/2
eigrp:
instance_name: CORE
address_families:
- address_family: ipv4-unicast
hello_interval: 2
hold_time: 6

Example 2: EIGRP with wide metrics, BFD, authentication, stub and graceful restart

nxos:
devices:
- name: BORDER1
configuration:
feature:
eigrp: true
bfd: true
key_chains:
- name: EIGRP-KEYS
keys:
- id: 1
key_string: Cisco123
routing:
eigrp_processes:
- name: CORE
address_families:
- address_family: ipv4-unicast
autonomous_system: 100
router_id: 10.0.0.11
distance_internal: 90
distance_external: 170
metric_version_64bit: true
metric_rib_scale: 128
bfd: true
authentication_mode: md5
authentication_key_chain: EIGRP-KEYS
graceful_restart: true
timers_nsf_route_hold: 240
timers_nsf_converge: 120
timers_nsf_signal: 20
timers_active_time: 3
stub: true
stub_direct: true
stub_summary: true
interfaces:
ethernets:
- id: 1/49
eigrp:
instance_name: CORE
address_families:
- address_family: ipv4-unicast
bfd: true
authentication_mode: md5
authentication_key_chain: EIGRP-KEYS
bandwidth: 100000000
delay: 10

Example 3: EIGRP in a VRF with redistribution, default route and summary address

nxos:
devices:
- name: BORDER1
configuration:
feature:
eigrp: true
bgp: true
interface_vlan: true
vrfs:
- name: PROD
vlan:
vlans:
- id: 100
route_maps:
- name: RM-BGP-TO-EIGRP
entries:
- order: 10
action: permit
- name: RM-DEFAULT
entries:
- order: 10
action: permit
routing:
eigrp_processes:
- name: CORE
vrfs:
- vrf: PROD
address_families:
- address_family: ipv4-unicast
autonomous_system: 200
default_metric_bandwidth: 100000
default_metric_delay: 100
default_metric_reliability: 255
default_metric_loading: 1
default_metric_mtu: 1500
default_information_originate: true
default_information_originate_route_map: RM-DEFAULT
redistribute_maximum_prefix: 1000
redistribute_maximum_prefix_threshold: 80
redistribute_maximum_prefix_warning_only: true
redistributions:
- protocol: bgp
asn: 65001
route_map: RM-BGP-TO-EIGRP
interfaces:
vlans:
- id: 100
vrf: PROD
eigrp:
instance_name: CORE
address_families:
- address_family: ipv4-unicast
summary_addresses:
- prefix: 172.16.0.0/16
distance: 5

Example 4: Dual-stack EIGRP with IPv6 address family and offset-list

nxos:
devices:
- name: LEAF2
configuration:
feature:
eigrp: true
route_maps:
- name: RM-OFFSET
entries:
- order: 10
action: permit
routing:
eigrp_processes:
- name: CORE
address_families:
- address_family: ipv4-unicast
autonomous_system: 100
router_id: 10.0.0.2
- address_family: ipv6-unicast
autonomous_system: 100
router_id: 10.0.0.2
interfaces:
ethernets:
- id: 1/1
eigrp:
instance_name: CORE
address_families:
- address_family: ipv4-unicast
offset_lists:
- direction: in
route_map: RM-OFFSET
offset: 100
- address_family: ipv6-unicast
split_horizon: false