View Issue Details

IDProjectCategoryView StatusLast Update
374RackTablesSNMPpublic2012-01-01 02:28
Reporteruser177Assigned Toadoom42  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version0.18.4 
Target Version0.19.11Fixed in Version0.19.11 
Summary374: SNMP report for Fortinet Fortigate 310B Firewall
DescriptionSNMPv2-MIB::sysDescr.0 = STRING: Fortinet 310B
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.12356.101.1.3002
TagsNo tags attached.

Activities

2010-09-27 00:28

 

Fortinet.ifTable (12,564 bytes)
f0urtyfive

f0urtyfive

2010-09-27 00:53

reporter   ~0000136

Wow, thought I was the only one that had to deal with these things. Please try the attached patch.

2010-09-27 00:53

 

snmp-changes.diff (3,721 bytes)   
--- RackTables-0.18.4-orig/inc/snmp.php	2010-07-06 12:40:57.000000000 -0400
+++ rt-snmp/inc/snmp.php	2010-09-26 20:49:30.000000000 -0400
@@ -137,6 +137,24 @@
 	'try_next_proc' => FALSE,
 );
 
+$iftable_processors['catalyst-blade-any-100TX'] = array
+(
+        'pattern' => '@^FastEthernet([[:digit:]]+/)?([[:digit:]]+/)?([[:digit:]]+)$@',
+        'replacement' => 'fa\\1\\2\\3',
+        'dict_key' => 19,
+        'label' => '\\3X',
+        'try_next_proc' => FALSE,
+);
+
+$iftable_processors['catalyst-blade-any-1000T'] = array
+(
+        'pattern' => '@^GigabitEthernet([[:digit:]]+/)?([[:digit:]]+/)?([[:digit:]]+)$@',
+        'replacement' => 'gi\\1\\2\\3',
+        'dict_key' => 24,
+        'label' => '\\3X',
+        'try_next_proc' => FALSE,
+);
+
 $iftable_processors['catalyst-blade-13-to-16-1000SFP'] = array
 (
 	'pattern' => '@^GigabitEthernet([[:digit:]]+/)?(13|14|15|16)$@',
@@ -245,6 +263,24 @@
 	'try_next_proc' => TRUE,
 );
 
+$iftable_processors['procurve-49-to-50-1000T'] = array
+(
+        'pattern' => '@^(49|50)$@',
+        'replacement' => '\\1',
+        'dict_key' => '24',
+        'label' => '\\1',
+        'try_next_proc' => TRUE,
+);
+
+$iftable_processors['procurve-51-to-52-minigbic'] = array
+(
+        'pattern' => '@^(51|52)$@',
+        'replacement' => '\\1',
+        'dict_key' => '24',
+        'label' => '\\1',
+        'try_next_proc' => TRUE,
+);
+
 $iftable_processors['procurve-modular-100TX'] = array
 (
 	'pattern' => '@^([A-Z][[:digit:]]+)$@',
@@ -489,8 +525,38 @@
 	'try_next_proc' => FALSE,
 );
 
+$iftable_processors['brocade-chassis-any-1000T'] = array
+(
+        'pattern' => '@^GigabitEthernet([[:digit:]]+/)?([[:digit:]]+/)?([[:digit:]]+)$@',
+        'replacement' => 'gi\\1\\2\\3',
+        'dict_key' => 24,
+        'label' => '\\3',
+        'try_next_proc' => FALSE,
+);
+
+$iftable_processors['fortinet-chassis-any-100TX'] = array
+(
+	'pattern' => '@^port([[:digit:]]+)$@',
+        'replacement' => '\\1',
+        'dict_key' => 19,
+        'label' => '\\1',
+        'try_next_proc' => FALSE,
+);
+
 $known_switches = array // key is system OID w/o "enterprises" prefix
 (
+	'9.1.516' => array
+        (
+                'dict_key' => 178,
+                'text' => 'Stackable WS-C3750G-24PS-S: n24 RJ-45/10-100-1000TX',
+                'processors' => array ('catalyst-chassis-any-1000T', 'catalyst-blade-any-100TX', 'catalyst-blade-any-1000T', 'catalyst-blade-any-100TX'),
+        ),
+        '9.1.577' => array
+        (
+                'dict_key' => 281,
+                'text' => 'CISCO2821: 2x RJ-45/10-100-1000T',
+                'processors' => array ('catalyst-chassis-any-1000T'),
+        ),
 	'9.1.248' => array
 	(
 		'dict_key' => 393,
@@ -804,6 +870,32 @@
 			'summit-management'
 		),
 	),
