<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body dir="auto">
<div>David,</div>
<div id="AppleMailSignature"><br>
</div>
<div id="AppleMailSignature">All you have to do is turn on IFindex persistence:</div>
<div id="AppleMailSignature"><br>
</div>
<div id="AppleMailSignature"><a href="https://www.cisco.com/c/en/us/td/docs/routers/crs/software/crs_r4-2/system_management/command/reference/b_sysman_cr42crs/b_sysman_cr42crs_chapter_01101.html#wp2192797756">https://www.cisco.com/c/en/us/td/docs/routers/crs/software/crs_r4-2/system_management/command/reference/b_sysman_cr42crs/b_sysman_cr42crs_chapter_01101.html#wp2192797756</a></div>
<div id="AppleMailSignature"><br>
</div>
<div id="AppleMailSignature">We do this on our XRs and it works perfectly. <br>
<br>
-mel via cell</div>
<div><br>
On Oct 13, 2018, at 9:20 AM, David Hubbard <<a href="mailto:dhubbard@dino.hostasaurus.com">dhubbard@dino.hostasaurus.com</a>> wrote:<br>
<br>
</div>
<blockquote type="cite">
<div><span>Cisco tries very hard to make such useless data occur in XR.  If you have a gigE SFP in an SFP+ port, a new ifindex will appear for the resulting GigabitEthernetX port, then it remains even if both the config and SFP have been removed.  Automated
 systems will keep querying it as if it were a downed port, but wait, reboot, and suddenly it vanishes.  I went back and forth with TAC for weeks explaining that SNMP interfaces should not disappear as a result of a reboot, I should either be able to remove
 it, or it's stuck there forever, but a reboot should not cause a change.  They didn't care; it is 'by design'.
</span><br>
<span></span><br>
<span>On 10/13/18, 8:47 AM, "NANOG on behalf of Mel Beckman" <<a href="mailto:nanog-bounces@nanog.org">nanog-bounces@nanog.org</a> on behalf of
<a href="mailto:mel@beckman.org">mel@beckman.org</a>> wrote:</span><br>
<span></span><br>
<span>   Saku,</span><br>
<span></span><br>
<span>   The issue isn't that ifindexes change during operation. That would truly make SNMP useless. The issue is that they change across reboots. That's where features such as Cisco's Interface Index Persistence helps out.
</span><br>
<span></span><br>
<span>   -mel via cell</span><br>
<span></span><br>
<blockquote type="cite"><span>On Oct 13, 2018, at 2:59 AM, Saku Ytti <<a href="mailto:saku@ytti.fi">saku@ytti.fi</a>> wrote:</span><br>
</blockquote>
<blockquote type="cite"><span></span><br>
</blockquote>
<blockquote type="cite">
<blockquote type="cite"><span>On Fri, 12 Oct 2018 at 21:40, Chris Adams <<a href="mailto:cma@cmadams.net">cma@cmadams.net</a>> wrote:</span><br>
</blockquote>
</blockquote>
<blockquote type="cite">
<blockquote type="cite"><span></span><br>
</blockquote>
</blockquote>
<blockquote type="cite">
<blockquote type="cite"><span>Is there any good excuse that SNMP client software can't handle a basic</span><br>
</blockquote>
</blockquote>
<blockquote type="cite">
<blockquote type="cite"><span>design of SNMP - indexed tables?  ifIndex is far from the only index in</span><br>
</blockquote>
</blockquote>
<blockquote type="cite">
<blockquote type="cite"><span>SNMP, and many of them still change today at various times.</span><br>
</blockquote>
</blockquote>
<blockquote type="cite">
<blockquote type="cite"><span></span><br>
</blockquote>
</blockquote>
<blockquote type="cite">
<blockquote type="cite"><span>It isn't that hard to fetch the indexed field in a bulk get, rewalking</span><br>
</blockquote>
</blockquote>
<blockquote type="cite">
<blockquote type="cite"><span>the table if you don't get what you expected.  Cricket did this in 1999.</span><br>
</blockquote>
</blockquote>
<blockquote type="cite"><span></span><br>
</blockquote>
<blockquote type="cite"><span>It's never going to be provably correct, depending on what stability means.</span><br>
</blockquote>
<blockquote type="cite"><span></span><br>
</blockquote>
<blockquote type="cite"><span>You fetch relation at t0, then at t1 you fetch data. Was the relation</span><br>
</blockquote>
<blockquote type="cite"><span>same at t0 and t1? You can gain some confidence by fetching relation</span><br>
</blockquote>
<blockquote type="cite"><span>again at t2 and disregard data if t0 != t2. But this becomes polling</span><br>
</blockquote>
<blockquote type="cite"><span>expensive quite fast, and still not provably correct. This may be</span><br>
</blockquote>
<blockquote type="cite"><span>nitpicking, but I've always felt uneasy about the lack of guarantee.</span><br>
</blockquote>
<blockquote type="cite"><span></span><br>
</blockquote>
<blockquote type="cite"><span>I wonder if those who have stable indeces, have them for all cases,</span><br>
</blockquote>
<blockquote type="cite"><span>all logical interfaces and virtual interfaces?</span><br>
</blockquote>
<blockquote type="cite"><span></span><br>
</blockquote>
<blockquote type="cite"><span>-- </span><br>
</blockquote>
<blockquote type="cite"><span>++ytti</span><br>
</blockquote>
<span></span><br>
<span></span><br>
</div>
</blockquote>
</body>
</html>