mibs/MIBS/dlink/DLINKSW-IPV6-SRC-GUARD-MIB
2023-12-05 12:25:34 +01:00

504 lines
18 KiB
Plaintext

-- *****************************************************************
-- DLINKSW-IPV6-SRC-GUARD-MIB: IPv6 Source Guard MIB
--
-- Copyright (c) 2013 D-Link Corporation, all rights reserved.
--
-- *****************************************************************
DLINKSW-IPV6-SRC-GUARD-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
Unsigned32,
OBJECT-TYPE
FROM SNMPv2-SMI
MODULE-COMPLIANCE,
OBJECT-GROUP
FROM SNMPv2-CONF
TruthValue,
RowStatus,
MacAddress,
DisplayString
FROM SNMPv2-TC
InetAddressIPv6
FROM INET-ADDRESS-MIB
ifIndex,
InterfaceIndex
FROM IF-MIB
VlanId
FROM Q-BRIDGE-MIB
dlinkIndustrialCommon
FROM DLINK-ID-REC-MIB;
dlinkSwIpv6SourceGuardMIB MODULE-IDENTITY
LAST-UPDATED "201307180000Z"
ORGANIZATION "D-Link Corp."
CONTACT-INFO
" D-Link Corporation
Postal: No. 289, Sinhu 3rd Rd., Neihu District,
Taipei City 114, Taiwan, R.O.C
Tel: +886-2-66000123
E-mail: tsd@dlink.com.tw
"
DESCRIPTION
"This MIB module defines objects for IPv6 Source Guard."
REVISION "201307180000Z"
DESCRIPTION
"This is the first version of the MIB file.
"
::= { dlinkIndustrialCommon 145 }
--
-- Textual Conventions
--
-- -----------------------------------------------------------------------------
dIpv6sgNotifications OBJECT IDENTIFIER ::= { dlinkSwIpv6SourceGuardMIB 0 }
dIpv6sgObjects OBJECT IDENTIFIER ::= { dlinkSwIpv6SourceGuardMIB 1 }
dIpv6sgConformance OBJECT IDENTIFIER ::= { dlinkSwIpv6SourceGuardMIB 2 }
dIpv6sgPolicy OBJECT IDENTIFIER ::= { dIpv6sgObjects 1 }
dIpv6sgInterface OBJECT IDENTIFIER ::= { dIpv6sgObjects 2 }
dIpv6sgBindings OBJECT IDENTIFIER ::= { dIpv6sgObjects 3 }
-- -----------------------------------------------------------------------------
dIpv6sgPolicyNumber OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Indicates the number of entries present in IPv6 source-guard policy
table."
::= { dIpv6sgPolicy 1 }
dIpv6sgPolicyTable OBJECT-TYPE
SYNTAX SEQUENCE OF DIpv6sgPolicyEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The table contains information about IPv6 source-guard policies."
::= { dIpv6sgPolicy 2 }
dIpv6sgPolicyEntry OBJECT-TYPE
SYNTAX DIpv6sgPolicyEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry defined in dIpv6sgPolicyTable. An entry is
created/removed when an IPv6 source-guard policy is created/deleted."
INDEX { dIpv6sgPolicyName }
::= { dIpv6sgPolicyTable 1 }
DIpv6sgPolicyEntry ::= SEQUENCE {
dIpv6sgPolicyName DisplayString,
dIpv6sgPolicyDenyAutoConfig TruthValue,
dIpv6sgPolicyPermitLinkLocal TruthValue,
dIpv6sgPolicyRowStatus RowStatus
}
dIpv6sgPolicyName OBJECT-TYPE
SYNTAX DisplayString (SIZE (1..32))
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The name of the IPv6 source-guard policy."
::= { dIpv6sgPolicyEntry 1 }
dIpv6sgPolicyDenyAutoConfig OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Indicates whether deny data traffic from auto-configured global address.
It is useful when all global addresses on a link are assigned
by DHCP and the administrator wants to block hosts
with self-configured addresses sending traffic.
"
DEFVAL { false }
::= { dIpv6sgPolicyEntry 2 }
dIpv6sgPolicyPermitLinkLocal OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Indicates whether allow hardware permit data traffic sent by link-local address.
"
DEFVAL { false }
::= { dIpv6sgPolicyEntry 3 }
dIpv6sgPolicyRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object allows the dynamic creation and deletion of a policy."
::= { dIpv6sgPolicyEntry 99 }
-- -----------------------------------------------------------------------------
dIpv6sgIfConfigTable OBJECT-TYPE
SYNTAX SEQUENCE OF DIpv6sgIfConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table provides the mechanism to configure the IPv6 source-guard
state at every interface capable of this feature.
"
::= { dIpv6sgInterface 1 }
dIpv6sgIfConfigEntry OBJECT-TYPE
SYNTAX DIpv6sgIfConfigEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row instance contains the configuration to enable or
disable IPv6 source-guard on an interface.
"
INDEX { ifIndex }
::= { dIpv6sgIfConfigTable 1 }
DIpv6sgIfConfigEntry ::= SEQUENCE {
dIpv6sgIfEnabled TruthValue
}
dIpv6sgIfEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object enables IPv6 source-guard on the interface, if set this
object to 'true'.
Setting this object to 'false' disables the IPv6 source-guard on the
interface.
"
::= { dIpv6sgIfConfigEntry 1 }
-- -----------------------------------------------------------------------------
dIpv6sgIfAttachTable OBJECT-TYPE
SYNTAX SEQUENCE OF DIpv6sgIfAttachEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table provides the mechanism to attach an IPv6 source-guard policy
at each interface capable of this feature.
"
::= { dIpv6sgInterface 2 }
dIpv6sgIfAttachEntry OBJECT-TYPE
SYNTAX DIpv6sgIfAttachEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row instance contains the configuration of attaching IPv6 source-guard
policy on the interface.
"
INDEX { ifIndex }
::= { dIpv6sgIfAttachTable 1 }
DIpv6sgIfAttachEntry ::= SEQUENCE {
dIpv6sgIfAttachPolicy DisplayString,
dIpv6sgIfAttachRowStatus RowStatus
}
dIpv6sgIfAttachPolicy OBJECT-TYPE
SYNTAX DisplayString (SIZE (1..32))
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object indicates the name of the attached IPv6 source-guard policy.
"
::= { dIpv6sgIfAttachEntry 1 }
dIpv6sgIfAttachRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The row status variable, used according to installation
and removal conventions for conceptual rows."
::= { dIpv6sgIfAttachEntry 99 }
-- -----------------------------------------------------------------------------
dIpv6sgStaticBindingsTable OBJECT-TYPE
SYNTAX SEQUENCE OF DIpv6sgStaticBindingsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table provides the manual bindings information.
e.g.
VLAN MAC Address IP Address Interface
---- ----------------- ---------- ---------
2000 00.01.02.03.04.05 2000::1 8
3000 00.05.06.07.08.09 3000::2 3
4094 00.10.20.30.40.55 2134::7 5
4094 00.10.20.30.40.55 2134::8 6
4094 00.10.20.30.40.55 2134::9 8
"
::= { dIpv6sgBindings 1 }
dIpv6sgStaticBindingsEntry OBJECT-TYPE
SYNTAX DIpv6sgStaticBindingsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry defines a manual binding.
"
INDEX {
dIpv6sgStaticBindingsVlan,
dIpv6sgStaticBindingsMacAddress,
dIpv6sgStaticBindingsIpAddress,
dIpv6sgStaticBindingsInterface
}
::= { dIpv6sgStaticBindingsTable 1 }
DIpv6sgStaticBindingsEntry ::= SEQUENCE {
dIpv6sgStaticBindingsVlan VlanId,
dIpv6sgStaticBindingsMacAddress MacAddress,
dIpv6sgStaticBindingsIpAddress InetAddressIPv6,
dIpv6sgStaticBindingsInterface InterfaceIndex,
dIpv6sgStaticBindingsRowStatus RowStatus
}
dIpv6sgStaticBindingsVlan OBJECT-TYPE
SYNTAX VlanId
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the VLAN to which a host belongs."
::= { dIpv6sgStaticBindingsEntry 1 }
dIpv6sgStaticBindingsMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the MAC address of the entry."
::= { dIpv6sgStaticBindingsEntry 2 }
dIpv6sgStaticBindingsIpAddress OBJECT-TYPE
SYNTAX InetAddressIPv6
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the allocated IPv6 address of the entry."
::= { dIpv6sgStaticBindingsEntry 3 }
dIpv6sgStaticBindingsInterface OBJECT-TYPE
SYNTAX InterfaceIndex
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the ifIndex value of the interface
where the host connects to."
::= { dIpv6sgStaticBindingsEntry 4 }
dIpv6sgStaticBindingsRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object is used to manage the creation and deletion
of rows in this table.
"
::= { dIpv6sgStaticBindingsEntry 99 }
-- -----------------------------------------------------------------------------
dIpv6sgBindingsTable OBJECT-TYPE
SYNTAX SEQUENCE OF DIpv6sgBindingsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A table provides the bindings information regarding IPv6 Snooping.
e.g.
Onwer IPv6 Address MAC Address Interface VLAN TimeLeft
----- ------------------------- ---------------- --------- ---- --------
NDP FE80::A8BB:CCFF:FE01:F500 AABB.CC01.F500 1 100 8850
Static FE80::21D:71FF:FE99:4900 001D.7199.4900 2 100 0
NDP 2001:600::1 AABB.CC01.F500 1 100 3181
DHCP 2001:300::1 AABB.CC01.F500 1 100 9559
DHCP 2001:100::2 AABB.CC01.F600 1 200 9196
DHCP 2001:400::1 001D.7199.4900 2 100 1568
Static 2001:500::1 000A.000B.000C 13 300 0
"
::= { dIpv6sgBindings 2 }
dIpv6sgBindingsEntry OBJECT-TYPE
SYNTAX DIpv6sgBindingsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry contains information of a binding instance.
"
INDEX {
dIpv6sgBindingsOwner,
dIpv6sgBindingsIpAddress,
dIpv6sgBindingsMacAddress,
dIpv6sgBindingsInterface,
dIpv6sgBindingsVlan
}
::= { dIpv6sgBindingsTable 1 }
DIpv6sgBindingsEntry ::= SEQUENCE {
dIpv6sgBindingsOwner INTEGER,
dIpv6sgBindingsIpAddress InetAddressIPv6,
dIpv6sgBindingsMacAddress MacAddress,
dIpv6sgBindingsInterface InterfaceIndex,
dIpv6sgBindingsVlan VlanId,
dIpv6sgBindingsTimeleft Unsigned32
}
dIpv6sgBindingsOwner OBJECT-TYPE
SYNTAX INTEGER {
static(1),
ndp(2),
dhcp(3)
}
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the IPv6 snooping owner."
::= { dIpv6sgBindingsEntry 1 }
dIpv6sgBindingsIpAddress OBJECT-TYPE
SYNTAX InetAddressIPv6
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the IPv6 address of the entry."
::= { dIpv6sgBindingsEntry 2 }
dIpv6sgBindingsMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the MAC address of the entry."
::= { dIpv6sgBindingsEntry 3 }
dIpv6sgBindingsInterface OBJECT-TYPE
SYNTAX InterfaceIndex
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the ifIndex value of the interface
where a host connects to."
::= { dIpv6sgBindingsEntry 4 }
dIpv6sgBindingsVlan OBJECT-TYPE
SYNTAX VlanId
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object indicates the VLAN to which the host belongs."
::= { dIpv6sgBindingsEntry 5 }
dIpv6sgBindingsTimeleft OBJECT-TYPE
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object indicates the time left for the dynamic hosts.
It is meaningless when dIpv6sgBindingsOwner is 'static',
it is always be zero."
::= { dIpv6sgBindingsEntry 6 }
-- Conformance
dIpv6sgMIBCompliances OBJECT IDENTIFIER ::= { dIpv6sgConformance 1 }
dIpv6sgMIBGroups OBJECT IDENTIFIER ::= { dIpv6sgConformance 2 }
dIpv6sgMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for DLINKSW-IPV6-SRC-GUARD-MIB"
MODULE
MANDATORY-GROUPS {
dIpv6sgIfConfigGroup
}
GROUP dIpv6sgPolicyGroup
DESCRIPTION
"This group is mandatory only for the platform which provides the
configuration of IPv6 source-guard policy."
GROUP dIpv6sgIfAttachGroup
DESCRIPTION
"This group is mandatory only for the platform which supports
interface-specific configuration of attaching IPv6 source-guard policy."
GROUP dIpv6sgStaticBindingsGroup
DESCRIPTION
"This group is mandatory only for platforms which support
configuring the static bindings."
::= { dIpv6sgMIBCompliances 1 }
-- Units of Conformance
-- IPv6 Source Guard Group
dIpv6sgIfConfigGroup OBJECT-GROUP
OBJECTS {
dIpv6sgIfEnabled
}
STATUS current
DESCRIPTION
"A collection of objects which are used to configure as
well as show information regarding the IPv6 Source Guard feature
per interface."
::= { dIpv6sgMIBGroups 1 }
dIpv6sgBindingsGroup OBJECT-GROUP
OBJECTS {
dIpv6sgBindingsTimeleft
}
STATUS current
DESCRIPTION
"A collection of objects which are used to show information
regarding the IPv6 Snooping binding data."
::= { dIpv6sgMIBGroups 2 }
dIpv6sgPolicyGroup OBJECT-GROUP
OBJECTS {
dIpv6sgPolicyNumber,
dIpv6sgPolicyDenyAutoConfig,
dIpv6sgPolicyPermitLinkLocal,
dIpv6sgPolicyRowStatus
}
STATUS current
DESCRIPTION
"A collection of object which are used to configure as
well as show information regarding the IPv6 source-guard policy."
::= { dIpv6sgMIBGroups 3 }
dIpv6sgIfAttachGroup OBJECT-GROUP
OBJECTS {
dIpv6sgIfAttachPolicy,
dIpv6sgIfAttachRowStatus
}
STATUS current
DESCRIPTION
"A collection of object which are used to configure as
well as show information regarding the attaching policy
per interface."
::= { dIpv6sgMIBGroups 4 }
dIpv6sgStaticBindingsGroup OBJECT-GROUP
OBJECTS {
dIpv6sgStaticBindingsRowStatus
}
STATUS current
DESCRIPTION
"A collection of objects which are used to configure
as well as show information regarding the static binding data
for IPv6 Source Guard."
::= { dIpv6sgMIBGroups 5 }
END