<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[The string "[0]" instead of interface name in FDB for non-vlan1 ports]]></title><description><![CDATA[<p dir="auto">Hello.</p>
<p dir="auto">I have just started setting up NetXMS, and I'm very impressed with the software.<br />
I have been looking for monitoring software that's not "Nagios style" text configs and subprocess-plugins-for everything since quite a while.</p>
<p dir="auto">However, I just can't find a way to solve this issue myself - hope you can help me.</p>
<p dir="auto"><strong>NetXMS:</strong><br />
Version: 2.0.4<br />
Platform: Windows, 64-bit<br />
Database: PostgreSQL</p>
<p dir="auto"><strong>Network:</strong><br />
All Cisco Catalyst.<br />
Access switches are a mix of 3560G (IOS 12.x) and 2960X (IOS 15.x).<br />
Core switches handling site's internal routing are 3750G (also IOS 12.x).<br />
Everything is detected as CATALYST-GENERIC driver by NetXMS.</p>
<p dir="auto"><strong>Problem:</strong><br />
Switchports that are in access mode in vlan 1, and ports that are in trunk mode and include vlan 1 in trunk vlans list are identified properly.<br />
However, ports that do not include vlan 1 are shown as interface name "[ 0 ]" in the "Topology -&gt; Switch forwarding database (MAC address table)" screen.</p>
<p dir="auto">Because of that, the "Find MAC address" function falls back to showing "indirectly connected on &lt;router trunk port&gt;", for example.</p>
<p dir="auto">I have verified with Wireshark that NetXMS is using the Cisco "community@123" vlan-indexing syntax.<br />
However maybe that's part of issue - names for interfaces are retrieved for base "community" only, and it's somehow not matched to same interface index numbers in the @vlan data?</p>
<p dir="auto">I have attached CSV dumps from the FDB screens for one of the switches - same behavior on all of them.<br />
I'll be happy to attach a sanitized snmpwalk if you'll tell me what subtree you need.</p>
<p dir="auto"><strong>switch13-infoFDB.csv</strong>: "Tools-&gt;Info-&gt;Switch forwarding database (FDB)"<br />
* port 49 and 50 (SFP+ uplink trunks, including vlan 1)<br />
* port 456 (PortGroup1 trunk, including vlan1)<br />
* port 4 (access port in vlan1)<br />
* no rows for other access ports</p>
<p dir="auto"><strong>switch13-topologyFDB.csv</strong>: "Topology-&gt; Switch forwarding database (MAC address table)"<br />
* huge number of results for ports Gi1/0/49-50 (SFP+ uplink trunks, including vlan1)<br />
* multiple results for port Po1 (PortGroup1 trunk, including vlan1)<br />
* single result for port Gi1/0/4 (access port in vlan1)<br />
* Many entries for devices connected to other access ports, showing "[ 0 ]" instead of the expected "Gi1/0/xxx".</p>
<p dir="auto">Thank you very much!</p>
<hr />
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003076-switch13-infoFDB.csv">switch13-infoFDB.csv</a></p>
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003077-switch13-topologyFDB.csv">switch13-topologyFDB.csv</a></p>
]]></description><link>https://forum.netxms.org/topic/4589/the-string-0-instead-of-interface-name-in-fdb-for-non-vlan1-ports</link><generator>RSS for Node</generator><lastBuildDate>Fri, 13 Nov 2026 08:48:48 GMT</lastBuildDate><atom:link href="https://forum.netxms.org/topic/4589.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 12 Jul 2016 11:07:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to The string "[0]" instead of interface name in FDB for non-vlan1 ports on Tue, 25 Oct 2016 06:34:33 GMT]]></title><description><![CDATA[<p dir="auto">The patch is working fine. Thanks.</p>
]]></description><link>https://forum.netxms.org/post/21256</link><guid isPermaLink="true">https://forum.netxms.org/post/21256</guid><dc:creator><![CDATA[wonderboy]]></dc:creator><pubDate>Tue, 25 Oct 2016 06:34:33 GMT</pubDate></item><item><title><![CDATA[Reply to The string "[0]" instead of interface name in FDB for non-vlan1 ports on Mon, 24 Oct 2016 16:44:40 GMT]]></title><description><![CDATA[<p dir="auto">Hi,</p>
<p dir="auto">most likely you're right. If you can rebuild server from source, please try attached patch.</p>
<p dir="auto">Best regards,<br />
Victor</p>
<hr />
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003310-cisco-fdb.patch">cisco-fdb.patch</a></p>
]]></description><link>https://forum.netxms.org/post/21253</link><guid isPermaLink="true">https://forum.netxms.org/post/21253</guid><dc:creator><![CDATA[victor]]></dc:creator><pubDate>Mon, 24 Oct 2016 16:44:40 GMT</pubDate></item><item><title><![CDATA[Reply to The string "[0]" instead of interface name in FDB for non-vlan1 ports on Mon, 24 Oct 2016 10:08:14 GMT]]></title><description><![CDATA[<p dir="auto">I maybe wrong, but here is my thoughts about this.<br />
ifIndex is 0 'cause ifIndexFromPort function return 0.<br />
Take a look at <strong>fdb.cpp</strong>:</p>
<pre><code>void ForwardingDatabase::addEntry(FDB_ENTRY *entry)
{
	// Check for duplicate
	for(int i = 0; i &lt; m_fdbSize; i++)
		if (!memcmp(m_fdb[i].macAddr, entry-&gt;macAddr, MAC_ADDR_LENGTH))
		{
			memcpy(&amp;m_fdb[i], entry, sizeof(FDB_ENTRY));
			m_fdb[i].ifIndex = ifIndexFromPort(entry-&gt;port);                        &lt;--- here
			return;
		}

	if (m_fdbSize == m_fdbAllocated)
	{
		m_fdbAllocated += 32;
		m_fdb = (FDB_ENTRY *)realloc(m_fdb, sizeof(FDB_ENTRY) * m_fdbAllocated);
	}
	memcpy(&amp;m_fdb[m_fdbSize], entry, sizeof(FDB_ENTRY));
	m_fdb[m_fdbSize].ifIndex = ifIndexFromPort(entry-&gt;port);                             &lt;--- and here
	m_fdbSize++;
}
</code></pre>
<pre><code>UINT32 ForwardingDatabase::ifIndexFromPort(UINT32 port)
{
	for(int i = 0; i &lt; m_pmSize; i++)
		if (m_portMap[i].port == port)                   &lt;---so it seems like portMap structure does not contain required port, why?
			return m_portMap[i].ifIndex;
	return 0;
}
</code></pre>
<p dir="auto">portMap structure populated by "addPortMapping" function which is called from Dot1dPortTableHandler callback, and which is called from</p>
<pre><code>ForwardingDatabase *GetSwitchForwardingDatabase(Node *node)
{
	if (!node-&gt;isBridge())
		return NULL;

	ForwardingDatabase *fdb = new ForwardingDatabase(node-&gt;getId());
	node-&gt;callSnmpEnumerate(_T(".1.3.6.1.2.1.17.1.4.1.2"), Dot1dPortTableHandler, fdb);              &lt;---- here
	node-&gt;callSnmpEnumerate(_T(".1.3.6.1.2.1.17.7.1.2.2.1.2"), Dot1qTpFdbHandler, fdb);
</code></pre>
<p dir="auto">But this snmpenumerate request must also be vlan-context-aware as with followed code with mac address table request.</p>
<p dir="auto">Here is a sample snmpwalks to the cisco switch:<br />
admin@netxms:/home/admin# nxsnmpwalk -c community@10 172.x.x.x .1.3.6.1.2.1.17.1.4.1.2<br />
.1.3.6.1.2.1.17.1.4.1.2.7 [INTEGER]: 7<br />
.1.3.6.1.2.1.17.1.4.1.2.31 [INTEGER]: 31<br />
.1.3.6.1.2.1.17.1.4.1.2.47 [INTEGER]: 43<br />
.1.3.6.1.2.1.17.1.4.1.2.48 [INTEGER]: 44<br />
.1.3.6.1.2.1.17.1.4.1.2.65 [INTEGER]: 53<br />
admin@netxms:/home/admin# nxsnmpwalk -c community@11 172.x.x.x .1.3.6.1.2.1.17.1.4.1.2<br />
.1.3.6.1.2.1.17.1.4.1.2.65 [INTEGER]: 53</p>
]]></description><link>https://forum.netxms.org/post/21250</link><guid isPermaLink="true">https://forum.netxms.org/post/21250</guid><dc:creator><![CDATA[wonderboy]]></dc:creator><pubDate>Mon, 24 Oct 2016 10:08:14 GMT</pubDate></item><item><title><![CDATA[Reply to The string "[0]" instead of interface name in FDB for non-vlan1 ports on Sun, 23 Oct 2016 18:46:20 GMT]]></title><description><![CDATA[<p dir="auto">Tatjana,<br />
Will post here 'cause I have the same issue.<br />
I have a cisco switch 3550 (which is snmp-enabled) and sensor1 (disabled all polls except icmp) with mac 00:a2:19:60:00:00 that is connected to fa0/48 port (access port with vlan 10). FDB table for 3550 is showing me this:</p>
<pre><code>00:a2:19:60:00:00    48    [0]     10      sensor1     dynamic
</code></pre>
<p dir="auto">so FDB seems correct however I don't know what is 'interface' = 0 and in the interface tab of the object viewer netxms does not show any peer nodes, but it has to be <code>fa0/48    .....     sensor1    192.168.x.x    FDB</code>.</p>
<p dir="auto">I attached requested OIDs.</p>
<hr />
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003305-1.3.6.1.2.1.2.1.0.csv">.1.3.6.1.2.1.2.1.0.csv</a></p>
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003306-1.3.6.1.2.1.2.2.1.1.csv">.1.3.6.1.2.1.2.2.1.1.csv</a></p>
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003307-1.3.6.1.2.1.2.2.1.2.csv">.1.3.6.1.2.1.2.2.1.2.csv</a></p>
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003308-1.3.6.1.2.1.17.1.4.1.2.csv">.1.3.6.1.2.1.17.1.4.1.2.csv</a></p>
<p dir="auto"><a href="/assets/uploads/files/smf/0000000003309-1.3.6.1.2.1.31.1.1.1.1.csv">.1.3.6.1.2.1.31.1.1.1.1.csv</a></p>
]]></description><link>https://forum.netxms.org/post/21248</link><guid isPermaLink="true">https://forum.netxms.org/post/21248</guid><dc:creator><![CDATA[wonderboy]]></dc:creator><pubDate>Sun, 23 Oct 2016 18:46:20 GMT</pubDate></item><item><title><![CDATA[Reply to The string "[0]" instead of interface name in FDB for non-vlan1 ports on Thu, 01 Sep 2016 15:03:10 GMT]]></title><description><![CDATA[<p dir="auto">Hi.</p>
<p dir="auto">Can you please provide walks for this OIDs:<br />
.1.3.6.1.2.1.17.1.4.1.2<br />
.1.3.6.1.2.1.2.1.0<br />
.1.3.6.1.2.1.2.2.1.1<br />
.1.3.6.1.2.1.31.1.1.1.1<br />
.1.3.6.1.2.1.2.2.1.2</p>
<p dir="auto">Thank you.</p>
]]></description><link>https://forum.netxms.org/post/20854</link><guid isPermaLink="true">https://forum.netxms.org/post/20854</guid><dc:creator><![CDATA[zev]]></dc:creator><pubDate>Thu, 01 Sep 2016 15:03:10 GMT</pubDate></item></channel></rss>