399 lines
16 KiB
Plaintext
399 lines
16 KiB
Plaintext
|
-- *****************************************************************
|
||
|
-- DLINKSW-DOS-PREVENT-MIB.mib : DoS (Denial of Service) Prevention MIB
|
||
|
--
|
||
|
-- Copyright (c) 2013 D-Link Corporation, all rights reserved.
|
||
|
--
|
||
|
-- *****************************************************************
|
||
|
|
||
|
DLINKSW-DOS-PREVENT-MIB DEFINITIONS ::= BEGIN
|
||
|
|
||
|
IMPORTS
|
||
|
TEXTUAL-CONVENTION
|
||
|
FROM SNMPv2-TC
|
||
|
MODULE-IDENTITY,OBJECT-TYPE,Unsigned32,Counter64,IpAddress
|
||
|
FROM SNMPv2-SMI
|
||
|
TruthValue
|
||
|
FROM SNMPv2-TC
|
||
|
MODULE-COMPLIANCE, OBJECT-GROUP
|
||
|
FROM SNMPv2-CONF
|
||
|
InterfaceIndexOrZero
|
||
|
FROM IF-MIB
|
||
|
dlinkIndustrialCommon
|
||
|
FROM DLINK-ID-REC-MIB;
|
||
|
|
||
|
dlinkSwDosPrevMIB MODULE-IDENTITY
|
||
|
LAST-UPDATED "201305300000Z"
|
||
|
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 contains managed objects for the DOS Protection
|
||
|
application of the device."
|
||
|
REVISION "201305300000Z"
|
||
|
DESCRIPTION
|
||
|
"Initial version of this MIB module."
|
||
|
::= { dlinkIndustrialCommon 59 }
|
||
|
|
||
|
--
|
||
|
-- Textual conventions
|
||
|
--
|
||
|
|
||
|
DosAttackType ::= TEXTUAL-CONVENTION
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This data type indicates a well-known DoS type which can be detected.
|
||
|
Note that a particular agent may support only certain DoS attack
|
||
|
types. Thus, the valid values of this object are project
|
||
|
dependent. An agent may respond with an error
|
||
|
(e.g., 'inconsistentValue ') to a management SET operation which
|
||
|
attempts to modify the value to one which is not supported by the
|
||
|
managed device."
|
||
|
SYNTAX INTEGER{
|
||
|
landAttack(1),
|
||
|
blatAttack(2),
|
||
|
smurfAttack(3),
|
||
|
tcpNullScan(4),
|
||
|
tcpXmasScan(5),
|
||
|
tcpSynFin(6),
|
||
|
tcpSynSrcPortLess1024(7),
|
||
|
arpMacSaMismatch(8),
|
||
|
fraggleAttack(9),
|
||
|
icmpRedirectAttack(10),
|
||
|
icmpUnreachableAttack(11),
|
||
|
ipRouteRecordAttack(12),
|
||
|
ipSourceRouteAttack(13),
|
||
|
pingDeathAttack(14),
|
||
|
tcpFlagSynRst(15),
|
||
|
tcpOverMacMcbc(16),
|
||
|
tcpSynWithData(17),
|
||
|
tcpTinyFragAttack(18),
|
||
|
tcpUdpPortZero(19),
|
||
|
tracertAttack(20),
|
||
|
winNukeAttack(21),
|
||
|
pingFlood(22),
|
||
|
synFlood(23),
|
||
|
teardrop(24),
|
||
|
all(999) }
|
||
|
|
||
|
-- ***************************************************************************
|
||
|
-- Node definitions
|
||
|
-- ***************************************************************************
|
||
|
dDosPrevMIBNotifications OBJECT IDENTIFIER ::= { dlinkSwDosPrevMIB 0 }
|
||
|
dDosPrevMIBObjects OBJECT IDENTIFIER ::= { dlinkSwDosPrevMIB 1 }
|
||
|
dDosPrevMIBConformance OBJECT IDENTIFIER ::= { dlinkSwDosPrevMIB 2 }
|
||
|
|
||
|
-- ***************************************************************************
|
||
|
-- dDosPrevMIBObjects
|
||
|
-- ***************************************************************************
|
||
|
dDosPrevGlobalNotifsEnabled OBJECT-TYPE
|
||
|
SYNTAX TruthValue
|
||
|
MAX-ACCESS read-write
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"Set to 'true' to enable global SNMP notification
|
||
|
for DoS prevention feature. Setting the object to
|
||
|
'false' will disable SNMP notifications."
|
||
|
DEFVAL { false }
|
||
|
::= { dDosPrevMIBObjects 1}
|
||
|
|
||
|
dDosPrevNotifyInfo OBJECT IDENTIFIER ::= { dDosPrevMIBObjects 2 }
|
||
|
|
||
|
dDosPrevNotiInfoDropFramesCount OBJECT-TYPE
|
||
|
SYNTAX Counter64
|
||
|
MAX-ACCESS accessible-for-notify
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the total dropped packets due to DoS attack
|
||
|
in the past 5 minutes."
|
||
|
::= { dDosPrevNotifyInfo 1 }
|
||
|
|
||
|
dDosPrevNotiInfoDropIpAddr OBJECT-TYPE
|
||
|
SYNTAX IpAddress
|
||
|
MAX-ACCESS accessible-for-notify
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"If the DoS packet is from the end station, represent the IP address of attacker;
|
||
|
otherwise represent the router's IP."
|
||
|
::= { dDosPrevNotifyInfo 2 }
|
||
|
|
||
|
dDosPrevNotiInfoDropPortNumber OBJECT-TYPE
|
||
|
SYNTAX INTEGER
|
||
|
MAX-ACCESS accessible-for-notify
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the attacked port number."
|
||
|
::= { dDosPrevNotifyInfo 3 }
|
||
|
|
||
|
dDosPrevCtrlTable OBJECT-TYPE
|
||
|
SYNTAX SEQUENCE OF DDosPrevCtrlEntry
|
||
|
MAX-ACCESS not-accessible
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"A table includes the settings of all DoS prevention
|
||
|
types supported by the Switch.
|
||
|
Note: the special attack type 'all' is not included
|
||
|
in this table."
|
||
|
::= { dDosPrevMIBObjects 3 }
|
||
|
|
||
|
dDosPrevCtrlEntry OBJECT-TYPE
|
||
|
SYNTAX DDosPrevCtrlEntry
|
||
|
MAX-ACCESS not-accessible
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"A single entry in the DoS prevention control table."
|
||
|
INDEX { dDoSPrevCtrlAttackType }
|
||
|
::= { dDosPrevCtrlTable 1 }
|
||
|
|
||
|
DDosPrevCtrlEntry ::= SEQUENCE {
|
||
|
dDoSPrevCtrlAttackType DosAttackType,
|
||
|
dDoSPrevCtrlEnabled TruthValue,
|
||
|
dDoSPrevCtrlActionType INTEGER,
|
||
|
dDoSPrevCtrlRedirectPort InterfaceIndexOrZero,
|
||
|
dDoSPrevCtrlRedirectPriority INTEGER,
|
||
|
dDoSPrevCtrlRedirectRateLimit Unsigned32
|
||
|
}
|
||
|
|
||
|
dDoSPrevCtrlAttackType OBJECT-TYPE
|
||
|
SYNTAX DosAttackType
|
||
|
MAX-ACCESS not-accessible
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the DoS attack type."
|
||
|
::= { dDosPrevCtrlEntry 1 }
|
||
|
|
||
|
dDoSPrevCtrlEnabled OBJECT-TYPE
|
||
|
SYNTAX TruthValue
|
||
|
MAX-ACCESS read-write
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the state of the DoS attack type.
|
||
|
Setting this object to 'false' will reset other columnar
|
||
|
objects in the same row."
|
||
|
DEFVAL { false }
|
||
|
::= { dDosPrevCtrlEntry 2 }
|
||
|
|
||
|
dDoSPrevCtrlActionType OBJECT-TYPE
|
||
|
SYNTAX INTEGER {
|
||
|
drop(1),
|
||
|
redirect(2)
|
||
|
}
|
||
|
MAX-ACCESS read-write
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the action for the DoS prevention type.
|
||
|
If this object is set to 'redirect' and dDoSPrevCtrlEnabled is
|
||
|
'true', the configuration will not take effect until a valid
|
||
|
redirect port (dDoSPrevCtrlRedirectPort) is specified. If redirect
|
||
|
port is not valid, the switch behaves same as 'drop' is set."
|
||
|
DEFVAL { drop }
|
||
|
::= { dDosPrevCtrlEntry 3 }
|
||
|
|
||
|
dDoSPrevCtrlRedirectPort OBJECT-TYPE
|
||
|
SYNTAX InterfaceIndexOrZero
|
||
|
MAX-ACCESS read-write
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the port to which the attacking packet will
|
||
|
be redirected. A value of 0 means redirect port is unspecified.
|
||
|
This object can only be modified for entries whose value of
|
||
|
dDoSPrevCtrlEnabled is 'true' and dDoSPrevCtrlActionType is
|
||
|
'redirect'. Otherwise, inconsistentValue error will be returned."
|
||
|
DEFVAL { 0 }
|
||
|
::= { dDosPrevCtrlEntry 4 }
|
||
|
|
||
|
dDoSPrevCtrlRedirectPriority OBJECT-TYPE
|
||
|
SYNTAX INTEGER (0..8)
|
||
|
MAX-ACCESS read-write
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object configures the priority for the redirected attacking
|
||
|
packets. Valid priority values are from 0 to 7.
|
||
|
A value of 8 indicates that the original priority will not be
|
||
|
changed when the packet is redirected.
|
||
|
This object can only be modified for entries whose value of
|
||
|
dDoSPrevCtrlEnabled is 'true', dDoSPrevCtrlActionType is
|
||
|
'redirect' and dDoSPrevCtrlRedirectPort is specified.
|
||
|
Otherwise, inconsistentValue error will be returned."
|
||
|
DEFVAL { 8 }
|
||
|
::= { dDosPrevCtrlEntry 5 }
|
||
|
|
||
|
dDoSPrevCtrlRedirectRateLimit OBJECT-TYPE
|
||
|
SYNTAX Unsigned32 (0..100000000)
|
||
|
UNITS "kbps"
|
||
|
MAX-ACCESS read-write
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the rate-limit (kilobit per second) for
|
||
|
redirecting DoS attacking packets.
|
||
|
The valid range and granularity is project dependent.
|
||
|
A value of 0 indicates that there is no limit for redirecting
|
||
|
DoS attacking packets.
|
||
|
This object can only be modified for entries whose value of
|
||
|
dDoSPrevCtrlEnabled is 'true', dDoSPrevCtrlActionType is
|
||
|
'redirect' and dDoSPrevCtrlRedirectPort is specified.
|
||
|
Otherwise, inconsistentValue error will be returned."
|
||
|
DEFVAL { 0 }
|
||
|
::= { dDosPrevCtrlEntry 6 }
|
||
|
|
||
|
dDoSPrevCounterTable OBJECT-TYPE
|
||
|
SYNTAX SEQUENCE OF DDoSPrevCounterEntry
|
||
|
MAX-ACCESS not-accessible
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"The table contains the counters of DoS prevention
|
||
|
types supported by the Switch.
|
||
|
This table only contains one entry of attack type is 'all' if per
|
||
|
DoS-type counters is not supported."
|
||
|
::= { dDosPrevMIBObjects 4 }
|
||
|
|
||
|
dDoSPrevCounterEntry OBJECT-TYPE
|
||
|
SYNTAX DDoSPrevCounterEntry
|
||
|
MAX-ACCESS not-accessible
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"A single entry in the DoS prevention counter table."
|
||
|
INDEX { dDoSPrevCounterAttackType }
|
||
|
::= { dDoSPrevCounterTable 1 }
|
||
|
|
||
|
DDoSPrevCounterEntry ::= SEQUENCE {
|
||
|
dDoSPrevCounterAttackType DosAttackType,
|
||
|
dDoSPrevCounterFrameCount Counter64,
|
||
|
dDoSPrevCounterClearCounter INTEGER
|
||
|
}
|
||
|
|
||
|
dDoSPrevCounterAttackType OBJECT-TYPE
|
||
|
SYNTAX DosAttackType
|
||
|
MAX-ACCESS not-accessible
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the DoS attack type."
|
||
|
::= { dDoSPrevCounterEntry 1 }
|
||
|
|
||
|
dDoSPrevCounterFrameCount OBJECT-TYPE
|
||
|
SYNTAX Counter64
|
||
|
MAX-ACCESS read-only
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object indicates the number of frames detected for
|
||
|
the DoS attack prevention type."
|
||
|
::= { dDoSPrevCounterEntry 2 }
|
||
|
|
||
|
dDoSPrevCounterClearCounter OBJECT-TYPE
|
||
|
SYNTAX INTEGER {
|
||
|
clear(1),
|
||
|
noOp(2)
|
||
|
}
|
||
|
MAX-ACCESS read-create
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This object is used to reset the counter of the specific
|
||
|
attack type when set to 'clear'.
|
||
|
No action is taken if this object is set to 'noOp'.
|
||
|
When read, the value 'noOp' is returned."
|
||
|
DEFVAL { noOp }
|
||
|
::= { dDoSPrevCounterEntry 3 }
|
||
|
|
||
|
-- ***************************************************************************
|
||
|
-- Notifications
|
||
|
-- ***************************************************************************
|
||
|
dDosPreveAttackDetected NOTIFICATION-TYPE
|
||
|
OBJECTS { dDosPrevNotiInfoDropFramesCount }
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This trap is sent when dDosPrevGlobalNotifsEnabled is 'true' and
|
||
|
the DoS attack occurs in the past 5 minutes."
|
||
|
::= { dDosPrevMIBNotifications 1 }
|
||
|
|
||
|
dDosPreveAttackDetectedPacket NOTIFICATION-TYPE
|
||
|
OBJECTS {
|
||
|
dDoSPrevCtrlAttackType,
|
||
|
dDosPrevNotiInfoDropIpAddr,
|
||
|
dDosPrevNotiInfoDropPortNumber
|
||
|
}
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"This trap is sent when dDosPrevGlobalNotifsEnabled is 'true' and
|
||
|
the DoS attack occurs to detect the dropped attack packets."
|
||
|
::= { dDosPrevMIBNotifications 2 }
|
||
|
|
||
|
-- ***************************************************************************
|
||
|
-- Conformance
|
||
|
-- ***************************************************************************
|
||
|
dDosPrevMIBCompliances
|
||
|
OBJECT IDENTIFIER ::= { dDosPrevMIBConformance 1 }
|
||
|
dDosPrevMIBGroups
|
||
|
OBJECT IDENTIFIER ::= { dDosPrevMIBConformance 2 }
|
||
|
|
||
|
dDosPrevMIBCompliance MODULE-COMPLIANCE
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"The compliance statement for the DoS Prevention MIB."
|
||
|
MODULE -- this module
|
||
|
MANDATORY-GROUPS {
|
||
|
dDosPrevBasicGroup,
|
||
|
dDosPrevNotifyObjectGroup,
|
||
|
dDosPrevNotificationsGroup
|
||
|
}
|
||
|
GROUP dDosPrevActionRedirectCtrlGroup
|
||
|
DESCRIPTION
|
||
|
"This group need not be implemented if only support 'drop' for DoS
|
||
|
attack."
|
||
|
::= { dDosPrevMIBCompliances 1 }
|
||
|
|
||
|
dDosPrevBasicGroup OBJECT-GROUP
|
||
|
OBJECTS {
|
||
|
dDoSPrevCtrlEnabled,
|
||
|
dDoSPrevCounterFrameCount,
|
||
|
dDoSPrevCounterClearCounter
|
||
|
}
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"The collection of objects provides basic control for DoS
|
||
|
Prevention."
|
||
|
::= { dDosPrevMIBGroups 1 }
|
||
|
|
||
|
dDosPrevActionRedirectCtrlGroup OBJECT-GROUP
|
||
|
OBJECTS {
|
||
|
dDoSPrevCtrlActionType,
|
||
|
dDoSPrevCtrlRedirectPort,
|
||
|
dDoSPrevCtrlRedirectPriority,
|
||
|
dDoSPrevCtrlRedirectRateLimit
|
||
|
}
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"The collection of objects provides the advanced action control for
|
||
|
DoS Prevention."
|
||
|
::= { dDosPrevMIBGroups 2 }
|
||
|
|
||
|
dDosPrevNotifyObjectGroup OBJECT-GROUP
|
||
|
OBJECTS {
|
||
|
dDosPrevGlobalNotifsEnabled,
|
||
|
dDosPrevNotiInfoDropFramesCount,
|
||
|
dDosPrevNotiInfoDropIpAddr,
|
||
|
dDosPrevNotiInfoDropPortNumber
|
||
|
}
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"The collection of objects provides the control and information of
|
||
|
DoS notifications."
|
||
|
::= { dDosPrevMIBGroups 3 }
|
||
|
|
||
|
dDosPrevNotificationsGroup NOTIFICATION-GROUP
|
||
|
NOTIFICATIONS {
|
||
|
dDosPreveAttackDetected,
|
||
|
dDosPreveAttackDetectedPacket
|
||
|
}
|
||
|
STATUS current
|
||
|
DESCRIPTION
|
||
|
"The collection of objects provides DoS notifications."
|
||
|
::= { dDosPrevMIBGroups 4 }
|
||
|
|
||
|
END
|
||
|
|