::= { natSessionEntry 18 }
natSessionPublicDstPort OBJECT-TYPE
SYNTAX InetPortNumber
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"When the value of protocol is TCP or UDP, this object
represents the destination port in the first packet of
session while in public-realm. On the other hand, when
the protocol is ICMP, this object is not relevant for
translation and should be zero.
The value of this object must be zero when the
natSessionPrivateDstEPBindId object has a zero value
and natSessionPrivateDstEPBindMode is
addressPortBind(2). In such a scenario, the NAT
session lookup will match any port number to this
field.
The value of this object must be zero when the object
is not a representative field (SrcPort, DstPort, or
ICMP identifier) of the session tuple in either the
public realm or the private realm."
::= { natSessionEntry 19 }
natSessionMaxIdleTime OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The max time for which this session can be idle
without detecting a packet."
::= { natSessionEntry 20 }
natSessionCurrentIdleTime OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The time since a packet belonging to this session was
last detected."
::= { natSessionEntry 21 }
natSessionInTranslates OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of inbound packets that were translated for
this session.
Discontinuities in the value of this counter can occur at
reinitialization of the management system and at other
times, as indicated by the value of
ifCounterDiscontinuityTime on the relevant interface."
::= { natSessionEntry 22 }
natSessionOutTranslates OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of outbound packets that were translated for
this session.
Discontinuities in the value of this counter can occur at
reinitialization of the management system and at other
times, as indicated by the value of
ifCounterDiscontinuityTime on the relevant interface."
::= { natSessionEntry 23 }
--
-- The Protocol table
--
natProtocolTable OBJECT-TYPE
SYNTAX SEQUENCE OF NatProtocolEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"The (conceptual) table containing per protocol NAT
statistics."
::= { natMIBObjects 10 }
natProtocolEntry OBJECT-TYPE
SYNTAX NatProtocolEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry (conceptual row) containing NAT statistics
pertaining to a particular protocol."
INDEX { natProtocol }
::= { natProtocolTable 1 }
NatProtocolEntry ::= SEQUENCE {
natProtocol NatProtocolType,
natProtocolInTranslates Counter64,
natProtocolOutTranslates Counter64,
natProtocolDiscards Counter64
}
natProtocol OBJECT-TYPE
SYNTAX NatProtocolType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object represents the protocol pertaining to which
parameters are reported."
::= { natProtocolEntry 1 }
natProtocolInTranslates OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of inbound packets pertaining to the protocol
identified by natProtocol that underwent NAT.
Discontinuities in the value of this counter can occur at
reinitialization of the management system and at other
times, as indicated by the value of
ifCounterDiscontinuityTime on the relevant interface."
::= { natProtocolEntry 2 }
natProtocolOutTranslates OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of outbound packets pertaining to the protocol
identified by natProtocol that underwent NAT.
Discontinuities in the value of this counter can occur at
reinitialization of the management system and at other
times, as indicated by the value of
ifCounterDiscontinuityTime on the relevant interface."
::= { natProtocolEntry 3 }
natProtocolDiscards OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of packets pertaining to the protocol
identified by natProtocol that had to be
rejected/dropped due to lack of resources. These
rejections could be due to session timeout, resource
unavailability, lack of address space, etc.
Discontinuities in the value of this counter can occur at
reinitialization of the management system and at other
times, as indicated by the value of
ifCounterDiscontinuityTime on the relevant interface."
::= { natProtocolEntry 4 }
--
-- Notifications section
--
natMIBNotifications OBJECT IDENTIFIER ::= { natMIB 0 }
--
-- Notifications
--
natPacketDiscard NOTIFICATION-TYPE
OBJECTS { ifIndex }
STATUS current
DESCRIPTION
"This notification is generated when IP packets are
discarded by the NAT function; e.g., due to lack of
mapping space when NAT is out of addresses or ports.
Note that the generation of natPacketDiscard
notifications is throttled by the agent, as specified
by the ’natNotifThrottlingInterval’ object."
::= { natMIBNotifications 1 }
--
-- Conformance information.
--
natMIBConformance OBJECT IDENTIFIER ::= { natMIB 2 }
natMIBGroups OBJECT IDENTIFIER ::= { natMIBConformance 1 }
natMIBCompliances OBJECT IDENTIFIER ::= { natMIBConformance 2 }
--
-- Units of conformance
--
natConfigGroup OBJECT-GROUP
OBJECTS { natInterfaceRealm,
natInterfaceServiceType,
natInterfaceStorageType,
natInterfaceRowStatus,
natAddrMapName,
natAddrMapEntryType,
natAddrMapTranslationEntity,
natAddrMapLocalAddrType,
natAddrMapLocalAddrFrom,
natAddrMapLocalAddrTo,
natAddrMapLocalPortFrom,
natAddrMapLocalPortTo,
natAddrMapGlobalAddrType,
natAddrMapGlobalAddrFrom,
natAddrMapGlobalAddrTo,
natAddrMapGlobalPortFrom,
natAddrMapGlobalPortTo,
natAddrMapProtocol,
natAddrMapStorageType,
natAddrMapRowStatus,
natBindDefIdleTimeout,
natUdpDefIdleTimeout,
natIcmpDefIdleTimeout,
natOtherDefIdleTimeout,
natTcpDefIdleTimeout,
natTcpDefNegTimeout,
natNotifThrottlingInterval }
STATUS current
DESCRIPTION
"A collection of configuration-related information
required to support management of devices supporting
NAT."
::= { natMIBGroups 1 }
natTranslationGroup OBJECT-GROUP
OBJECTS { natAddrBindNumberOfEntries,
natAddrBindGlobalAddrType,
natAddrBindGlobalAddr,
natAddrBindId,
natAddrBindTranslationEntity,
natAddrBindType,
natAddrBindMapIndex,
natAddrBindSessions,
natAddrBindMaxIdleTime,
natAddrBindCurrentIdleTime,
natAddrBindInTranslates,
natAddrBindOutTranslates,
natAddrPortBindNumberOfEntries,
natAddrPortBindGlobalAddrType,
natAddrPortBindGlobalAddr,
natAddrPortBindGlobalPort,
natAddrPortBindId,
natAddrPortBindTranslationEntity,
natAddrPortBindType,
natAddrPortBindMapIndex,
natAddrPortBindSessions,
natAddrPortBindMaxIdleTime,
natAddrPortBindCurrentIdleTime,
natAddrPortBindInTranslates,
natAddrPortBindOutTranslates,
natSessionPrivateSrcEPBindId,
natSessionPrivateSrcEPBindMode,
natSessionPrivateDstEPBindId,
natSessionPrivateDstEPBindMode,
natSessionDirection,
natSessionUpTime,
natSessionAddrMapIndex,
natSessionProtocolType,
natSessionPrivateAddrType,
natSessionPrivateSrcAddr,
natSessionPrivateSrcPort,
natSessionPrivateDstAddr,
natSessionPrivateDstPort,
natSessionPublicAddrType,
natSessionPublicSrcAddr,
natSessionPublicSrcPort,
natSessionPublicDstAddr,
natSessionPublicDstPort,
natSessionMaxIdleTime,
natSessionCurrentIdleTime,
natSessionInTranslates,
natSessionOutTranslates }
STATUS current
DESCRIPTION
"A collection of BIND-related objects required to support
management of devices supporting NAT."
::= { natMIBGroups 2 }
natStatsInterfaceGroup OBJECT-GROUP
OBJECTS { natInterfaceInTranslates,
natInterfaceOutTranslates,
natInterfaceDiscards }
STATUS current
DESCRIPTION
"A collection of NAT statistics associated with the
interface on which NAT is configured, to aid
troubleshooting/monitoring of the NAT operation."
::= { natMIBGroups 3 }
natStatsProtocolGroup OBJECT-GROUP
OBJECTS { natProtocolInTranslates,
natProtocolOutTranslates,
natProtocolDiscards }
STATUS current
DESCRIPTION
"A collection of protocol specific NAT statistics,
to aid troubleshooting/monitoring of NAT operation."
::= { natMIBGroups 4 }
natStatsAddrMapGroup OBJECT-GROUP
OBJECTS { natAddrMapInTranslates,
natAddrMapOutTranslates,
natAddrMapDiscards,
natAddrMapAddrUsed }
STATUS current
DESCRIPTION
"A collection of address map specific NAT statistics,
to aid troubleshooting/monitoring of NAT operation."
::= { natMIBGroups 5 }
natMIBNotificationGroup NOTIFICATION-GROUP
NOTIFICATIONS { natPacketDiscard }
STATUS current
DESCRIPTION
"A collection of notifications generated by
devices supporting this MIB."
::= { natMIBGroups 6 }
--
-- Compliance statements
--
natMIBFullCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"When this MIB is implemented with support for
read-create, then such an implementation can claim
full compliance. Such devices can then be both
monitored and configured with this MIB.
The following index objects cannot be added as OBJECT
clauses but nevertheless have the compliance
requirements:
"
-- OBJECT natAddrBindLocalAddrType
-- SYNTAX InetAddressType { ipv4(1), ipv6(2) }
-- DESCRIPTION
-- "An implementation is required to support
-- global IPv4 and/or IPv6 addresses, depending
-- on its support for IPv4 and IPv6."
-- OBJECT natAddrBindLocalAddr
-- SYNTAX InetAddress (SIZE(4|16))
-- DESCRIPTION
-- "An implementation is required to support
-- global IPv4 and/or IPv6 addresses, depending
-- on its support for IPv4 and IPv6."
-- OBJECT natAddrPortBindLocalAddrType
-- SYNTAX InetAddressType { ipv4(1), ipv6(2) }
-- DESCRIPTION
-- "An implementation is required to support
-- global IPv4 and/or IPv6 addresses, depending
-- on its support for IPv4 and IPv6."
-- OBJECT natAddrPortBindLocalAddr
-- SYNTAX InetAddress (SIZE(4|16))
-- DESCRIPTION
-- "An implementation is required to support
-- global IPv4 and/or IPv6 addresses, depending
-- on its support for IPv4 and IPv6."
MODULE IF-MIB -- The interfaces MIB, RFC2863
MANDATORY-GROUPS {
ifCounterDiscontinuityGroup
}
MODULE -- this module
MANDATORY-GROUPS { natConfigGroup, natTranslationGroup,
natStatsInterfaceGroup }
GROUP natStatsProtocolGroup
DESCRIPTION
"This group is optional."
GROUP natStatsAddrMapGroup
DESCRIPTION
"This group is optional."
GROUP natMIBNotificationGroup
DESCRIPTION
"This group is optional."
OBJECT natAddrMapLocalAddrType
SYNTAX InetAddressType { ipv4(1), ipv6(2) }
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrMapLocalAddrFrom
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrMapLocalAddrTo
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrMapGlobalAddrType
SYNTAX InetAddressType { ipv4(1), ipv6(2) }
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrMapGlobalAddrFrom
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrMapGlobalAddrTo
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrBindGlobalAddrType
SYNTAX InetAddressType { ipv4(1), ipv6(2) }
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrBindGlobalAddr
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrPortBindGlobalAddrType
SYNTAX InetAddressType { ipv4(1), ipv6(2) }
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natAddrPortBindGlobalAddr
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natSessionPrivateAddrType
SYNTAX InetAddressType { ipv4(1), ipv6(2) }
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natSessionPrivateSrcAddr
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natSessionPrivateDstAddr
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natSessionPublicAddrType
SYNTAX InetAddressType { ipv4(1), ipv6(2) }
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natSessionPublicSrcAddr
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
OBJECT natSessionPublicDstAddr
SYNTAX InetAddress (SIZE(4|16))
DESCRIPTION
"An implementation is required to support global IPv4
and/or IPv6 addresses, depending on its support
for IPv4 and IPv6."
::= { natMIBCompliances 1 }
natMIBReadOnlyCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"When this MIB is implemented without support for
read-create (i.e., in read-only mode), then such an
implementation can claim read-only compliance.
Such a device can then be monitored but cannot be
configured with this MIB.
The following index objects cannot be added as OBJECT
clauses but nevertheless have the compliance
requirements:
"
-- OBJECT natAddrBindLocalAddrType
-- SYNTAX InetAddressType { ipv4(1), ipv6(2) }
-- DESCRIPTION
-- "An implementation is required to support
-- global IPv4 and/or IPv6 addresses, depending
-- on its support for IPv4 and IPv6."
-- OBJECT natAddrBindLocalAddr
-- SYNTAX InetAddress (SIZE(4|16))
-- DESCRIPTION
-- "An implementation is required to support
-- global IPv4 and/or IPv6 addresses, depending
-- on its support for IPv4 and IPv6."
-- OBJECT natAddrPortBindLocalAddrType
-- SYNTAX InetAddressType { ipv4(1), ipv6(2) }
-- DESCRIPTION
-- "An implementation is required to support