+	'11.2.3.7.11.63' => array
+	(
+		'dict_key' => 868,
+		'text' => 'J9021A: 24 RJ-45/10-100-1000T(X)',
+		'processors' => array ('procurve-chassis-1000T'),
+	),
+
+	'11.2.3.7.11.79' => array
+	(
+		'dict_key' => 863,
+		'text' => 'J9089A: 48 RJ-45/10-100TX + 2 RJ-45/10-100-1000TX + 2 minigbic',
+		'processors' => array('procurve-51-to-52-minigbic', 'procurve-49-to-50-1000T', 'procurve-chassis-100TX'),
+	),
+	'1991.1.3.46.2.1.1.1' => array
+	(
+		'dict_key' => 1, //Need real key
+		'text' => 'FLS624/FLS648: 24/48 RJ-45/10-100-1000T(X) + uplink slot with 4 SFP+',
+		'processors' => array('brocade-chassis-any-1000T'),
+	),
+	'12356.101.1.3002 '=> array
+        (
+                'dict_key' => 1, //Need real key
+                'text' => 'FG310B: 10 RJ-45/10-100TX',
+                'processors' => array('fortinet-chassis-any-100TX'),
+        ),
+
 );
 
 function updateStickerForCell ($cell, $attr_id, $new_value)
snmp-changes.diff (3,721 bytes)   

user177

2010-09-27 00:59

  ~0000137

OK, I applied the patch - how do I test it? Doesn't the 310B need to be added to the list of devices as well?

user177

2010-09-27 01:08

  ~0000138

I specified the Fortinet was a router, and I get the SNMP Sync tag, but when I run the sync I get a "Fatal SNMP error" (the SNMP Sync has worked for a couple of Cisco switches).

I can't find any logs to check - do I need to turn on logging?
f0urtyfive

f0urtyfive

2010-09-27 01:09

reporter   ~0000139

Thats what I get for submitting a patch without actually testing it :/ give me a few.
f0urtyfive

f0urtyfive

2010-09-27 01:18

reporter   ~0000140

Hmm after reviewing it again everything looks fine... Does the host your testing again have a valid IP configured in the IPv4 tab (and NOT have an unresolvable FQDN set in the properties tab)?

user177

2010-09-27 08:20

  ~0000144

I had a valid IP on the FQDN tab; I had nothing set in the FQDN tab.

I've just tried with a FQDN, and now I get:

Unknown OID '12356.101.1.3002'
f0urtyfive

f0urtyfive

2010-09-27 13:26

reporter   ~0000146

Ah, I typo'd the OID in the patch with an extra space.

open inc/snmp.php and change
'12356.101.1.3002 '=> array
to
'12356.101.1.3002' => array

at line 892.

user177

2010-09-27 13:57

  ~0000147

OK, cool. That works, and all 10 interfaces are detected.

Small point - they are all 10/100/1000 interfaces.

Also, I have ports 1 & 2 combined as "LAN1", and ports 3 & 4 combined as "LAN2". The ip address is allocated to the combined interface rather than to the port.

I'll upload a full snmpwalk which shows what I mean.

2010-09-27 13:57

 

310B.full (77,415 bytes)
f0urtyfive

f0urtyfive

2010-09-27 13:59

reporter   ~0000148

Unfortunately racktables doesnt really provide any mechanism to show grouped ports.

user177

2010-09-27 14:05

  ~0000149

PS. any reason SNMP scan is not enabled for servers? Would be nice to be able to do an SNMP scan to pick up all the interfaces. Although it seems that an snmpwalk of ifTable does not identify any interface aliases, eg. eth0:1, etc.

