telemetry-snmp 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/rspec.yml +44 -0
  3. data/.github/workflows/rubocop.yml +28 -0
  4. data/.github/workflows/sourcehawk-scan.yml +20 -0
  5. data/.gitignore +14 -0
  6. data/.rspec +4 -0
  7. data/.rubocop.yml +26 -0
  8. data/CHANGELOG.md +4 -0
  9. data/CODE_OF_CONDUCT.md +75 -0
  10. data/CONTRIBUTING.md +54 -0
  11. data/Gemfile +10 -0
  12. data/INDIVIDUAL_CONTRIBUTOR_LICENSE.md +30 -0
  13. data/LICENSE +201 -0
  14. data/NOTICE.txt +9 -0
  15. data/README.md +54 -0
  16. data/attribution.txt +1 -0
  17. data/config.ru +15 -0
  18. data/exe/snmp_collector +55 -0
  19. data/lib/telemetry/snmp.rb +23 -0
  20. data/lib/telemetry/snmp/api.rb +55 -0
  21. data/lib/telemetry/snmp/auth.rb +54 -0
  22. data/lib/telemetry/snmp/auth/defaults.rb +41 -0
  23. data/lib/telemetry/snmp/client.rb +104 -0
  24. data/lib/telemetry/snmp/controllers/device_creds.rb +105 -0
  25. data/lib/telemetry/snmp/controllers/devices.rb +94 -0
  26. data/lib/telemetry/snmp/controllers/oid_groups.rb +71 -0
  27. data/lib/telemetry/snmp/controllers/oids.rb +80 -0
  28. data/lib/telemetry/snmp/controllers/users.rb +81 -0
  29. data/lib/telemetry/snmp/controllers/walks.rb +89 -0
  30. data/lib/telemetry/snmp/data.rb +69 -0
  31. data/lib/telemetry/snmp/data/default_opts.rb +73 -0
  32. data/lib/telemetry/snmp/data/migrations/001_device_creds.rb +19 -0
  33. data/lib/telemetry/snmp/data/migrations/002_create_devices_table.rb +31 -0
  34. data/lib/telemetry/snmp/data/migrations/003_create_oids_tables.rb +16 -0
  35. data/lib/telemetry/snmp/data/migrations/004_create_oid_groups.rb +15 -0
  36. data/lib/telemetry/snmp/data/migrations/005_create_oids_oid_groups.rb +17 -0
  37. data/lib/telemetry/snmp/data/migrations/006_device_to_oid_group.rb +15 -0
  38. data/lib/telemetry/snmp/data/migrations/007_create_users.rb +20 -0
  39. data/lib/telemetry/snmp/data/migrations/008_create_walks_table.rb +14 -0
  40. data/lib/telemetry/snmp/data/migrations/009_create_tag_name_column.rb +7 -0
  41. data/lib/telemetry/snmp/data/migrations/010_create_user_audit_table.rb +18 -0
  42. data/lib/telemetry/snmp/data/models/device.rb +11 -0
  43. data/lib/telemetry/snmp/data/models/device_cred.rb +11 -0
  44. data/lib/telemetry/snmp/data/models/oid.rb +10 -0
  45. data/lib/telemetry/snmp/data/models/oid_group.rb +10 -0
  46. data/lib/telemetry/snmp/data/models/oid_oid_groups.rb +10 -0
  47. data/lib/telemetry/snmp/data/models/oid_walk.rb +10 -0
  48. data/lib/telemetry/snmp/data/models/user.rb +10 -0
  49. data/lib/telemetry/snmp/data/models/user_audit_log.rb +19 -0
  50. data/lib/telemetry/snmp/mibs/AGENTX-MIB.txt +527 -0
  51. data/lib/telemetry/snmp/mibs/AIRPORT-BASESTATION-3-MIB.txt +461 -0
  52. data/lib/telemetry/snmp/mibs/BRIDGE-MIB.txt +1472 -0
  53. data/lib/telemetry/snmp/mibs/DISMAN-EVENT-MIB.txt +1882 -0
  54. data/lib/telemetry/snmp/mibs/DISMAN-SCHEDULE-MIB.txt +699 -0
  55. data/lib/telemetry/snmp/mibs/DISMAN-SCRIPT-MIB.txt +1764 -0
  56. data/lib/telemetry/snmp/mibs/EtherLike-MIB.txt +1862 -0
  57. data/lib/telemetry/snmp/mibs/HCNUM-TC.txt +118 -0
  58. data/lib/telemetry/snmp/mibs/HOST-RESOURCES-MIB.txt +1540 -0
  59. data/lib/telemetry/snmp/mibs/HOST-RESOURCES-TYPES.txt +389 -0
  60. data/lib/telemetry/snmp/mibs/IANA-ADDRESS-FAMILY-NUMBERS-MIB.txt +123 -0
  61. data/lib/telemetry/snmp/mibs/IANA-LANGUAGE-MIB.txt +123 -0
  62. data/lib/telemetry/snmp/mibs/IANA-RTPROTO-MIB.txt +91 -0
  63. data/lib/telemetry/snmp/mibs/IANAifType-MIB.txt +619 -0
  64. data/lib/telemetry/snmp/mibs/IF-INVERTED-STACK-MIB.txt +149 -0
  65. data/lib/telemetry/snmp/mibs/IF-MIB.txt +1814 -0
  66. data/lib/telemetry/snmp/mibs/INET-ADDRESS-MIB.txt +402 -0
  67. data/lib/telemetry/snmp/mibs/IP-FORWARD-MIB.txt +1277 -0
  68. data/lib/telemetry/snmp/mibs/IP-MIB.txt +4993 -0
  69. data/lib/telemetry/snmp/mibs/IPV6-FLOW-LABEL-MIB.txt +58 -0
  70. data/lib/telemetry/snmp/mibs/IPV6-ICMP-MIB.txt +529 -0
  71. data/lib/telemetry/snmp/mibs/IPV6-MIB.txt +1443 -0
  72. data/lib/telemetry/snmp/mibs/IPV6-TC.txt +67 -0
  73. data/lib/telemetry/snmp/mibs/IPV6-TCP-MIB.txt +211 -0
  74. data/lib/telemetry/snmp/mibs/IPV6-UDP-MIB.txt +141 -0
  75. data/lib/telemetry/snmp/mibs/NET-SNMP-AGENT-MIB.txt +554 -0
  76. data/lib/telemetry/snmp/mibs/NET-SNMP-EXAMPLES-MIB.txt +285 -0
  77. data/lib/telemetry/snmp/mibs/NET-SNMP-EXTEND-MIB.txt +325 -0
  78. data/lib/telemetry/snmp/mibs/NET-SNMP-MIB.txt +67 -0
  79. data/lib/telemetry/snmp/mibs/NET-SNMP-PASS-MIB.txt +124 -0
  80. data/lib/telemetry/snmp/mibs/NET-SNMP-TC.txt +128 -0
  81. data/lib/telemetry/snmp/mibs/NET-SNMP-VACM-MIB.txt +154 -0
  82. data/lib/telemetry/snmp/mibs/NOTIFICATION-LOG-MIB.txt +753 -0
  83. data/lib/telemetry/snmp/mibs/PAN-COMMON-MIB.md5 +1 -0
  84. data/lib/telemetry/snmp/mibs/PAN-COMMON-MIB.my +2293 -0
  85. data/lib/telemetry/snmp/mibs/PAN-ENTITY-EXT-MIB.md5 +1 -0
  86. data/lib/telemetry/snmp/mibs/PAN-ENTITY-EXT-MIB.my +293 -0
  87. data/lib/telemetry/snmp/mibs/PAN-GLOBAL-REG-MIB.md5 +1 -0
  88. data/lib/telemetry/snmp/mibs/PAN-GLOBAL-REG-MIB.my +84 -0
  89. data/lib/telemetry/snmp/mibs/PAN-GLOBAL-TC-MIB.md5 +1 -0
  90. data/lib/telemetry/snmp/mibs/PAN-GLOBAL-TC-MIB.my +68 -0
  91. data/lib/telemetry/snmp/mibs/PAN-LC-MIB.md5 +1 -0
  92. data/lib/telemetry/snmp/mibs/PAN-LC-MIB.my +204 -0
  93. data/lib/telemetry/snmp/mibs/PAN-PRODUCT-MIB.md5 +1 -0
  94. data/lib/telemetry/snmp/mibs/PAN-PRODUCT-MIB.my +305 -0
  95. data/lib/telemetry/snmp/mibs/PAN-TRAPS.md5 +1 -0
  96. data/lib/telemetry/snmp/mibs/PAN-TRAPS.my +7809 -0
  97. data/lib/telemetry/snmp/mibs/RFC-1215.txt +38 -0
  98. data/lib/telemetry/snmp/mibs/RFC1155-SMI.txt +119 -0
  99. data/lib/telemetry/snmp/mibs/RFC1213-MIB.txt +2613 -0
  100. data/lib/telemetry/snmp/mibs/RMON-MIB.txt +3980 -0
  101. data/lib/telemetry/snmp/mibs/SCTP-MIB.txt +1342 -0
  102. data/lib/telemetry/snmp/mibs/SMUX-MIB.txt +160 -0
  103. data/lib/telemetry/snmp/mibs/SNMP-COMMUNITY-MIB.txt +429 -0
  104. data/lib/telemetry/snmp/mibs/SNMP-FRAMEWORK-MIB.txt +526 -0
  105. data/lib/telemetry/snmp/mibs/SNMP-MPD-MIB.txt +145 -0
  106. data/lib/telemetry/snmp/mibs/SNMP-NOTIFICATION-MIB.txt +589 -0
  107. data/lib/telemetry/snmp/mibs/SNMP-PROXY-MIB.txt +294 -0
  108. data/lib/telemetry/snmp/mibs/SNMP-TARGET-MIB.txt +660 -0
  109. data/lib/telemetry/snmp/mibs/SNMP-USER-BASED-SM-MIB.txt +912 -0
  110. data/lib/telemetry/snmp/mibs/SNMP-USM-AES-MIB.txt +62 -0
  111. data/lib/telemetry/snmp/mibs/SNMP-USM-DH-OBJECTS-MIB.txt +532 -0
  112. data/lib/telemetry/snmp/mibs/SNMP-VIEW-BASED-ACM-MIB.txt +830 -0
  113. data/lib/telemetry/snmp/mibs/SNMPv2-CONF.txt +322 -0
  114. data/lib/telemetry/snmp/mibs/SNMPv2-MIB.txt +854 -0
  115. data/lib/telemetry/snmp/mibs/SNMPv2-SMI.txt +344 -0
  116. data/lib/telemetry/snmp/mibs/SNMPv2-TC.txt +772 -0
  117. data/lib/telemetry/snmp/mibs/SNMPv2-TM.txt +176 -0
  118. data/lib/telemetry/snmp/mibs/TCP-MIB.txt +785 -0
  119. data/lib/telemetry/snmp/mibs/TRANSPORT-ADDRESS-MIB.txt +421 -0
  120. data/lib/telemetry/snmp/mibs/TUNNEL-MIB.txt +738 -0
  121. data/lib/telemetry/snmp/mibs/UCD-DEMO-MIB.txt +74 -0
  122. data/lib/telemetry/snmp/mibs/UCD-DISKIO-MIB.txt +171 -0
  123. data/lib/telemetry/snmp/mibs/UCD-DLMOD-MIB.txt +124 -0
  124. data/lib/telemetry/snmp/mibs/UCD-IPFWACC-MIB.txt +327 -0
  125. data/lib/telemetry/snmp/mibs/UCD-SNMP-MIB.txt +1712 -0
  126. data/lib/telemetry/snmp/mibs/UDP-MIB.txt +549 -0
  127. data/lib/telemetry/snmp/publisher.rb +130 -0
  128. data/lib/telemetry/snmp/version.rb +7 -0
  129. data/sourcehawk.yml +4 -0
  130. data/telemetry-snmp.gemspec +48 -0
  131. metadata +456 -0
