1------------------------------------------------------------------------------
2------------------------------------------------------------------------------
3--
4--  File         : gbnL3Mib.mi2
5--  Description  : Sample GBN Layer 3 Enterprise MIB - Hardware Independent
6--  Version      : 0.14
7--  Date         : April 12, 2001
8--
9--  Copyright (c) 2000-2001 admin Systems, Inc.  All Rights Reserved.
10--
11--  Reproduction of this document is authorized on condition that this
12--  copyright notice is included.  This sample GBN Layer 3 Enterprise MIB
13--  embodies proprietary intellectual property of admin Systems (ADMIN).
14--  ADMIN retains all title and ownership in the specification, including any
15--  revisions.
16--
17--  It is the intent of ADMIN to encourage the widespread use of this
18--  specification in connection with the management of GBN-based products.
19--  ADMIN grants vendors, end-users, and other interested parties a
20--  non-exclusive license to use this specification in connection with the
21--  management of GBN products.
22--
23--  This specification is supplied "AS IS", and ADMIN makes no warranty,
24--  either express or implied, as to the use, operations, condition,
25--  or performance of this specification.
26--
27------------------------------------------------------------------------------
28------------------------------------------------------------------------------
29--  Sample ADMIN GBN Generic Layer 3 Enterprise MIB
30--
31--  NOTES:
32--   1. This is a SMIv2 MIB.
33--
34--   2. The Layer 3 (L3) routing groups are defined independent of the
35--      underlying hardware or architecture.
36--
37--   3. This MIB is designed to be used with both "Layer 2 and Layer 3 hybrid
38--      switches" (L2/L3 hybrid) or with "Layer 3 only" (L3 only) switches.
39--
40--  The following groups are supported in the ADMIN GBN L3 Enterprise MIB:
41--   - gbnL3Mib             GBN Generic Layer 3 Routing MIB:
42--      - gbnL3IpMisc       Configure and retrieve global L3 objects
43--      - gbnL3IpSubnet     Configure and retrieve IP subnet objects
44--      - gbnL3IpStatic     Configure and retrieve IP static routes
45--      - gbnL3IpDynamic    Configure and retrieve IP dynamic routes
46--      - gbnL3IpRoute      Configure and retrieve IP routing info
47--
48------------------------------------------------------------------------------
49------------------------------------------------------------------------------
50
51    GBNL3-MIB DEFINITIONS ::= BEGIN
52
53    IMPORTS
54        MODULE-IDENTITY, OBJECT-TYPE,
55        Counter32, Gauge32,
56        Unsigned32, Integer32,
57        IpAddress                               FROM SNMPv2-SMI
58
59        RowStatus, TruthValue,
60        DisplayString, MacAddress               FROM SNMPv2-TC
61
62        MODULE-COMPLIANCE, OBJECT-GROUP         FROM SNMPv2-CONF
63
64        gbnL3If                                 FROM GBNL3If-MIB;
65
66    gbnL3Mib MODULE-IDENTITY
67        LAST-UPDATED    "0104120000Z"  -- April 12, 200
68        ORGANIZATION    "admin Systems, Inc."
69        CONTACT-INFO    "admin Systems, Inc.
70                         E-mail: support@admin.com.cn"
71
72        DESCRIPTION     "GBN Generic Layer 3 MIB definition."
73
74        REVISION        "0104120000Z"  -- April 12, 200
75        DESCRIPTION     "Initial MIB creation."
76
77        ::= { gbnL3If 1 }
78
79------------------------------------------------------------------------------
80-- Textual Conventions (i.e., these do not affect object encoding):
81------------------------------------------------------------------------------
82--
83-- "DURABLE":
84--    Objects that are saved across a system reset and/or power cycle
85--    are noted as "DURABLE" for convenience in the DESCRIPTION
86--    section of the object definition.  Code must be explicitly
87--    written to implement these DURABLE objects.
88--
89
90------------------------------------------------------------------------------
91--  groups in the GBN Layer 3 MIB
92------------------------------------------------------------------------------
93    gbnL3IpMisc             OBJECT IDENTIFIER ::= { gbnL3Mib 1 }
94    gbnL3IpSubnet           OBJECT IDENTIFIER ::= { gbnL3Mib 2 }
95    gbnL3IpStatic           OBJECT IDENTIFIER ::= { gbnL3Mib 3 }
96--  gbnL3IpDynamic          OBJECT IDENTIFIER ::= { gbnL3Mib 4 }
97    gbnL3IpRoute            OBJECT IDENTIFIER ::= { gbnL3Mib 5 }
98    gbnL3MibConformance     OBJECT IDENTIFIER ::= { gbnL3Mib 6 }
99    gbnL3MibGroups          OBJECT IDENTIFIER ::= { gbnL3MibConformance 1 }
100    gbnL3MibCompliances     OBJECT IDENTIFIER ::= { gbnL3MibConformance 2 }
101    gbnL3IpVr               OBJECT IDENTIFIER ::= { gbnL3Mib 7 }
102
103------------------------------------------------------------------------------
104--
105--  gbnL3IpMisc:
106--      This group is used to configure and retrieve miscellaneous global
107--      Layer 3 parameters.
108--
109------------------------------------------------------------------------------
110--
111    gbnL3IpMiscNumLogicalPorts OBJECT-TYPE
112        SYNTAX Integer32
113        MAX-ACCESS  read-only
114        STATUS  current
115        DESCRIPTION
116            "The number of logical ports (i.e., L2/L3 hybrid Aggregators or
117             L3 only interfaces).  For GBN, this is normally equal to the
118             number of physical ports."
119        ::= { gbnL3IpMisc 1 }
120
121    gbnL3IpMiscRouterId OBJECT-TYPE
122        SYNTAX IpAddress
123        MAX-ACCESS  read-write
124        STATUS  obsolete
125        DESCRIPTION
126            "the title of a router
127            it is used when ospf is enable."
128        ::= { gbnL3IpMisc 2 }
129
130    gbnL3IpMiscRoutingProtocol OBJECT-TYPE
131        SYNTAX  INTEGER {
132            none(0),        -- no dynamic routing protocols
133            rip(1),         -- RIPv1/v2
134            ospf(2),        -- OSPFv2
135            ripandOspf(3),
136            bgp(4)          --BGPv4
137                }
138        MAX-ACCESS  read-write
139        STATUS  current
140        DESCRIPTION
141            "DURABLE: { none }
142             The selected dynamic routing protocol.
143
144             Note that static routing is still functional even when this
145             object is set to none(1)."
146        ::= { gbnL3IpMisc 3 }
147
148
149    gbnL3IpMiscOspfv2Config OBJECT-TYPE
150        SYNTAX OCTET STRING (SIZE (0..4096))
151        MAX-ACCESS read-only
152        STATUS obsolete
153        DESCRIPTION
154             "This object is used for retrieving the RFC1850
155              Open Shortest Path First version 2 (OSPFv2) nonvolatile
156              (NVM) configuration data in an ASCII character string format."
157
158        REFERENCE
159              "RFC1583 OSPFv2,
160               RFC1850 OSPFv2 MIB,
161               WindNet OSPFv2 1.1 Release Notes,
162               WindNet OSPFv2 1.1 User's Guide, Section 6 Configuration"
163        ::= { gbnL3IpMisc 4 }
164
165    gbnL3IpMiscRouteECMPSupport OBJECT-TYPE
166        SYNTAX TruthValue
167        MAX-ACCESS read-only
168        STATUS  current
169        DESCRIPTION
170             "This object is used for indicating whether ecmp route is supported."
171        ::= { gbnL3IpMisc 5 }
172
173    gbnL3IpMiscRouteECMPCount OBJECT-TYPE
174        SYNTAX Integer32
175        MAX-ACCESS read-only
176        STATUS  current
177        DESCRIPTION
178             "This object is used for indicating the max number of a ecmp route.
179              when value is 1, means no ecmp."
180        ::= { gbnL3IpMisc 6 }
181
182    gbnL3IpMiscRouteWCMPSupport OBJECT-TYPE
183        SYNTAX TruthValue
184        MAX-ACCESS read-only
185        STATUS  current
186        DESCRIPTION
187             "This object is used for indicating whether wcmp route is supported."
188        ::= { gbnL3IpMisc 7 }
189
190------------------------------------------------------------------------------
191--
192--  gbnL3IpSubnet:
193--      This group is used to configure and retrieve subnet parameters
194--      required for the basic routing functionality.  Before a "L2/L3 hybrid"
195--      VLAN or a "L3 only" interface is used for routing, it must be assigned
196--      to at least one subnet.  Although GBN supports multiple subnets per
197--      VLAN or L3 interface, GBN recommends using one subnet per interface.
198--
199--      Note that the subnet IP address is added indirectly.  It is calculated
200--      by logically AND'ing the Agent's IP address (gbnL3IpSubnetAgentIpAddr)
201--      for this subnet with its subnet mask (gbnL3IpSubnetMask).  These
202--      subnets are automatically added to the software Routing Table by IP
203--      and can be seen in the gbnL3IpDynamicRouteTable.
204--
205--      For a L2/L3 hybrid switch, a static VLAN must be created for the
206--      specified gbnL3IpSubnetVidIface VLAN ID value before this entry can
207--      be used.
208--
209--      Note that one of the entries for the first interface in this table
210--      (i.e., gbnL3IpSubnetIfIndex for the 'sw0' swEND driver) is directly
211--      mapped to the IP address parameters in the GBN Common MIB
212--      (GBN-COMMON-MIB; i.e., gbnCommonIPIpAddress, gbnCommonIPNetMask).
213--      This allows the initial agent IP address to be set using the serial
214--      console, BOOTP, or DHCP.  The remaining subnet entries can be entered
215--      using SNMP or the Web management interfaces.
216--
217------------------------------------------------------------------------------
218--
219    gbnL3IpSubnetMaxRows  OBJECT-TYPE
220        SYNTAX Unsigned32
221        MAX-ACCESS read-only
222        STATUS current
223        DESCRIPTION
224            "The maximum possible number of rows in the 'gbnL3IpSubnetTable'."
225        ::= { gbnL3IpSubnet 1 }
226
227    gbnL3IpSubnetCurrentRows  OBJECT-TYPE
228        SYNTAX Unsigned32
229        MAX-ACCESS read-only
230        STATUS current
231        DESCRIPTION
232            "The current number of rows in the 'gbnL3IpSubnetTable'."
233        ::= { gbnL3IpSubnet 2 }
234
235    gbnL3IpSubnetTable OBJECT-TYPE
236        SYNTAX SEQUENCE OF GbnL3IpSubnetEntry
237        MAX-ACCESS not-accessible
238        STATUS current
239        DESCRIPTION
240            "A table of subnet parameters.  There is one entry
241             available for each of the 'gbnL3IpSubnetMaxRows'
242             supported IP subnets."
243        ::= { gbnL3IpSubnet 3 }
244
245    gbnL3IpSubnetEntry OBJECT-TYPE
246        SYNTAX GbnL3IpSubnetEntry
247        MAX-ACCESS not-accessible
248        STATUS current
249        DESCRIPTION
250            "A list of subnet parameters."
251        INDEX { gbnL3IpSubnetIfIndex, gbnL3IpSubnetAgentIpAddr }
252        ::= { gbnL3IpSubnetTable 1 }
253
254    GbnL3IpSubnetEntry ::= SEQUENCE {
255        gbnL3IpSubnetIfIndex        Integer32,
256        gbnL3IpSubnetAgentIpAddr    IpAddress,
257        gbnL3IpSubnetMask           IpAddress,
258        gbnL3IpSubnetVidIface       Integer32,
259        gbnL3IpSubnetName           DisplayString,
260        gbnL3IpSubnetRowStatus      RowStatus
261    }
262
263    gbnL3IpSubnetIfIndex  OBJECT-TYPE
264        SYNTAX Integer32
265        MAX-ACCESS not-accessible
266        STATUS current
267        DESCRIPTION
268            "DURABLE:
269             The ifIndex of the swEND driver associated with this subnet."
270        ::= { gbnL3IpSubnetEntry 1 }
271
272    gbnL3IpSubnetAgentIpAddr  OBJECT-TYPE
273        SYNTAX IpAddress
274        MAX-ACCESS not-accessible
275        STATUS current
276        DESCRIPTION
277            "DURABLE:
278             The network management station uses this IP Address to talk
279             with the Agent on this subnet.  This IP address logically
280             AND'ed with 'gbnL3IpSubnetMask' yields the actual subnet
281             value for this subnet."
282        ::= { gbnL3IpSubnetEntry 2 }
283
284    gbnL3IpSubnetMask  OBJECT-TYPE
285        SYNTAX IpAddress
286        MAX-ACCESS read-create
287        STATUS current
288        DESCRIPTION
289            "DURABLE:
290             The subnet mask for this subnet.  It contains 1's in the
291             bit positions for the net and subnet IDs and 0's in the
292             bit positions for host ID.  The 1's must be contiguous,
293             starting with the left most bit."
294        ::= { gbnL3IpSubnetEntry 3 }
295
296    gbnL3IpSubnetVidIface  OBJECT-TYPE
297        SYNTAX Integer32 (0..4094)
298        MAX-ACCESS read-create
299        STATUS current
300        DESCRIPTION
301            "DURABLE: { default=0:all }
302             For a L2/L3 hybrid switch, this object contains the actual
303             VLAN ID (VID) from 1 to 4094 or 0 if the VID is unassigned.
304             For a L3 only switch, this object contains the actual switch
305             interface from 1 to 4094 or 0 if unassigned.
306
307             Changing this object for this row causes all rows with the same
308             'gbnL3IpSubnetIfIndex' as this row to be changed to this new
309             'gbnL3IpSubnetVidIface' value."
310        ::= { gbnL3IpSubnetEntry 4 }
311
312    gbnL3IpSubnetName  OBJECT-TYPE
313        SYNTAX DisplayString (SIZE (0..16))
314        MAX-ACCESS read-create
315        STATUS current
316        DESCRIPTION
317            "DURABLE:  { '':all )
318             A user reference name for this subnet."
319        ::= { gbnL3IpSubnetEntry 5 }
320
321    gbnL3IpSubnetRowStatus OBJECT-TYPE
322        SYNTAX  RowStatus
323        MAX-ACCESS  read-create
324        STATUS  current
325        DESCRIPTION
326            "DURABLE:
327             This object indicates the status of this entry.  A row in this
328             table must be created using the createAndWait(5) action state
329             (i.e., createAndGo(4) is not supported).  This object can only
330             be set to active(1) after all objects for this row are valid.
331             The 'gbnL3IpSubnetName' is optional.
332
333             Note that the notInService(2) state is not supported.  Objects
334             in this table row can be changed when this object is notReady(3)
335             or active(1)."
336        ::= { gbnL3IpSubnetEntry 6 }
337
338   gbnL3IpSubnetPrimaryIpTable OBJECT-TYPE
339        SYNTAX SEQUENCE OF GbnL3IpSubnetPrimaryIpEntry
340        MAX-ACCESS not-accessible
341        STATUS current
342        DESCRIPTION
343            "��������ip��ַ��"
344        ::= { gbnL3IpSubnet 4 }
345
346    gbnL3IpSubnetPrimaryIpEntry OBJECT-TYPE
347        SYNTAX GbnL3IpSubnetPrimaryIpEntry
348        MAX-ACCESS not-accessible
349        STATUS current
350        DESCRIPTION
351            "��������ip��ַ��"
352        INDEX { gbnL3IpSubnetPrimaryIpIfIndex}
353        ::= { gbnL3IpSubnetPrimaryIpTable 1 }
354
355    GbnL3IpSubnetPrimaryIpEntry ::= SEQUENCE {
356        gbnL3IpSubnetPrimaryIpIfIndex        Integer32,
357        gbnL3IpSubnetPrimaryIpIpAddr    IpAddress
358    }
359
360    gbnL3IpSubnetPrimaryIpIfIndex  OBJECT-TYPE
361        SYNTAX Integer32
362        MAX-ACCESS not-accessible
363        STATUS current
364        DESCRIPTION
365            "�ӿڵ�������"
366        ::= { gbnL3IpSubnetPrimaryIpEntry 1 }
367
368    gbnL3IpSubnetPrimaryIpIpAddr  OBJECT-TYPE
369        SYNTAX IpAddress
370        MAX-ACCESS read-create
371        STATUS current
372        DESCRIPTION
373            "�ӿڵ���ip��ַ��"
374        ::= { gbnL3IpSubnetPrimaryIpEntry 2 }
375
376------------------------------------------------------------------------------
377--
378--  gbnL3IpStatic:
379--      This group is used to configure and retrieve static routes for both
380--      host and subnet IP destinations.
381--
382--      This group is independent of the underlying switch hardware and
383--      architecture.  It indicates how many Host IDs and Subnet IDs that
384--      the hardware can directly support, if any.  In general, hardware
385--      entries route much faster than software entries.
386--
387--      The user can choose to reserve zero, some, or all of the available
388--      hardware entries for use as static routes.  The remaining entries,
389--      if any, are reserved for dynamic routes (e.g., RIP, OSPF, etc.).
390--
391--      Note that the default route entry (0.0.0.0) cannot be placed in this
392--      table.  If the default route was ever placed into the hardware route
393--      table, unknown routes would never be sent to the CPU (i.e., this would
394--      prevent new routes from being learned and/or placed into the hardware
395--      route table).  The default route is reserved for use by the agent.
396--
397------------------------------------------------------------------------------
398--
399    gbnL3IpStaticMaxHwHosts  OBJECT-TYPE
400        SYNTAX Unsigned32
401        MAX-ACCESS read-only
402        STATUS current
403        DESCRIPTION
404            "The maximum number, if any, of hosts that the hardware
405             can support in its routing table.
406
407             Note that if the hardware supports both hosts and subnets
408             in the same table, this number represents both and
409             'gbnL3IpStaticMaxHwSubnets' is zero (0)."
410        ::= { gbnL3IpStatic 1 }
411
412    gbnL3IpStaticNumStaticHwHosts  OBJECT-TYPE
413        SYNTAX Unsigned32
414        MAX-ACCESS read-write
415        STATUS current
416        DESCRIPTION
417            "DURABLE:
418             The number of 'gbnL3IpStaticMaxHwHosts' hosts that the user
419             would like to reserve for static routes.  A SNMPv1 badValue
420             or SNMPv2 wrongValue is returned if the user attempts to use
421             a value less than zero or greater than 'gbnL3IpStaticMaxHwHosts'.
422
423             WARNING: This value is only used during system initialization
424             (i.e., after a reset)."
425        ::= { gbnL3IpStatic 2 }
426
427    gbnL3IpStaticMaxHwSubnets  OBJECT-TYPE
428        SYNTAX Unsigned32
429        MAX-ACCESS read-only
430        STATUS current
431        DESCRIPTION
432            "The maximum number, if any, of subnets that the hardware
433             can support in its routing table.
434
435             Note that if the hardware supports both hosts and subnets
436             in the same table, this value is zero (0)."
437        ::= { gbnL3IpStatic 3 }
438
439    gbnL3IpStaticNumStaticHwSubnets  OBJECT-TYPE
440        SYNTAX Unsigned32
441        MAX-ACCESS read-write
442        STATUS current
443        DESCRIPTION
444            "DURABLE:
445             The number of 'gbnL3IpStaticMaxHwSubnets' subnets that the user
446             would like to reserve for static routes.  An A SNMPv1 badValue
447             or SNMPv2 wrongValue is returned if the user attempts to use a
448             value less than zero or greater than 'gbnL3IpStaticMaxHwSubnets'.
449
450             WARNING: This value is only used during system initialization
451             (i.e., after a reset)."
452        ::= { gbnL3IpStatic 4 }
453
454    gbnL3IpStaticRouteMaxRows  OBJECT-TYPE
455        SYNTAX Unsigned32
456        MAX-ACCESS read-only
457        STATUS current
458        DESCRIPTION
459            "The maximum possible number of rows in the
460             'gbnL3IpStaticRouteTable'."
461        ::= { gbnL3IpStatic 5 }
462
463    gbnL3IpStaticRouteCurrentRows  OBJECT-TYPE
464        SYNTAX Unsigned32
465        MAX-ACCESS read-only
466        STATUS current
467        DESCRIPTION
468            "The current number of rows in the 'gbnL3IpStaticRouteTable'."
469        ::= { gbnL3IpStatic 6 }
470
471    gbnL3IpStaticRouteTable OBJECT-TYPE
472        SYNTAX SEQUENCE OF GbnL3IpStaticRouteEntry
473        MAX-ACCESS not-accessible
474        STATUS current
475        DESCRIPTION
476            "A table of static routes."
477        ::= { gbnL3IpStatic 7 }
478
479    gbnL3IpStaticRouteEntry OBJECT-TYPE
480        SYNTAX GbnL3IpStaticRouteEntry
481        MAX-ACCESS not-accessible
482        STATUS current
483        DESCRIPTION
484            "A list of static route parameters."
485        INDEX { gbnL3IpStaticDestIpAddr, gbnL3IpStaticVrId, gbnL3IpStaticECMPIndex }
486        ::= { gbnL3IpStaticRouteTable 1 }
487
488    GbnL3IpStaticRouteEntry ::= SEQUENCE {
489        gbnL3IpStaticDestIpAddr     IpAddress,
490        gbnL3IpStaticMask           IpAddress,
491        gbnL3IpStaticNextHop        IpAddress,
492        gbnL3IpStaticName           DisplayString,
493        gbnL3IpStaticUseHw          TruthValue,
494        gbnL3IpStaticInHw           TruthValue,
495        gbnL3IpStaticGateway        TruthValue,
496        gbnL3IpStaticRowStatus      RowStatus,
497        gbnL3IpStaticVrId           Integer32,
498        gbnL3IpStaticECMPIndex      Integer32,
499        gbnL3IpStaticWCMPWeight     Integer32
500    }
501
502    gbnL3IpStaticDestIpAddr  OBJECT-TYPE
503        SYNTAX IpAddress
504        MAX-ACCESS not-accessible
505        STATUS current
506        DESCRIPTION
507            "DURABLE:
508             The static route host or subnet IP destination address.
509             All IP destination addresses must be non-zero."
510        ::= { gbnL3IpStaticRouteEntry 1 }
511
512    gbnL3IpStaticMask  OBJECT-TYPE
513        SYNTAX IpAddress
514        MAX-ACCESS read-create
515        STATUS current
516        DESCRIPTION
517            "DURABLE:
518             The mask for this IP destination.  It contains 1's in the
519             bit positions for the net and subnet IDs and 0's in the
520             bit positions for host ID.  The 1's must be contiguous,
521             starting with the left most bit.
522
523             Note that a host route uses a 255.255.255.255 mask."
524        ::= { gbnL3IpStaticRouteEntry 2 }
525
526    gbnL3IpStaticNextHop OBJECT-TYPE
527        SYNTAX  IpAddress
528        MAX-ACCESS  read-create
529        STATUS  current
530        DESCRIPTION
531            "The IP address of the next hop of this route.
532            (In the case of a route bound to an interface
533            which is realized via a broadcast media, the value
534            of this field is the agent's IP address on that
535            interface.)"
536        ::= { gbnL3IpStaticRouteEntry 3 }
537
538    gbnL3IpStaticName  OBJECT-TYPE
539        SYNTAX DisplayString (SIZE (0..16))
540        MAX-ACCESS read-create
541        STATUS current
542        DESCRIPTION
543            "DURABLE:  { '':all )
544             A user reference name for this Static Route."
545        ::= { gbnL3IpStaticRouteEntry 4 }
546
547    gbnL3IpStaticUseHw  OBJECT-TYPE
548        SYNTAX TruthValue
549        MAX-ACCESS read-create
550        STATUS current
551        DESCRIPTION
552            "DURABLE: { false:all )
553             By setting this object to true(1), the user indicates the
554             desire to use hardware routing for this entry.  To disable
555             hardware routing for this entry, set this object to false(2).
556             If the underlying switch fabric does not support hardware
557             routing, this object is ignored.
558
559             There is usually limited space in the hardware routing table.
560             Consequently, if the user enables hardware routing on 'too'
561             many entries, the agent assigns routes on a first come, first
562             serve basis (i.e., the user may not get the expected results)."
563        DEFVAL  { false }
564        ::= { gbnL3IpStaticRouteEntry 5 }
565
566    gbnL3IpStaticInHw  OBJECT-TYPE
567        SYNTAX TruthValue
568        MAX-ACCESS read-only
569        STATUS current
570        DESCRIPTION
571            "If this object is true(1), this static route is actually in
572             the hardware Route Table.  Otherwise it is false(2)."
573        ::= { gbnL3IpStaticRouteEntry 6 }
574
575    gbnL3IpStaticGateway  OBJECT-TYPE
576        SYNTAX TruthValue
577        MAX-ACCESS read-create
578        STATUS current
579        DESCRIPTION
580            "DURABLE: { false:all )
581             By setting this object to true(1), the user indicates that this
582             subnet route is a gateway route (i.e., connected to external
583             router).  By setting it to false(2), the user indicates that this
584             is a direct route.  If 'gbnL3IpStaticMask' is '255.255.255.255'
585             (i.e., a host route) for this entry, this object cannot be set
586             to true(1)."
587        DEFVAL  { false }
588        ::= { gbnL3IpStaticRouteEntry 7 }
589
590    gbnL3IpStaticRowStatus OBJECT-TYPE
591        SYNTAX  RowStatus
592        MAX-ACCESS  read-create
593        STATUS  current
594        DESCRIPTION
595            "DURABLE:
596             This object indicates the status of this entry.  A row in this
597             table must be created using the createAndWait(5) action state
598             (i.e., createAndGo(4) is not supported).  This object can only
599             be set to active(1) after all objects for this row are valid.
600             The 'gbnL3IpStaticName' is optional.
601
602             Note that the notInService(2) state is not supported.  Objects
603             in this table row can be changed when this object is notReady(3)
604             or active(1)."
605        ::= { gbnL3IpStaticRouteEntry 8 }
606
607    gbnL3IpStaticVrId  OBJECT-TYPE
608        SYNTAX Integer32
609        MAX-ACCESS read-only
610        STATUS current
611        DESCRIPTION
612            "DURABLE:
613             virtual router index this route belongs to.when not support vrf,it value is always 0."
614        ::= { gbnL3IpStaticRouteEntry 9 }
615
616
617    gbnL3IpStaticECMPIndex  OBJECT-TYPE
618        SYNTAX Integer32
619        MAX-ACCESS read-only
620        STATUS current
621        DESCRIPTION
622            "DURABLE:
623             ECMP route index.when device dose not support ECMP,it's value must be 0."
624        ::= { gbnL3IpStaticRouteEntry 10 }
625
626    gbnL3IpStaticWCMPWeight  OBJECT-TYPE
627        SYNTAX Integer32
628        MAX-ACCESS read-create
629        STATUS current
630        DESCRIPTION
631            "DURABLE:
632             WCMP route weight.value range 1~(gbnL3IpMiscRouteECMPCount - 1).default value is 1,means ecmp.
633             change this for wcmp,but all wcmp route's sum can not exceed gbnL3IpMiscRouteECMPCount."
634        ::= { gbnL3IpStaticRouteEntry 11 }
635
636------------------------------------------------------------------------------
637--
638--  gbnL3IpRoute:
639--      The MIB II Routing Table (ipRouteTable) does not include the
640--      information required to support the UNIX style "netstat -nr" command.
641--      This group replicates some of the ipRouteTable objects and adds
642--      additional objects to support the "netstat -nr" functionality.
643--
644--      Note that the "netstat -nr" functionality has not been implemented.
645--
646--      This table also provides 'RowStatus' support for the 'ipRouteTable'
647--      objects contained in this table.
648--
649--      The ipRouteTable objects are not actually duplicated, but use the CCD+
650--      "alternate object" capability to point back to the MIB II ipRouteTable.
651--      Note that the utilized ipRouteTable objects are presented here
652--      in a more logical order (similar to RFC1354).
653--
654------------------------------------------------------------------------------
655--
656    gbnL3IpRouteTableCurrentSwEntries  OBJECT-TYPE
657        SYNTAX Unsigned32
658        MAX-ACCESS read-only
659        STATUS current
660        DESCRIPTION
661            "The number of current entries in the software Routing Table."
662        ::= { gbnL3IpRoute 1 }
663
664    gbnL3IpRouteCurrentHwHosts  OBJECT-TYPE
665        SYNTAX Unsigned32
666        MAX-ACCESS read-only
667        STATUS current
668        DESCRIPTION
669            "The number of hardware host routing table entries currently
670             in use.  If the hardware does not have routing table support,
671             this value is zero (0).
672
673             If the hardware supports both hosts and subnets
674             in the same table, this number represents both and
675             'gbnL3IpRouteCurrentHwSubnets' is zero (0)."
676        ::= { gbnL3IpRoute 2 }
677
678    gbnL3IpRouteCurrentHwSubnets  OBJECT-TYPE
679        SYNTAX Unsigned32
680        MAX-ACCESS read-only
681        STATUS current
682        DESCRIPTION
683            "The number of hardware subnet routing table entries currently
684             in use.  If the hardware does not have routing table support,
685             this value is zero (0).
686
687             Note that if the hardware supports both hosts and subnets
688             in the same table, this value is zero (0)."
689        ::= { gbnL3IpRoute 3 }
690
691    gbnL3IpRouteTable OBJECT-TYPE
692        SYNTAX  SEQUENCE OF GbnL3IpRouteEntry
693        MAX-ACCESS  not-accessible
694        STATUS  current
695        DESCRIPTION
696            "Provides Routing Table access.  This table can be used to
697             modify or add Routing Table entries.  Changes made with this
698             table are not saved to NVM (nonvolatile memory).  To save
699             static routes to NVM, use the gbnL3IpStaticRouteTable."
700        ::= { gbnL3IpRoute 4 }
701
702    gbnL3IpRouteEntry OBJECT-TYPE
703        SYNTAX  GbnL3IpRouteEntry
704        MAX-ACCESS  not-accessible
705        STATUS  current
706        DESCRIPTION
707            "Provides enough routing information to support the UNIX style
708             'netstat -nr' command and to support maintenance of the
709             Routing Table."
710        INDEX   { gbnL3IpRouteDest , gbnL3IpRouteMask, gbnL3IpRouteVrId }
711        ::= { gbnL3IpRouteTable 1 }
712
713    GbnL3IpRouteEntry ::=
714        SEQUENCE {
715            gbnL3IpRouteDest        IpAddress,
716            gbnL3IpRouteMask        IpAddress,
717            gbnL3IpRouteNextHopIp   IpAddress,
718            gbnL3IpRouteNextHopMac  MacAddress,
719            gbnL3IpRouteIfIndex     Integer32,
720            gbnL3IpRouteType        INTEGER,
721            gbnL3IpRouteProto       INTEGER,
722            gbnL3IpRouteAge         Unsigned32,
723            gbnL3IpRouteMetric1     Integer32,
724            gbnL3IpRouteUsingHw     TruthValue,
725            gbnL3IpRouteIsStatic    TruthValue,
726            gbnL3IpRouteFlags       Unsigned32,
727            gbnL3IpRouteRef         Gauge32,
728            gbnL3IpRouteUse         Counter32,
729            gbnL3IpRouteRowStatus   RowStatus,
730            gbnL3IpRouteVrId        Integer32
731        }
732
733    gbnL3IpRouteDest OBJECT-TYPE
734        SYNTAX  IpAddress
735        MAX-ACCESS  not-accessible
736        STATUS  current
737        DESCRIPTION
738            "The destination IP address of this route.  An
739            entry with a value of 0.0.0.0 is considered a
740            default route.  Multiple routes to a single
741            destination can appear in the table, but access to
742            such multiple entries is dependent on the table-
743            access mechanisms defined by the network
744            management protocol in use."
745        ::= { gbnL3IpRouteEntry 1 }
746
747    gbnL3IpRouteMask OBJECT-TYPE
748        SYNTAX  IpAddress
749        MAX-ACCESS  read-create
750        STATUS  current
751        DESCRIPTION
752            "Indicate the mask to be logical-ANDed with the
753            destination address before being compared to the
754            value in the gbnL3IpRouteDest field.
755
756            If the value of the gbnL3IpRouteDest is 0.0.0.0 (a
757            default route), then the mask value is also
758            0.0.0.0.  It should be noted that all IP routing
759            subsystems implicitly use this mechanism."
760        ::= { gbnL3IpRouteEntry 2 }
761
762    gbnL3IpRouteNextHopIp OBJECT-TYPE
763        SYNTAX  IpAddress
764        MAX-ACCESS  read-create
765        STATUS  current
766        DESCRIPTION
767            "The IP address of the next hop of this route.
768            (In the case of a route bound to an interface
769            which is realized via a broadcast media, the value
770            of this field is the agent's IP address on that
771            interface.)"
772        ::= { gbnL3IpRouteEntry 3 }
773
774    gbnL3IpRouteNextHopMac OBJECT-TYPE
775        SYNTAX  MacAddress
776        MAX-ACCESS  read-only
777        STATUS  current
778        DESCRIPTION
779            "The six byte MAC address of the next hop of this
780            route.  If the underlying hardware does not support this
781            object, an octet string of zero length is returned."
782        ::= { gbnL3IpRouteEntry 4 }
783
784    gbnL3IpRouteIfIndex OBJECT-TYPE
785        SYNTAX  Integer32
786        MAX-ACCESS  read-only
787        STATUS  current
788        DESCRIPTION
789            "The index value which uniquely identifies the
790            local interface through which the next hop of this
791            route should be reached.  The interface identified
792            by a particular value of this index is the same
793            interface as identified by the same value of
794            ifIndex."
795        ::= { gbnL3IpRouteEntry 5 }
796
797    gbnL3IpRouteType OBJECT-TYPE
798        SYNTAX  INTEGER {
799            other(1),       -- none of the following
800            invalid(2),     -- an invalidated route
801            direct(3),      -- route to directly connected (sub-)network
802            indirect(4)     -- route to a non-local
803                            -- host/network/sub-network
804                }
805        MAX-ACCESS  read-create
806        STATUS  current
807        DESCRIPTION
808            "The type of route.  Note that the values
809            direct(3) and indirect(4) refer to the notion of
810            direct and indirect routing in the IP architecture.
811
812            Setting this object to the value invalid(2) has
813            the effect of invalidating the corresponding entry
814            in the gbnL3IpRouteTable object.  That is, it
815            effectively disassociates the destination
816            identified with said entry from the route
817            identified with said entry.  It is an
818            implementation-specific matter as to whether the
819            agent removes an invalidated entry from the table.
820            Accordingly, management stations must be prepared
821            to receive tabular information from agents that
822            corresponds to entries not currently in use.
823            Proper interpretation of such entries requires
824            examination of the relevant gbnL3IpRouteType object."
825        ::= { gbnL3IpRouteEntry 6 }
826
827    gbnL3IpRouteProto OBJECT-TYPE
828        SYNTAX  INTEGER {
829            other(1),       -- none of the following
830
831                            -- non-protocol information,
832            local(2),       -- e.g., manually configured entries
833
834            netmgmt(3),     -- set via a network management protocol
835
836            icmp(4),        -- obtained via ICMP, e.g., Redirect
837
838                            -- the remaining values are all gateway
839                            -- routing protocols
840            egp(5),
841            ggp(6),
842            hello(7),
843            rip(8),
844            is-is(9),
845            es-is(10),
846            ciscoIgrp(11),
847            bbnSpfIgp(12),
848            ospf(13),
849            bgp(14)
850                }
851        MAX-ACCESS  read-only
852        STATUS  current
853        DESCRIPTION
854            "The routing mechanism via which this route was
855            learned.  Inclusion of values for gateway routing
856            protocols is not intended to imply that hosts
857            should support those protocols."
858        ::= { gbnL3IpRouteEntry 7 }
859
860    gbnL3IpRouteAge OBJECT-TYPE
861        SYNTAX  Unsigned32
862        MAX-ACCESS  read-only
863        STATUS  current
864        DESCRIPTION
865            "The number of seconds since this route was last
866            updated or otherwise determined to be correct.
867            Note that no semantics of `too old' can be implied
868            except through knowledge of the routing protocol
869            by which the route was learned."
870        ::= { gbnL3IpRouteEntry 8 }
871
872    gbnL3IpRouteMetric1 OBJECT-TYPE
873        SYNTAX  Integer32
874        MAX-ACCESS  read-only
875        STATUS  current
876        DESCRIPTION
877            "The primary routing metric for this route.  The
878            semantics of this metric are determined by the
879            routing-protocol specified in the route's
880            gbnL3IpRouteProto value.  If this metric is not used,
881            its value should be set to -1."
882        ::= { gbnL3IpRouteEntry 9 }
883
884    gbnL3IpRouteUsingHw OBJECT-TYPE
885        SYNTAX  TruthValue
886        MAX-ACCESS  read-only
887        STATUS  current
888        DESCRIPTION
889            "This object is true(1) if this route is contained in
890            the hardware routing table; otherwise, it is false(2)."
891        ::= { gbnL3IpRouteEntry 10 }
892
893    gbnL3IpRouteIsStatic OBJECT-TYPE
894        SYNTAX  TruthValue
895        MAX-ACCESS  read-only
896        STATUS  current
897        DESCRIPTION
898            "This object is true(1) if this route is defined in the
899            'gbnL3IpStaticRouteTable'.  This object is false(2) if this
900            route was created dynamically (e.g., with RIP, OSPF) or was
901            manually created using this table ('gbnL3IpRouteTable') or
902            the RFC1213 'ipRouteTable'."
903        ::= { gbnL3IpRouteEntry 11 }
904
905    gbnL3IpRouteFlags OBJECT-TYPE
906        SYNTAX  Unsigned32
907        MAX-ACCESS  read-only
908        STATUS  current
909        DESCRIPTION
910            "Not implemented.  Returns '0'.
911
912             Contains the information required for a netstat-like
913             'Flags' field.
914
915             The flags field represents a decimal value of the flags
916             specified for a given route.  The following is a list of
917             currently available flag values:
918                 0x1     | - route is usable (that is, 'up')
919                 0x2     | - destination is a gateway
920                 0x4     | - host specific routing entry
921                 0x8     | - host or net unreachable
922                 0x10    | - created dynamically (by redirect)
923                 0x20    | - modified dynamically (by redirect)
924                 0x40    | - message confirmed
925                 0x80    | - subnet mask present
926                 0x100   | - generate new routes on use
927                 0x200   | - external daemon resolves name
928                 0x400   | - generated by ARP
929                 0x800   | - manually added (static)
930                 0x1000  | - just discard packets (during updates)
931                 0x2000  | - modified by management protocol
932                 0x4000  | - protocol specific routing flag
933                 0x8000  | - protocol specific routing flag
934
935            For example, if the entry in the Routing Table has a flag
936            value of decimal 5, (0x1 OR'ed with 0x4), then this route
937            is 'up' and usable and is host-specific."
938        ::= { gbnL3IpRouteEntry 12 }
939
940    gbnL3IpRouteRef OBJECT-TYPE
941        SYNTAX  Gauge32
942        MAX-ACCESS  read-only
943        STATUS  current
944        DESCRIPTION
945            "Not implemented.  Returns '0'.
946
947             Contains the information required for the netstat 'Ref'
948             field, which indicates the number active uses for this
949             route."
950        ::= { gbnL3IpRouteEntry 13 }
951
952    gbnL3IpRouteUse OBJECT-TYPE
953        SYNTAX  Counter32
954        MAX-ACCESS  read-only
955        STATUS  current
956        DESCRIPTION
957            "Not implemented.  Returns '0'.
958
959             Contains the information required for the netstat 'Use'
960             field, which indicates the number of packets sent with
961             this route."
962        ::= { gbnL3IpRouteEntry 14 }
963
964    gbnL3IpRouteRowStatus OBJECT-TYPE
965        SYNTAX  RowStatus
966        MAX-ACCESS  read-create
967        STATUS  current
968        DESCRIPTION
969            "This object indicates the status of this entry.  A row in this
970             table must be created using the createAndWait(5) action state
971             (i.e., createAndGo(4) is not supported).  This object can only
972             be set to active(1) for the specified 'gbnL3IpRouteDest' index
973             value after the 'gbnL3IpRouteMask' and 'gbnL3IpRouteNextHop'
974             objects for this row are valid.  Setting 'gbnL3IpRouteType' is
975             optional.
976
977             Note that the notInService(2) state is not supported.  Objects
978             in this table row can be changed when this object is notReady(3)
979             or active(1)."
980        ::= { gbnL3IpRouteEntry 15 }
981
982    gbnL3IpRouteVrId  OBJECT-TYPE
983        SYNTAX Integer32
984        MAX-ACCESS read-only
985        STATUS current
986        DESCRIPTION
987            "DURABLE:
988             virtual router index this route belongs to.when not support vrf,it value is always 0."
989        ::= { gbnL3IpRouteEntry 16 }
990
991------------------------------------------------------------------------------
992--  conformance information
993------------------------------------------------------------------------------
994
995------------------------------------------------------------------------------
996--  units of conformance
997------------------------------------------------------------------------------
998
999    gbnL3IpMiscGroup    OBJECT-GROUP
1000        OBJECTS {
1001            gbnL3IpMiscNumLogicalPorts,
1002            gbnL3IpMiscRoutingProtocol,
1003            gbnL3IpMiscOspfv2Config
1004        }
1005        STATUS  current
1006        DESCRIPTION
1007           "This group configures and retrieves global, miscellaneous
1008            L3 objects."
1009        ::= { gbnL3MibGroups 1 }
1010
1011    gbnL3IpSubnetGroup  OBJECT-GROUP
1012        OBJECTS {
1013            gbnL3IpSubnetMaxRows,
1014            gbnL3IpSubnetCurrentRows,
1015            gbnL3IpSubnetMask,
1016            gbnL3IpSubnetVidIface,
1017            gbnL3IpSubnetName,
1018            gbnL3IpSubnetRowStatus
1019        }
1020        STATUS  current
1021        DESCRIPTION
1022           "This group configures and retrieves IP subnet objects."
1023        ::= { gbnL3MibGroups 2 }
1024
1025    gbnL3IpStaticGroup  OBJECT-GROUP
1026        OBJECTS {
1027            gbnL3IpStaticMaxHwHosts,
1028            gbnL3IpStaticNumStaticHwHosts,
1029            gbnL3IpStaticMaxHwSubnets,
1030            gbnL3IpStaticNumStaticHwSubnets,
1031            gbnL3IpStaticRouteMaxRows,
1032            gbnL3IpStaticRouteCurrentRows,
1033            gbnL3IpStaticMask,
1034            gbnL3IpStaticNextHop,
1035            gbnL3IpStaticName,
1036            gbnL3IpStaticUseHw,
1037            gbnL3IpStaticInHw,
1038            gbnL3IpStaticGateway,
1039            gbnL3IpStaticRowStatus
1040        }
1041        STATUS  current
1042        DESCRIPTION
1043           "This group configures and retrieves IP static routes."
1044        ::= { gbnL3MibGroups 3 }
1045
1046    gbnL3IpRouteGroup   OBJECT-GROUP
1047        OBJECTS {
1048            gbnL3IpRouteTableCurrentSwEntries,
1049            gbnL3IpRouteCurrentHwHosts,
1050            gbnL3IpRouteCurrentHwSubnets,
1051            gbnL3IpRouteMask,
1052            gbnL3IpRouteNextHopIp,
1053            gbnL3IpRouteNextHopMac,
1054            gbnL3IpRouteIfIndex,
1055            gbnL3IpRouteType,
1056            gbnL3IpRouteProto,
1057            gbnL3IpRouteAge,
1058            gbnL3IpRouteMetric1,
1059            gbnL3IpRouteUsingHw,
1060            gbnL3IpRouteIsStatic,
1061            gbnL3IpRouteFlags,
1062            gbnL3IpRouteRef,
1063            gbnL3IpRouteUse,
1064            gbnL3IpRouteRowStatus
1065        }
1066        STATUS  current
1067        DESCRIPTION
1068           "This group configures and retrieves IP routing info."
1069        ::= { gbnL3MibGroups 5 }
1070
1071------------------------------------------------------------------------------
1072--  compliance statements
1073------------------------------------------------------------------------------
1074
1075    gbnL3MibCompliance MODULE-COMPLIANCE
1076        STATUS  current
1077        DESCRIPTION
1078           "The compliance statement."
1079        MODULE  -- this module
1080        MANDATORY-GROUPS {
1081             gbnL3IpMiscGroup,
1082             gbnL3IpSubnetGroup,
1083             gbnL3IpStaticGroup,
1084             gbnL3IpRouteGroup
1085        }
1086        ::= { gbnL3MibCompliances 1 }
1087
1088------------------------------------------------------------------------------
1089--
1090--  gbnL3IpVr:
1091--
1092------------------------------------------------------------------------------
1093--
1094    gbnL3IpSubnetVrTable OBJECT-TYPE
1095        SYNTAX SEQUENCE OF GbnL3IpSubnetVrEntry
1096        MAX-ACCESS not-accessible
1097        STATUS current
1098        DESCRIPTION
1099            "A table of subnet vr parameters. "
1100        ::= { gbnL3IpVr 1 }
1101
1102    gbnL3IpSubnetVrEntry OBJECT-TYPE
1103        SYNTAX GbnL3IpSubnetVrEntry
1104        MAX-ACCESS not-accessible
1105        STATUS current
1106        DESCRIPTION
1107            "A list of subnet vr parameters."
1108        INDEX { gbnL3IpSubnetVrIfIndex }
1109        ::= { gbnL3IpSubnetVrTable 1 }
1110
1111    GbnL3IpSubnetVrEntry ::= SEQUENCE {
1112        gbnL3IpSubnetVrIfIndex        Integer32,
1113        gbnL3IpSubnetVrId             Integer32
1114    }
1115
1116    gbnL3IpSubnetVrIfIndex  OBJECT-TYPE
1117        SYNTAX Integer32
1118        MAX-ACCESS read-only
1119        STATUS current
1120        DESCRIPTION
1121            "DURABLE:
1122             The ifIndex of the swEND driver associated with this subnet."
1123        ::= { gbnL3IpSubnetVrEntry 1 }
1124
1125    gbnL3IpSubnetVrId  OBJECT-TYPE
1126        SYNTAX Integer32
1127        MAX-ACCESS read-create
1128        STATUS current
1129        DESCRIPTION
1130            "DURABLE:
1131            virtual router index this ip-subnet belongs to.when not support vrf,it value is always 0."
1132        ::= { gbnL3IpSubnetVrEntry 2 }
1133
1134--
1135-- END of GBN-L3-MIB
1136--
1137
1138END
1139