user177

2010-09-27 14:06

  ~0000150

Hrm, regarding the ports, any idea how to represent that?

2010-09-27 18:11

 

snmp-fortinet-fg310b.patch (1,558 bytes)   
Index: inc/dictionary.php
===================================================================
--- inc/dictionary.php	(revision 3941)
+++ inc/dictionary.php	(working copy)
@@ -1442,6 +1442,7 @@
 	1362 => array ('chapter_id' => 12, 'dict_value' => '[[Brocade%GPASS%FCX 648 | http://www.brocade.com/sites/dotcom/products-solutions/products/ethernet-switches-routers/enterprise-mobility/product-details/fcx-series-data-center/index.page ]]'),
 	1363 => array ('chapter_id' => 14, 'dict_value' => 'IronWare 5'),
 	1364 => array ('chapter_id' => 14, 'dict_value' => 'IronWare 7'),
+	1365 => array ('chapter_id' => 17, 'dict_value' => 'Fortinet%GPASS%Fortigate 310B'),
 );
 
 ?>
Index: inc/snmp.php
===================================================================
--- inc/snmp.php	(revision 3941)
+++ inc/snmp.php	(working copy)
@@ -489,6 +489,15 @@
 	'try_next_proc' => FALSE,
 );
 
+$iftable_processors['fortinet-chassis-any-1000T'] = array
+(
+       'pattern' => '@^port([[:digit:]]+)$@',
+        'replacement' => '\\1',
+        'dict_key' => 24,
+        'label' => '\\1',
+        'try_next_proc' => FALSE,
+);
+
 $known_switches = array // key is system OID w/o "enterprises" prefix
 (
 	'9.1.248' => array
@@ -804,6 +813,13 @@
 			'summit-management'
 		),
 	),
+
+       '12356.101.1.3002'=> array
+        (
+                'dict_key' => 1365,
+                'text' => 'FG310B: 10 RJ-45/10-1000T',
+                'processors' => array('fortinet-chassis-any-1000T'),
+        ),
 );
 
 function updateStickerForCell ($cell, $attr_id, $new_value)
snmp-fortinet-fg310b.patch (1,558 bytes)   
f0urtyfive

f0urtyfive

2010-09-27 18:11

reporter   ~0000153

Updated patch; fixed typo, changed port to 1gb and added dictionary entry for fortigate.
adoom42

adoom42

2012-01-01 02:28

administrator   ~0000499

Added to 0.19.11. Thanks for the patch.

Issue History

Date Modified Username Field Change
2010-09-27 00:28 user177 New Issue
2010-09-27 00:28 user177 File Added: Fortinet.ifTable
2010-09-27 00:53 f0urtyfive Note Added: 0000136
2010-09-27 00:53 f0urtyfive File Added: snmp-changes.diff
2010-09-27 00:59 user177 Note Added: 0000137
2010-09-27 01:08 user177 Note Added: 0000138
2010-09-27 01:09 f0urtyfive Note Added: 0000139
2010-09-27 01:18 f0urtyfive Note Added: 0000140
2010-09-27 08:20 user177 Note Added: 0000144
2010-09-27 13:26 f0urtyfive Note Added: 0000146
2010-09-27 13:57 user177 Note Added: 0000147
2010-09-27 13:57 user177 File Added: 310B.full
2010-09-27 13:59 f0urtyfive Note Added: 0000148
2010-09-27 14:05 user177 Note Added: 0000149
2010-09-27 14:06 user177 Note Added: 0000150
2010-09-27 18:11 f0urtyfive File Added: snmp-fortinet-fg310b.patch
2010-09-27 18:11 f0urtyfive Note Added: 0000153
2012-01-01 02:28 adoom42 Note Added: 0000499
2012-01-01 02:28 adoom42 Assigned To => adoom42
2012-01-01 02:28 adoom42 Status new => closed
2012-01-01 02:28 adoom42 Resolution open => fixed
2012-01-01 02:28 adoom42 Fixed in Version => 0.19.11
2012-01-01 02:28 adoom42 Target Version => 0.19.11