From b478b4483277cc24cff234d8e35a8f45c26d002c Mon Sep 17 00:00:00 2001 From: GutturalOnion Date: Thu, 28 Aug 2025 13:56:43 -0500 Subject: [PATCH 1/8] Create cisco_xr_show_eigrp_neighbors.textfsm TextFSM template for the IOS-XR command "show eigrp neighbors". --- .../cisco_xr_show_eigrp_neighbors.textfsm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm diff --git a/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm b/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm new file mode 100644 index 0000000000..c953a4941b --- /dev/null +++ b/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm @@ -0,0 +1,15 @@ +Value H (\d+) +Value Address (\S+) +Value Interface (\S+) +Value Hold (\d+) +Value Uptime (\S+) +Value SRTT (\d+) +Value RTO (\d+) +Value Q_Cnt (\d+) +Value Seq_Num (\d+) + +Start + ^\s*H\s+Address\s+Interface\s+Hold\s+Uptime\s+SRTT\s+RTO\s+Q\s+Seq -> Neighbors + +Neighbors + ^\s*${H}\s+${Address}\s+${Interface}\s+${Hold}\s+${Uptime}\s+${SRTT}\s+${RTO}\s+${Q_Cnt}\s+${Seq_Num} -> Record From 5e7e3df19b91f37a2e49b39a4b9d50d28ef0179e Mon Sep 17 00:00:00 2001 From: GutturalOnion Date: Fri, 30 Jan 2026 12:24:29 -0600 Subject: [PATCH 2/8] Add template for EIGRP neighbors command Update the index file to match the CLI input for the Cisco IOS XR command "show eigrp neighbors" --- ntc_templates/templates/index | 1 + 1 file changed, 1 insertion(+) diff --git a/ntc_templates/templates/index b/ntc_templates/templates/index index 528ae4093d..f4942756bc 100644 --- a/ntc_templates/templates/index +++ b/ntc_templates/templates/index @@ -566,6 +566,7 @@ cisco_xr_show_pim_ipv4_interface.textfsm, .*, cisco_xr, sh[[ow]] pim ipv4 int[[e cisco_xr_show_redundancy_summary.textfsm, .*, cisco_xr, sh[[ow]] redun[[dancy]] summ[[ary]] cisco_xr_show_pim_ipv4_neighbor.textfsm, .*, cisco_xr, sh[[ow]] pim ipv4 nei[[ghbor]] cisco_xr_admin_show_inventory.textfsm, .*, cisco_xr, (adm[[in]] )?sh[[ow]] inven[[tory]] +cisco_xr_show_eigrp_neighbors.textfsm, .*, cisco_xr, sh[[ow]] eig[[rp]] n[[eighbors]] cisco_xr_show_interface_brief.textfsm, .*, cisco_xr, sh[[ow]] int[[erface]] br[[ief]] cisco_xr_admin_show_platform.textfsm, .*, cisco_xr, (adm[[in]] )?sh[[ow]] pla[[tform]] cisco_xr_show_install_active.textfsm, .*, cisco_xr, sh[[ow]] install active From e284a25dc8ca3208ffb201b723d1d101e7d37ce9 Mon Sep 17 00:00:00 2001 From: GutturalOnion Date: Fri, 30 Jan 2026 14:47:54 -0600 Subject: [PATCH 3/8] Refactor EIGRP neighbors template for consistency --- .../cisco_xr_show_eigrp_neighbors.textfsm | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm b/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm index c953a4941b..3a0c178f6d 100644 --- a/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm +++ b/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm @@ -1,15 +1,22 @@ -Value H (\d+) -Value Address (\S+) -Value Interface (\S+) -Value Hold (\d+) -Value Uptime (\S+) +Value Filldown AS (\d+) +Value Required IP_ADDRESS ([0-9A-Fa-f:\.]+) +Value INTERFACE (\S+) +Value HOLD (\d+) +Value UPTIME (\S+) Value SRTT (\d+) Value RTO (\d+) -Value Q_Cnt (\d+) -Value Seq_Num (\d+) +Value Q_CNT (\d+) +Value SEQ_NUM (\d+) Start - ^\s*H\s+Address\s+Interface\s+Hold\s+Uptime\s+SRTT\s+RTO\s+Q\s+Seq -> Neighbors + ^\s*(IPv[46]-|)EIGRP(-IPv[46](:\(\d+\))?|)(?:\sVR)?\(\S+\)\s+[Nn]eighbors\s+for\s+(process\s+|AS\()${AS}(\)|)\s+VRF default\s*$$ + ^\s*(IPv[46]-|)EIGRP(-IPv[46](:\(\d+\))?|)(?:\sVR)?\(\S+\)\s+[Nn]eighbors\s+for\s+AS\(${AS}\)\s+VRF default\s*$$ + ^.*\s+${IP_ADDRESS}\s+${INTERFACE}\s+${HOLD}\s+${UPTIME}\s+${SRTT}\s+${RTO}\s+${Q_CNT}\s+${SEQ_NUM}\s*$$ -> Record + ^\s*$$ + ^\s*H\s+Address\s+Interface\s+Hold\s+Uptime\s+SRTT\s+RTO\s+Q\s+Seq\s*$$ + ^\s+\(sec\)\s+\(ms\)\s+Cnt\s+Num\s*$$ + # Capture time-stamp if vty line has command time-stamping turned on + ^\S+\s\S+\s\d+\s\d+:\d+:\d+\.\d+\s\S+ + ^. -> Error -Neighbors - ^\s*${H}\s+${Address}\s+${Interface}\s+${Hold}\s+${Uptime}\s+${SRTT}\s+${RTO}\s+${Q_Cnt}\s+${Seq_Num} -> Record +EOF From 53efdc56cb6f482ff87bd7d140149eb786131b3d Mon Sep 17 00:00:00 2001 From: GutturalOnion Date: Fri, 30 Jan 2026 14:56:57 -0600 Subject: [PATCH 4/8] Create .gitkeep --- tests/cisco_xr/show_eigrp_neighbors/.gitkeep | 1 + 1 file changed, 1 insertion(+) create mode 100644 tests/cisco_xr/show_eigrp_neighbors/.gitkeep diff --git a/tests/cisco_xr/show_eigrp_neighbors/.gitkeep b/tests/cisco_xr/show_eigrp_neighbors/.gitkeep new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/tests/cisco_xr/show_eigrp_neighbors/.gitkeep @@ -0,0 +1 @@ + From 552dd7665bd4308b8b12a9ac04812afbb1d8ee2e Mon Sep 17 00:00:00 2001 From: GutturalOnion Date: Fri, 30 Jan 2026 14:58:43 -0600 Subject: [PATCH 5/8] Add files via upload Test files for the IOS XR command "show eigrp neighbors" --- .../cisco_xr_show_eigrp_neighbors.raw | 19 +++ .../cisco_xr_show_eigrp_neighbors.yml | 110 ++++++++++++++++++ 2 files changed, 129 insertions(+) create mode 100644 tests/cisco_xr/show_eigrp_neighbors/cisco_xr_show_eigrp_neighbors.raw create mode 100644 tests/cisco_xr/show_eigrp_neighbors/cisco_xr_show_eigrp_neighbors.yml diff --git a/tests/cisco_xr/show_eigrp_neighbors/cisco_xr_show_eigrp_neighbors.raw b/tests/cisco_xr/show_eigrp_neighbors/cisco_xr_show_eigrp_neighbors.raw new file mode 100644 index 0000000000..1916654dcf --- /dev/null +++ b/tests/cisco_xr/show_eigrp_neighbors/cisco_xr_show_eigrp_neighbors.raw @@ -0,0 +1,19 @@ +Fri Jan 30 12:21:50.237 CST + +IPv4-EIGRP VR(EIGRP_1) Neighbors for AS(1) VRF default + +H Address Interface Hold Uptime SRTT RTO Q Seq + (sec) (ms) Cnt Num +7 10.224.17.185 Te0/0/0/0 14 2w0d 1 200 0 1726 +6 10.224.17.191 Te0/0/0/1 11 2w0d 1 200 0 1894 +11 10.16.28.3 Fo0/0/1/0 13 7w6d 1 200 0 5276 +10 10.224.17.93 BV600 12 10w5d 1 200 0 54242 +9 10.224.17.89 BV600 152 10w5d 1 200 0 2451 +8 10.224.17.67 BV700 11 10w5d 2 200 0 54244 +5 10.224.16.241 Gi0/0/0/0 14 10w5d 6 200 0 4545276 +4 10.224.16.16 BE10 14 10w5d 1 200 0 17874171 +3 10.224.17.37 BE2 14 10w5d 1 200 0 178099 +2 10.224.16.1 BE1.1000 7 10w5d 1 200 0 54245 +1 10.224.17.39 BE4 14 10w5d 1 200 0 145002 +0 10.224.16.247 Te0/0/0/2.4000 12 10w5d 5 200 0 3283787 + diff --git a/tests/cisco_xr/show_eigrp_neighbors/cisco_xr_show_eigrp_neighbors.yml b/tests/cisco_xr/show_eigrp_neighbors/cisco_xr_show_eigrp_neighbors.yml new file mode 100644 index 0000000000..5c2a7ff10c --- /dev/null +++ b/tests/cisco_xr/show_eigrp_neighbors/cisco_xr_show_eigrp_neighbors.yml @@ -0,0 +1,110 @@ +--- +parsed_sample: + - as: "1" + hold: "14" + interface: "Te0/0/0/0" + ip_address: "10.224.17.185" + q_cnt: "0" + rto: "200" + seq_num: "1726" + srtt: "1" + uptime: "2w0d" + - as: "1" + hold: "11" + interface: "Te0/0/0/1" + ip_address: "10.224.17.191" + q_cnt: "0" + rto: "200" + seq_num: "1894" + srtt: "1" + uptime: "2w0d" + - as: "1" + hold: "13" + interface: "Fo0/0/1/0" + ip_address: "10.16.28.3" + q_cnt: "0" + rto: "200" + seq_num: "5276" + srtt: "1" + uptime: "7w6d" + - as: "1" + hold: "12" + interface: "BV600" + ip_address: "10.224.17.93" + q_cnt: "0" + rto: "200" + seq_num: "54242" + srtt: "1" + uptime: "10w5d" + - as: "1" + hold: "152" + interface: "BV600" + ip_address: "10.224.17.89" + q_cnt: "0" + rto: "200" + seq_num: "2451" + srtt: "1" + uptime: "10w5d" + - as: "1" + hold: "11" + interface: "BV700" + ip_address: "10.224.17.67" + q_cnt: "0" + rto: "200" + seq_num: "54244" + srtt: "2" + uptime: "10w5d" + - as: "1" + hold: "14" + interface: "Gi0/0/0/0" + ip_address: "10.224.16.241" + q_cnt: "0" + rto: "200" + seq_num: "4545276" + srtt: "6" + uptime: "10w5d" + - as: "1" + hold: "14" + interface: "BE10" + ip_address: "10.224.16.16" + q_cnt: "0" + rto: "200" + seq_num: "17874171" + srtt: "1" + uptime: "10w5d" + - as: "1" + hold: "14" + interface: "BE2" + ip_address: "10.224.17.37" + q_cnt: "0" + rto: "200" + seq_num: "178099" + srtt: "1" + uptime: "10w5d" + - as: "1" + hold: "7" + interface: "BE1.1000" + ip_address: "10.224.16.1" + q_cnt: "0" + rto: "200" + seq_num: "54245" + srtt: "1" + uptime: "10w5d" + - as: "1" + hold: "14" + interface: "BE4" + ip_address: "10.224.17.39" + q_cnt: "0" + rto: "200" + seq_num: "145002" + srtt: "1" + uptime: "10w5d" + - as: "1" + hold: "12" + interface: "Te0/0/0/2.4000" + ip_address: "10.224.16.247" + q_cnt: "0" + rto: "200" + seq_num: "3283787" + srtt: "5" + uptime: "10w5d" From 84c352c3e26975dba121866063be08feb0717bd2 Mon Sep 17 00:00:00 2001 From: Michael Bear <38406045+mjbear@users.noreply.github.com> Date: Sat, 31 Jan 2026 16:00:07 -0500 Subject: [PATCH 6/8] Delete tests/cisco_xr/show_eigrp_neighbors/.gitkeep Removing the .gitkeep file since there's test data in that directory now. --- tests/cisco_xr/show_eigrp_neighbors/.gitkeep | 1 - 1 file changed, 1 deletion(-) delete mode 100644 tests/cisco_xr/show_eigrp_neighbors/.gitkeep diff --git a/tests/cisco_xr/show_eigrp_neighbors/.gitkeep b/tests/cisco_xr/show_eigrp_neighbors/.gitkeep deleted file mode 100644 index 8b13789179..0000000000 --- a/tests/cisco_xr/show_eigrp_neighbors/.gitkeep +++ /dev/null @@ -1 +0,0 @@ - From 8a4fa74c456579f70eba5f0f1431fbc82448f969 Mon Sep 17 00:00:00 2001 From: Michael Bear <38406045+mjbear@users.noreply.github.com> Date: Sat, 31 Jan 2026 16:03:00 -0500 Subject: [PATCH 7/8] Update timestamp comment in template --- ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm b/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm index 3a0c178f6d..297aa78cbd 100644 --- a/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm +++ b/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm @@ -15,7 +15,7 @@ Start ^\s*$$ ^\s*H\s+Address\s+Interface\s+Hold\s+Uptime\s+SRTT\s+RTO\s+Q\s+Seq\s*$$ ^\s+\(sec\)\s+\(ms\)\s+Cnt\s+Num\s*$$ - # Capture time-stamp if vty line has command time-stamping turned on + # Match time-stamp if vty line has command time-stamping turned on ^\S+\s\S+\s\d+\s\d+:\d+:\d+\.\d+\s\S+ ^. -> Error From 78cc107db38f47acfe5f3db753f71dfeb6d11179 Mon Sep 17 00:00:00 2001 From: GutturalOnion Date: Tue, 3 Feb 2026 19:11:37 -0600 Subject: [PATCH 8/8] Update regex for time-stamp in EIGRP neighbors template Updated regex pattern for time-stamp matching in EIGRP neighbors template. --- ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm b/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm index 297aa78cbd..9fd2efa8ca 100644 --- a/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm +++ b/ntc_templates/templates/cisco_xr_show_eigrp_neighbors.textfsm @@ -16,7 +16,7 @@ Start ^\s*H\s+Address\s+Interface\s+Hold\s+Uptime\s+SRTT\s+RTO\s+Q\s+Seq\s*$$ ^\s+\(sec\)\s+\(ms\)\s+Cnt\s+Num\s*$$ # Match time-stamp if vty line has command time-stamping turned on - ^\S+\s\S+\s\d+\s\d+:\d+:\d+\.\d+\s\S+ + ^\S+\s+\S+\s\d+\s\d+:\d+:\d+\.\d+\s\S+ ^. -> Error EOF