Welcome, Guest. Please login or register.

Author Topic: 4912 CDP neighors and discovery error in 1.0.8  (Read 1503 times)

ruehlb

  • Newbie
  • *
  • Posts: 14
    • View Profile
4912 CDP neighors and discovery error in 1.0.8
« on: June 04, 2013, 02:52:28 PM »
We have two legacy Cisco 4912 switches (yes, I know they should be gone by now but....) , one running  6.4 and the other running 6.4a. When a discovery happens on a switch where the 4912 is the neighbor, everything is fine on the 6.4a switch but the 6.4 switch spits out and error and the discovery is killed. Here is the error that I am getting during the discover on a neighbor of the 4912:

DisProtocol  ------------------------------------------------------------------
SNMP:Connect <sw IP> <snmp comm string> v2 Tout:25s MaxMS:4095
CDP :IF index 10604 delivering 0mW
CDP :IF index 10101 delivering 0mW
Undefined subroutine &snmp::Prt called at ./inc/libsnmp.pm line 1774.

If I turn CDP off on the ports for the switches connecting to the 4912, the discovery works fine but this limits the discovery process. Manually doing a CDP, I don't see an obvious difference between the two switches that would cause an error to happen.

Both of these switches work fine in 1.0.7 but when I built my dev box for 1.0.8 I can't complete a discovery if this switch is detected. I can't upgrade the code because they are no longer supported by Cisco. I am hoping that there is a minor tweak that can be made to allow the discovery to complete.

rickli

  • Administrator
  • Hero Member
  • *****
  • Posts: 2607
    • View Profile
    • NeDi
Re: 4912 CDP neighors and discovery error in 1.0.8
« Reply #1 on: June 04, 2013, 05:31:41 PM »
You actually found a bug :)

That line should read:
                     &misc::Prt("DIPR:Name mapped to $neb{$i}{$n}{'na'}\n");


And it only matters, if you map the neighbor name. Just wondering, does the name not come out correctly otherwise?
Please consider Other-Invoices on your NeDi installation for an annual contribution, tx!
-Remo

ruehlb

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: 4912 CDP neighors and discovery error in 1.0.8
« Reply #2 on: June 04, 2013, 07:43:26 PM »
Awsome! I changed the line in ./inc/libsnmp.pm and the discovery worked!

The CDP display for a 4912 is backwards of the other neighbours. It is displayed as SerialNumber(SwitchName) vs. SwitchName(SerialNumber) however it is displayed the same as the other 4912. I even changed them temperately to similar names with the same character count and it still failed.

Thanks for the fix.

rickli

  • Administrator
  • Hero Member
  • *****
  • Posts: 2607
    • View Profile
    • NeDi
Re: 4912 CDP neighors and discovery error in 1.0.8
« Reply #3 on: June 05, 2013, 12:15:36 AM »
That's why I asked. I thought that's reversed automatically, but I might have broken it with Nexus support. Check line 1664 for that:

               if($lneb{"1.3.6.1.4.1.9.9.23.1.2.1.1.8.$k[14].$k[15]"} =~ /^WS-C/){

The CDP type of the 4912 should contain WS-C, though...
Please consider Other-Invoices on your NeDi installation for an annual contribution, tx!
-Remo