@@ -0,0 +1,74 @@
1
+ UCD-DEMO-MIB DEFINITIONS ::= BEGIN
2
+
3
+ IMPORTS
4
+ MODULE-IDENTITY, OBJECT-TYPE, Integer32 FROM SNMPv2-SMI
5
+ ucdavis FROM UCD-SNMP-MIB;
6
+
7
+ ucdDemoMIB MODULE-IDENTITY
8
+ LAST-UPDATED "9912090000Z"
9
+ ORGANIZATION "University of California, Davis"
10
+ CONTACT-INFO
11
+ "This mib is no longer being maintained by the University of
12
+ California and is now in life-support-mode and being
13
+ maintained by the net-snmp project. The best place to write
14
+ for public questions about the net-snmp-coders mailing list
15
+ at net-snmp-coders@lists.sourceforge.net.
16
+
17
+ postal: Wes Hardaker
18
+ P.O. Box 382
19
+ Davis CA 95617
20
+
21
+ email: net-snmp-coders@lists.sourceforge.net
22
+ "
23
+ DESCRIPTION
24
+ "The UCD-SNMP Demonstration MIB."
25
+ REVISION "9912090000Z"
26
+ DESCRIPTION
27
+ "SMIv2 version converted from older MIB definitions."
28
+ ::= { ucdavis 14 }
29
+
30
+ ucdDemoMIBObjects OBJECT IDENTIFIER ::= { ucdDemoMIB 1 }
31
+
32
+ ucdDemoPublic OBJECT IDENTIFIER ::= { ucdDemoMIBObjects 1 }
33
+
34
+ ucdDemoResetKeys OBJECT-TYPE
35
+ SYNTAX Integer32 (0..2147483647)
36
+ MAX-ACCESS read-write
37
+ STATUS current
38
+ DESCRIPTION
39
+ "A set of value 1 to this object resets the
40
+ demonstration user's auth and priv keys to the
41
+ keys based on the P->Ku->Kul transformation of the
42
+ value of the ucdDemoPasspharse object.
43
+
44
+ Values other than 1 are ignored."
45
+ ::= { ucdDemoPublic 1 }
46
+
47
+ ucdDemoPublicString OBJECT-TYPE
48
+ SYNTAX OCTET STRING (SIZE(0..1024))
49
+ MAX-ACCESS read-write
50
+ STATUS current
51
+ DESCRIPTION
52
+ "A publicly settable string that can be set for testing
53
+ snmpsets. This value has no real usage other than
54
+ testing purposes."
55
+ ::= { ucdDemoPublic 2 }
56
+
57
+ ucdDemoUserList OBJECT-TYPE
58
+ SYNTAX OCTET STRING
59
+ MAX-ACCESS read-only
60
+ STATUS current
61
+ DESCRIPTION
62
+ "The list of users affected by the ucdDemoResetKeys object."
63
+ ::= { ucdDemoPublic 3 }
64
+
65
+ ucdDemoPassphrase OBJECT-TYPE
66
+ SYNTAX OCTET STRING
67
+ MAX-ACCESS read-only
68
+ STATUS current
69
+ DESCRIPTION
70
+ "The demo passphrase that ucdDemoResetKeys changes each
71
+ users localized key to based on the P->Ku->Kul transformation."
72
+ ::= { ucdDemoPublic 4 }
73
+
74
+ END
@@ -0,0 +1,171 @@
1
+ UCD-DISKIO-MIB DEFINITIONS ::= BEGIN
2
+
3
+ --
4
+ -- Derived from the original VEST-INTERNETT-MIB. Open issues:
5
+ --
6
+ -- (a) where to register this MIB?
7
+ -- (b) use not-accessible for diskIOIndex?
8
+ --
9
+
10
+
11
+ IMPORTS
12
+ MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter32, Counter64
13
+ FROM SNMPv2-SMI
14
+ DisplayString
15
+ FROM SNMPv2-TC
16
+ ucdExperimental
17
+ FROM UCD-SNMP-MIB;
18
+
19
+ ucdDiskIOMIB MODULE-IDENTITY
20
+ LAST-UPDATED "200504200000Z"
21
+ ORGANIZATION "University of California, Davis"
22
+ CONTACT-INFO
23
+ "This mib is no longer being maintained by the University of
24
+ California and is now in life-support-mode and being
25
+ maintained by the net-snmp project. The best place to write
26
+ for public questions about the net-snmp-coders mailing list
27
+ at net-snmp-coders@lists.sourceforge.net.
28
+
29
+ postal: Wes Hardaker
30
+ P.O. Box 382
31
+ Davis CA 95617
32
+
33
+ email: net-snmp-coders@lists.sourceforge.net
34
+ "
35
+ DESCRIPTION
36
+ "This MIB module defines objects for disk IO statistics."
37
+
38
+ REVISION "200504200000Z"
39
+ DESCRIPTION
40
+ "Add 64 bit counters. Patch from Dan Nelson."
41
+
42
+ REVISION "200202130000Z"
43
+ DESCRIPTION
44
+ "Add 1, 5 and 15-minute load average objects"
45
+
46
+ REVISION "200001260000Z"
47
+ DESCRIPTION
48
+ "SMIv2 version derived from older definitions contained
49
+ in the VEST-INTERNETT-MIB module."
50
+ ::= { ucdExperimental 15 }
51
+
52
+ diskIOTable OBJECT-TYPE
53
+ SYNTAX SEQUENCE OF DiskIOEntry
54
+ MAX-ACCESS not-accessible
55
+ STATUS current
56
+ DESCRIPTION
57
+ "Table of IO devices and how much data they have read/written."
58
+ ::= { ucdDiskIOMIB 1 }
59
+
60
+ diskIOEntry OBJECT-TYPE
61
+ SYNTAX DiskIOEntry
62
+ MAX-ACCESS not-accessible
63
+ STATUS current
64
+ DESCRIPTION
65
+ "An entry containing a device and its statistics."
66
+ INDEX { diskIOIndex }
67
+ ::= { diskIOTable 1 }
68
+
69
+ DiskIOEntry ::= SEQUENCE {
70
+ diskIOIndex Integer32,
71
+ diskIODevice DisplayString,
72
+ diskIONRead Counter32,
73
+ diskIONWritten Counter32,
74
+ diskIOReads Counter32,
75
+ diskIOWrites Counter32,
76
+ diskIOLA1 Integer32,
77
+ diskIOLA5 Integer32,
78
+ diskIOLA15 Integer32,
79
+ diskIONReadX Counter64,
80
+ diskIONWrittenX Counter64
81
+ }
82
+
83
+ diskIOIndex OBJECT-TYPE
84
+ SYNTAX Integer32 (0..65535)
85
+ MAX-ACCESS read-only
86
+ STATUS current
87
+ DESCRIPTION
88
+ "Reference index for each observed device."
89
+ ::= { diskIOEntry 1 }
90
+
91
+ diskIODevice OBJECT-TYPE
92
+ SYNTAX DisplayString
93
+ MAX-ACCESS read-only
94
+ STATUS current
95
+ DESCRIPTION
96
+ "The name of the device we are counting/checking."
97
+ ::= { diskIOEntry 2 }
98
+
99
+ diskIONRead OBJECT-TYPE
100
+ SYNTAX Counter32
101
+ MAX-ACCESS read-only
102
+ STATUS current
103
+ DESCRIPTION
104
+ "The number of bytes read from this device since boot."
105
+ ::= { diskIOEntry 3 }
106
+
107
+ diskIONWritten OBJECT-TYPE
108
+ SYNTAX Counter32
109
+ MAX-ACCESS read-only
110
+ STATUS current
111
+ DESCRIPTION
112
+ "The number of bytes written to this device since boot."
113
+ ::= { diskIOEntry 4 }
114
+
115
+ diskIOReads OBJECT-TYPE
116
+ SYNTAX Counter32
117
+ MAX-ACCESS read-only
118
+ STATUS current
119
+ DESCRIPTION
120
+ "The number of read accesses from this device since boot."
121
+ ::= { diskIOEntry 5 }
122
+
123
+ diskIOWrites OBJECT-TYPE
124
+ SYNTAX Counter32
125
+ MAX-ACCESS read-only
126
+ STATUS current
127
+ DESCRIPTION
128
+ "The number of write accesses to this device since boot."
129
+ ::= { diskIOEntry 6 }
130
+
131
+ diskIOLA1 OBJECT-TYPE
132
+ SYNTAX Integer32 (0..100)
133
+ MAX-ACCESS read-only
134
+ STATUS current
135
+ DESCRIPTION
136
+ "The 1 minute average load of disk (%)"
137
+ ::= { diskIOEntry 9 }
138
+
139
+ diskIOLA5 OBJECT-TYPE
140
+ SYNTAX Integer32 (0..100)
141
+ MAX-ACCESS read-only
142
+ STATUS current
143
+ DESCRIPTION
144
+ "The 5 minute average load of disk (%)"
145
+ ::= { diskIOEntry 10 }
146
+
147
+ diskIOLA15 OBJECT-TYPE
148
+ SYNTAX Integer32 (0..100)
149
+ MAX-ACCESS read-only
150
+ STATUS current
151
+ DESCRIPTION
152
+ "The 15 minute average load of disk (%)"
153
+ ::= { diskIOEntry 11 }
154
+
155
+ diskIONReadX OBJECT-TYPE
156
+ SYNTAX Counter64
157
+ MAX-ACCESS read-only
158
+ STATUS current
159
+ DESCRIPTION
160
+ "The number of bytes read from this device since boot."
161
+ ::= { diskIOEntry 12 }
162
+
163
+ diskIONWrittenX OBJECT-TYPE
164
+ SYNTAX Counter64
165
+ MAX-ACCESS read-only
166
+ STATUS current
167
+ DESCRIPTION
168
+ "The number of bytes written to this device since boot."
169
+ ::= { diskIOEntry 13 }
170
+
171
+ END
@@ -0,0 +1,124 @@
1
+ UCD-DLMOD-MIB DEFINITIONS ::= BEGIN
2
+
3
+ -- Why do we have dlmodNextIndex if the dlmodTable is read-write?
4
+ -- What exactly is the dlmodName and dlmodPath?
5
+ -- Should there not be a timestamp associated with dlmodError?
6
+ -- What exactly do the dlmodStatus enumerations mean?
7
+
8
+ IMPORTS
9
+ OBJECT-TYPE, MODULE-IDENTITY, Integer32 FROM SNMPv2-SMI
10
+ DisplayString FROM SNMPv2-TC
11
+ ucdExperimental FROM UCD-SNMP-MIB;
12
+
13
+ ucdDlmodMIB MODULE-IDENTITY
14
+ LAST-UPDATED "200001260000Z"
15
+ ORGANIZATION "University of California, Davis"
16
+ CONTACT-INFO
17
+ "This mib is no longer being maintained by the University of
18
+ California and is now in life-support-mode and being
19
+ maintained by the net-snmp project. The best place to write
20
+ for public questions about the net-snmp-coders mailing list
21
+ at net-snmp-coders@lists.sourceforge.net.
22
+
23
+ postal: Wes Hardaker
24
+ P.O. Box 382
25
+ Davis CA 95617
26
+
27
+ email: net-snmp-coders@lists.sourceforge.net
28
+ "
29
+ DESCRIPTION
30
+ "This file defines the MIB objects for dynamic
31
+ loadable MIB modules."
32
+
33
+ REVISION "200001260000Z"
34
+ DESCRIPTION
35
+ "Renamed MIB root object"
36
+
37
+ REVISION "9912100000Z"
38
+ DESCRIPTION
39
+ "SMIv2 version converted from older MIB definitions."
40
+ ::= { ucdExperimental 14 }
41
+
42
+ dlmodNextIndex OBJECT-TYPE
43
+ SYNTAX Integer32
44
+ MAX-ACCESS read-only
45
+ STATUS current
46
+ DESCRIPTION
47
+ "The index number of next appropiate unassigned entry
48
+ in the dlmodTable."
49
+ ::= { ucdDlmodMIB 1 }
50
+
51
+ dlmodTable OBJECT-TYPE
52
+ SYNTAX SEQUENCE OF DlmodEntry
53
+ MAX-ACCESS not-accessible
54
+ STATUS current
55
+ DESCRIPTION
56
+ "A table of dlmodEntry."
57
+ ::= { ucdDlmodMIB 2 }
58
+
59
+ dlmodEntry OBJECT-TYPE
60
+ SYNTAX DlmodEntry
61
+ MAX-ACCESS not-accessible
62
+ STATUS current
63
+ DESCRIPTION
64
+ "The parameters of dynamically loaded MIB module."
65
+ INDEX { dlmodIndex }
66
+ ::= { dlmodTable 1 }
67
+
68
+ DlmodEntry ::= SEQUENCE {
69
+ dlmodIndex Integer32,
70
+ dlmodName DisplayString,
71
+ dlmodPath DisplayString,
72
+ dlmodError DisplayString,
73
+ dlmodStatus INTEGER
74
+ }
75
+
76
+ dlmodIndex OBJECT-TYPE
77
+ SYNTAX Integer32 (1..65535)
78
+ MAX-ACCESS not-accessible
79
+ STATUS current
80
+ DESCRIPTION
81
+ "An index that uniqely identifies an entry in the dlmodTable."
82
+ ::= { dlmodEntry 1 }
83
+
84
+ dlmodName OBJECT-TYPE
85
+ SYNTAX DisplayString
86
+ MAX-ACCESS read-write
87
+ STATUS current
88
+ DESCRIPTION
89
+ "The module name."
90
+ ::= { dlmodEntry 2 }
91
+
92
+ dlmodPath OBJECT-TYPE
93
+ SYNTAX DisplayString
94
+ MAX-ACCESS read-write
95
+ STATUS current
96
+ DESCRIPTION
97
+ "The path of the module executable file."
98
+ ::= { dlmodEntry 3 }
99
+
100
+ dlmodError OBJECT-TYPE
101
+ SYNTAX DisplayString
102
+ MAX-ACCESS read-only
103
+ STATUS current
104
+ DESCRIPTION
105
+ "The last error from dlmod_load_module."
106
+ ::= { dlmodEntry 4 }
107
+
108
+ dlmodStatus OBJECT-TYPE
109
+ SYNTAX INTEGER {
110
+ loaded(1),
111
+ unloaded(2),
112
+ error(3),
113
+ load(4),
114
+ unload(5),
115
+ create(6),
116
+ delete(7)
117
+ }
118
+ MAX-ACCESS read-write
119
+ STATUS current
120
+ DESCRIPTION
121
+ "The current status of the loaded module."
122
+ ::= { dlmodEntry 5 }
123
+
124
+ END
@@ -0,0 +1,327 @@
1
+ UCD-IPFWACC-MIB DEFINITIONS ::= BEGIN
2
+
3
+ IMPORTS
4
+ OBJECT-TYPE, MODULE-IDENTITY, IpAddress, Integer32, Counter32
5
+ FROM SNMPv2-SMI
6
+ DisplayString
7
+ FROM SNMPv2-TC
8
+ ucdExperimental
9
+ FROM UCD-SNMP-MIB;
10
+
11
+ ucdIpFwAccMIB MODULE-IDENTITY
12
+ LAST-UPDATED "9912160000Z"
13
+ ORGANIZATION "University of California, Davis"
14
+ CONTACT-INFO
15
+ "This mib is no longer being maintained by the University of
16
+ California and is now in life-support-mode and being
17
+ maintained by the net-snmp project. The best place to write
18
+ for public questions about the net-snmp-coders mailing list
19
+ at net-snmp-coders@lists.sourceforge.net.
20
+
21
+ postal: Wes Hardaker
22
+ P.O. Box 382
23
+ Davis CA 95617
24
+
25
+ email: net-snmp-coders@lists.sourceforge.net
26
+ "
27
+ DESCRIPTION
28
+ "This module defines MIB components for reading information
29
+ from the accounting rules IP Firewall. This would typically
30
+ let you read the rules and the counters. I did not include
31
+ some flags and fields that I considered irrelevant for the
32
+ accounting rules. Resetting the counters of the rules by SNMP
33
+ would be simple, but I don't consider it so useful. I gave no
34
+ consideration to implementing write access for allowing
35
+ modification of the accounting rules.
36
+
37
+ Cristian.Estan@net.utcluj.ro "
38
+ REVISION "9912160000Z"
39
+ DESCRIPTION
40
+ "SMIv2 version converted from an older MIB definition."
41
+ ::= { ucdExperimental 1 }
42
+
43
+ ipFwAccTable OBJECT-TYPE
44
+ SYNTAX SEQUENCE OF IpFwAccEntry
45
+ MAX-ACCESS not-accessible
46
+ STATUS current
47
+ DESCRIPTION
48
+ "A table with the accounting rules of the IP firewall"
49
+ ::= { ucdIpFwAccMIB 1 }
50
+
51
+ ipFwAccEntry OBJECT-TYPE
52
+ SYNTAX IpFwAccEntry
53
+ MAX-ACCESS not-accessible
54
+ STATUS current
55
+ DESCRIPTION
56
+ "An accounting rule of the IP firewall"
57
+ INDEX { ipFwAccIndex }
58
+ ::= { ipFwAccTable 1 }
59
+
60
+ IpFwAccEntry ::= SEQUENCE {
61
+ ipFwAccIndex Integer32,
62
+ ipFwAccSrcAddr IpAddress,
63
+ ipFwAccSrcNetMask IpAddress,
64
+ ipFwAccDstAddr IpAddress,
65
+ ipFwAccDstNetMask IpAddress,
66
+ ipFwAccViaName DisplayString,
67
+ ipFwAccViaAddr IpAddress,
68
+ ipFwAccProto INTEGER,
69
+ ipFwAccBidir INTEGER,
70
+ ipFwAccDir INTEGER,
71
+ ipFwAccBytes Counter32,
72
+ ipFwAccPackets Counter32,
73
+ ipFwAccNrSrcPorts Integer32,
74
+ ipFwAccNrDstPorts Integer32,
75
+ ipFwAccSrcIsRange INTEGER,
76
+ ipFwAccDstIsRange INTEGER,
77
+ ipFwAccPort1 Integer32,
78
+ ipFwAccPort2 Integer32,
79
+ ipFwAccPort3 Integer32,
80
+ ipFwAccPort4 Integer32,
81
+ ipFwAccPort5 Integer32,
82
+ ipFwAccPort6 Integer32,
83
+ ipFwAccPort7 Integer32,
84
+ ipFwAccPort8 Integer32,
85
+ ipFwAccPort9 Integer32,
86
+ ipFwAccPort10 Integer32
87
+ }
88
+
89
+ ipFwAccIndex OBJECT-TYPE
90
+ SYNTAX Integer32 (0..2147483647)
91
+ MAX-ACCESS read-only
92
+ STATUS current
93
+ DESCRIPTION
94
+ "Reference index for each firewall rule."
95
+ ::= { ipFwAccEntry 1 }
96
+
97
+ ipFwAccSrcAddr OBJECT-TYPE
98
+ SYNTAX IpAddress
99
+ MAX-ACCESS read-only
100
+ STATUS current
101
+ DESCRIPTION
102
+ "The source address in the firewall rule."
103
+ ::= { ipFwAccEntry 2 }
104
+
105
+ ipFwAccSrcNetMask OBJECT-TYPE
106
+ SYNTAX IpAddress
107
+ MAX-ACCESS read-only
108
+ STATUS current
109
+ DESCRIPTION
110
+ "The netmask of the source address in the firewall rule."
111
+ ::= { ipFwAccEntry 3 }
112
+
113
+ ipFwAccDstAddr OBJECT-TYPE
114
+ SYNTAX IpAddress
115
+ MAX-ACCESS read-only
116
+ STATUS current
117
+ DESCRIPTION
118
+ "The destination address in the firewall rule."
119
+ ::= { ipFwAccEntry 4 }
120
+
121
+ ipFwAccDstNetMask OBJECT-TYPE
122
+ SYNTAX IpAddress
123
+ MAX-ACCESS read-only
124
+ STATUS current
125
+ DESCRIPTION
126
+ "The netmask of the destination address in the firewall rule."
127
+ ::= { ipFwAccEntry 5 }
128
+
129
+ ipFwAccViaName OBJECT-TYPE
130
+ SYNTAX DisplayString (SIZE(1..64))
131
+ MAX-ACCESS read-only
132
+ STATUS current
133
+ DESCRIPTION
134
+ "The name of the interface to which the rule applies. If no
135
+ interface is associated with the present rule, this should
136
+ contain a dash (-)."
137
+ ::= { ipFwAccEntry 6 }
138
+
139
+ ipFwAccViaAddr OBJECT-TYPE
140
+ SYNTAX IpAddress
141
+ MAX-ACCESS read-only
142
+ STATUS current
143
+ DESCRIPTION
144
+ "The address of the interface to which the rule applies.
145
+ Using this parameter makes sense when multiple addresses are
146
+ associated to the same physical interface. If not defined
147
+ for the current rule this should be set to 0."
148
+ ::= { ipFwAccEntry 7 }
149
+
150
+ ipFwAccProto OBJECT-TYPE
151
+ SYNTAX INTEGER {
152
+ other(1),
153
+ all(2),
154
+ tcp(3),
155
+ udp(4),
156
+ icmp(5)
157
+ }
158
+ MAX-ACCESS read-only
159
+ STATUS current
160
+ DESCRIPTION
161
+ "The protocol(s) to which the rule applies."
162
+ ::= { ipFwAccEntry 8 }
163
+
164
+ ipFwAccBidir OBJECT-TYPE
165
+ SYNTAX INTEGER {
166
+ unidirectional(1),
167
+ bidirectional(2)
168
+ }
169
+ MAX-ACCESS read-only
170
+ STATUS current
171
+ DESCRIPTION
172
+ "Whether the rule works in both directions (i.e. with the
173
+ source and destination parts swapped) or not."
174
+ ::= { ipFwAccEntry 9 }
175
+
176
+ ipFwAccDir OBJECT-TYPE
177
+ SYNTAX INTEGER {
178
+ both(1),
179
+ in(2),
180
+ out(3)
181
+ }
182
+ MAX-ACCESS read-only
183
+ STATUS current
184
+ DESCRIPTION
185
+ "Whether the rule applies to packets entering or exiting the
186
+ kernel."
187
+ ::= { ipFwAccEntry 10 }
188
+
189
+ ipFwAccBytes OBJECT-TYPE
190
+ SYNTAX Counter32
191
+ MAX-ACCESS read-only
192
+ STATUS current
193
+ DESCRIPTION
194
+ "The number of bytes that matched this rule since the last
195
+ reset of the counters."
196
+ ::= { ipFwAccEntry 11 }
197
+
198
+ ipFwAccPackets OBJECT-TYPE
199
+ SYNTAX Counter32
200
+ MAX-ACCESS read-only
201
+ STATUS current
202
+ DESCRIPTION
203
+ "The number of packets that matched this rule since the last
204
+ reset of the counters."
205
+ ::= { ipFwAccEntry 12 }
206
+
207
+ ipFwAccNrSrcPorts OBJECT-TYPE
208
+ SYNTAX Integer32
209
+ MAX-ACCESS read-only
210
+ STATUS current
211
+ DESCRIPTION
212
+ "The number of ports that refer to the source address."
213
+ ::= { ipFwAccEntry 13 }
214
+
215
+ ipFwAccNrDstPorts OBJECT-TYPE
216
+ SYNTAX Integer32
217
+ MAX-ACCESS read-only
218
+ STATUS current
219
+ DESCRIPTION
220
+ "The number of ports that refer to the destination address."
221
+ ::= { ipFwAccEntry 14 }
222
+
223
+ ipFwAccSrcIsRange OBJECT-TYPE
224
+ SYNTAX INTEGER {
225
+ srchasrange(1),
226
+ srchasnorange(2)
227
+ }
228
+ MAX-ACCESS read-only
229
+ STATUS current
230
+ DESCRIPTION
231
+ "Interpret the first two ports of the source part as
232
+ the upper and lower limit of an interval or not."
233
+ ::= { ipFwAccEntry 15 }
234
+
235
+ ipFwAccDstIsRange OBJECT-TYPE
236
+ SYNTAX INTEGER {
237
+ dsthasrange(1),
238
+ dsthasnorange(2)
239
+ }
240
+ MAX-ACCESS read-only
241
+ STATUS current
242
+ DESCRIPTION
243
+ "Interpret the first two ports of the destination part as
244
+ the upper and lower limit of an interval or not."
245
+ ::= { ipFwAccEntry 16 }
246
+
247
+ ipFwAccPort1 OBJECT-TYPE
248
+ SYNTAX Integer32
249
+ MAX-ACCESS read-only
250
+ STATUS current
251
+ DESCRIPTION
252
+ "Port number 1."
253
+ ::= { ipFwAccEntry 17 }
254
+
255
+ ipFwAccPort2 OBJECT-TYPE
256
+ SYNTAX Integer32
257
+ MAX-ACCESS read-only
258
+ STATUS current
259
+ DESCRIPTION
260
+ "Port number 2."
261
+ ::= { ipFwAccEntry 18 }
262
+
263
+ ipFwAccPort3 OBJECT-TYPE
264
+ SYNTAX Integer32
265
+ MAX-ACCESS read-only
266
+ STATUS current
267
+ DESCRIPTION
268
+ "Port number 3."
269
+ ::= { ipFwAccEntry 19 }
270
+
271
+ ipFwAccPort4 OBJECT-TYPE
272
+ SYNTAX Integer32
273
+ MAX-ACCESS read-only
274
+ STATUS current
275
+ DESCRIPTION
276
+ "Port number 4."
277
+ ::= { ipFwAccEntry 20 }
278
+
279
+ ipFwAccPort5 OBJECT-TYPE
280
+ SYNTAX Integer32
281
+ MAX-ACCESS read-only
282
+ STATUS current
283
+ DESCRIPTION
284
+ "Port number 5."
285
+ ::= { ipFwAccEntry 21 }
286
+
287
+ ipFwAccPort6 OBJECT-TYPE
288
+ SYNTAX Integer32
289
+ MAX-ACCESS read-only
290
+ STATUS current
291
+ DESCRIPTION
292
+ "Port number 6."
293
+ ::= { ipFwAccEntry 22 }
294
+
295
+ ipFwAccPort7 OBJECT-TYPE
296
+ SYNTAX Integer32
297
+ MAX-ACCESS read-only
298
+ STATUS current
299
+ DESCRIPTION
300
+ "Port number 7."
301
+ ::= { ipFwAccEntry 23 }
302
+
303
+ ipFwAccPort8 OBJECT-TYPE
304
+ SYNTAX Integer32
305
+ MAX-ACCESS read-only
306
+ STATUS current
307
+ DESCRIPTION
308
+ "Port number 8."
309
+ ::= { ipFwAccEntry 24 }
310
+
311
+ ipFwAccPort9 OBJECT-TYPE
312
+ SYNTAX Integer32
313
+ MAX-ACCESS read-only
314
+ STATUS current
315
+ DESCRIPTION
316
+ "Port number 9."
317
+ ::= { ipFwAccEntry 25 }
318
+
319
+ ipFwAccPort10 OBJECT-TYPE
320
+ SYNTAX Integer32
321
+ MAX-ACCESS read-only
322
+ STATUS current
323
+ DESCRIPTION
324
+ "Port number 10."
325
+ ::= { ipFwAccEntry 26 }
326
+
327
+ END