TPLINK-IGMPSNOOPING-MIB DEFINITIONS ::= BEGIN IMPORTS OBJECT-TYPE,MODULE-IDENTITY,IpAddress FROM SNMPv2-SMI TPRowStatus FROM TPLINK-TC-MIB ifIndex FROM RFC1213-MIB tplinkMgmt FROM TPLINK-MIB; tplinkIgmpSnoopingMIB MODULE-IDENTITY LAST-UPDATED "201212141432Z" ORGANIZATION "TPLINK" CONTACT-INFO "www.tplink.com" DESCRIPTION "Private MIB for igmpSnooping manage." REVISION "201212141432Z" DESCRIPTION "Initial version of this MIB module." ::= { tplinkMgmt 25 } tplinkIgmpSnoopingMIBObjects OBJECT IDENTIFIER ::= {tplinkIgmpSnoopingMIB 1} tplinkIgmpSnoopingNotifications OBJECT IDENTIFIER ::= {tplinkIgmpSnoopingMIB 2} tpIgmpSnooping OBJECT IDENTIFIER ::= {tplinkIgmpSnoopingMIBObjects 1} tpIgmpFilter OBJECT IDENTIFIER ::= {tplinkIgmpSnoopingMIBObjects 2} tpIgmpAuth OBJECT IDENTIFIER ::= {tplinkIgmpSnoopingMIBObjects 3} tpIgmpPacketStatistic OBJECT IDENTIFIER ::= {tplinkIgmpSnoopingMIBObjects 4} tpIgmpMultigroup OBJECT IDENTIFIER ::= {tplinkIgmpSnoopingMIBObjects 5} tpIgmpStaticMultigroup OBJECT IDENTIFIER ::= {tplinkIgmpSnoopingMIBObjects 6} --************** --IGMP SNOOPING --************** tpIgmpSnoopingGlobalConfig OBJECT IDENTIFIER ::= {tpIgmpSnooping 1} tpIgmpSnoopingEnable OBJECT-TYPE SYNTAX INTEGER{ disable(0), --disable enable(1) --enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable IGMP Snooping function globally on the Switch. 0. disable 1. enable" ::= { tpIgmpSnoopingGlobalConfig 1 } tpIgmpSnoopingVersion OBJECT-TYPE SYNTAX INTEGER{ igmpv1(0), --V1 igmpv2(1), --V2 igmpv3(2) --V3 } MAX-ACCESS read-write STATUS current DESCRIPTION "Select the operation for the switch to process config the igmp version. 0. IGMPv1 1. IGMPv2 2. IGMPv3" ::= { tpIgmpSnoopingGlobalConfig 2 } tpUnknownMulticastPacket OBJECT-TYPE SYNTAX INTEGER{ forward(0), --forward discard(1) --discard } MAX-ACCESS read-write STATUS current DESCRIPTION "Select the operation for the switch to process unknown multicast. 0. forward 1. discard" ::= { tpIgmpSnoopingGlobalConfig 3 } tpIgmpHeaderValidation OBJECT-TYPE SYNTAX INTEGER{ disable(0), --disable enable(1) --enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable IGMP Snooping header validation on the Switch. 0. disable 1. enable" ::= { tpIgmpSnoopingGlobalConfig 4 } tpIgmpPortConfig OBJECT IDENTIFIER ::= {tpIgmpSnooping 2} tpIgmpPortTable OBJECT-TYPE SYNTAX SEQUENCE OF TPIGMPPORTENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "IGMP Snooping (Internet Group Management Protocol Snooping) is a multicast control mechanism running on Layer 2 switch. It can effectively prevent multicast groups being broadcasted in the network." ::= { tpIgmpPortConfig 1 } tpIgmpPortEntry OBJECT-TYPE SYNTAX TPIGMPPORTENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains of the information of port configure." INDEX { ifIndex } ::= { tpIgmpPortTable 1 } TPIGMPPORTENTRY ::= SEQUENCE { tpIgmpSnoopingPortEnable INTEGER, tpIgmpFastLeavePortEnable INTEGER, tpIgmpPortLag OCTET STRING } tpIgmpSnoopingPortEnable OBJECT-TYPE SYNTAX INTEGER{ disable(0), --Disable enable(1) --Enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable IGMP Snooping for the desired port. 0. Disable 1. Enable" ::= { tpIgmpPortEntry 2 } tpIgmpFastLeavePortEnable OBJECT-TYPE SYNTAX INTEGER{ disable(0), --Disable enable(1) --Enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable Fast Leave feature for the desired port. If Fast Leave is enabled for a port, the Switch will immediately remove this port from the multicast group upon receiving IGMP leave messages. 0. Disable 1. Enable" ::= { tpIgmpPortEntry 3 } tpIgmpPortLag OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the LAG number which the port belongs to." ::= { tpIgmpPortEntry 4 } tpIgmpVlanConfig OBJECT IDENTIFIER ::= {tpIgmpSnooping 3} tpIgmpVlanTable OBJECT-TYPE SYNTAX SEQUENCE OF TPIGMPVLANENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "Multicast groups established by IGMP Snooping are based on VLANs. You can configure different IGMP parameters for different VLANs. " ::= { tpIgmpVlanConfig 1 } tpIgmpVlanEntry OBJECT-TYPE SYNTAX TPIGMPVLANENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains of the information of igmpsnooping." INDEX {tpIgmpVlanId} ::= { tpIgmpVlanTable 1 } TPIGMPVLANENTRY ::= SEQUENCE { tpIgmpVlanId INTEGER, tpIgmpVlanEnable INTEGER, tpIgmpVlanFastLeave INTEGER, tpIgmpVlanReportSuppression INTEGER, tpIgmpRouterTime INTEGER, tpIgmpMemberTime INTEGER, tpIgmpLeaveTime INTEGER, tpIgmpRouterPort OCTET STRING, tpIgmpForbiddenRouterPort OCTET STRING, tpIgmpQueryEnable INTEGER, tpIgmpQueryInterval INTEGER, tpIgmpQueryMaxResponseTime INTEGER, tpIgmpQueryGeneralSrcIp IpAddress, tpIgmpQueryLastMemberCount INTEGER, tpIgmpQueryLastMemberInterval INTEGER, tpIgmpVlanStatus TPRowStatus } tpIgmpVlanId OBJECT-TYPE SYNTAX INTEGER (1..4094) MAX-ACCESS read-only STATUS current DESCRIPTION "Enter the VLAN ID to enable IGMP Snooping for the desired VLAN,1-4094." ::= { tpIgmpVlanEntry 1 } tpIgmpVlanEnable OBJECT-TYPE SYNTAX INTEGER{ disable(0), --Disable enable(1) --Enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable IGMP Snooping for the desired vlan. 0. Disable 1. Enable" ::= { tpIgmpVlanEntry 2 } tpIgmpVlanFastLeave OBJECT-TYPE SYNTAX INTEGER{ disable(0), --Disable enable(1) --Enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable Fast Leave feature for the desired vlan. If Fast Leave is enabled for a vlan, the Switch will immediately remove this port from the multicast group upon receiving IGMP leave messages. 0. Disable 1. Enable" ::= { tpIgmpVlanEntry 3 } tpIgmpVlanReportSuppression OBJECT-TYPE SYNTAX INTEGER{ disable(0), --Disable enable(1) --Enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable IGMP Snooping report suppression function globally on the Switch. 0. Disable 1. Enable" ::= { tpIgmpVlanEntry 4 } tpIgmpRouterTime OBJECT-TYPE SYNTAX INTEGER(60..600) MAX-ACCESS read-create STATUS current DESCRIPTION "Specify the aging time of the router port. Within this time, if the switch don't receive IGMP query message from the router port, it will consider this port is not a router port any more,0,60-600 second." ::= { tpIgmpVlanEntry 5 } tpIgmpMemberTime OBJECT-TYPE SYNTAX INTEGER(60..600) MAX-ACCESS read-create STATUS current DESCRIPTION "Specify the aging time of the member port. Within this time, if the switch don't receive IGMP report message from the member port, it will consider this port is not a member port any more,0,60-600 second." ::= { tpIgmpVlanEntry 6} tpIgmpLeaveTime OBJECT-TYPE SYNTAX INTEGER(1..30) MAX-ACCESS read-create STATUS current DESCRIPTION "Specify the leave time for the VLAN. When the switch receives a leave message from a port to leave a multicast group, it will wait for a leave time before removing the port from the multicast group." ::= { tpIgmpVlanEntry 7} tpIgmpRouterPort OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-create STATUS current DESCRIPTION "Config the static router ports which are mainly used in the network with stable topology." ::= { tpIgmpVlanEntry 8 } tpIgmpForbiddenRouterPort OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-create STATUS current DESCRIPTION "Config the forbidden router ports which are mainly used to forbidden specified ports to become router ports." ::= { tpIgmpVlanEntry 9 } tpIgmpQueryEnable OBJECT-TYPE SYNTAX INTEGER{ disable(0), --Disable enable(1) --Enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable IGMP Querier. 0. Disable 1. Enable" ::= { tpIgmpVlanEntry 10 } tpIgmpQueryInterval OBJECT-TYPE SYNTAX INTEGER(10..300) MAX-ACCESS read-create STATUS current DESCRIPTION "Enter the Query message interval time. The Querier will send General Query Message with this interval. The interval is ranging from 10 to 300 seconds." ::= { tpIgmpVlanEntry 11 } tpIgmpQueryMaxResponseTime OBJECT-TYPE SYNTAX INTEGER(1..25) MAX-ACCESS read-create STATUS current DESCRIPTION "Enter the value of Maximum Response Time field of the Query message. The host is expected to response to an IGMP general query within this time. The time is ranging from 1 to 25 seconds." ::= { tpIgmpVlanEntry 12} tpIgmpQueryGeneralSrcIp OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-create STATUS current DESCRIPTION "Enter the General Query Message source IP address." ::= { tpIgmpVlanEntry 13} tpIgmpQueryLastMemberCount OBJECT-TYPE SYNTAX INTEGER(1..5) MAX-ACCESS read-create STATUS current DESCRIPTION "Enter the Last Listener Query numbers. When the multicast group has no more member ports, it will send this numbers of Specific Query Message to check whether there is another member. It is ranging from 1 to 5." ::= { tpIgmpVlanEntry 14} tpIgmpQueryLastMemberInterval OBJECT-TYPE SYNTAX INTEGER(1..5) MAX-ACCESS read-create STATUS current DESCRIPTION "Enter the Last Listener Query interval time. When the multicast group has no more member ports, it will send the Specific Query Message with this interval time to check whether there is another member. The interval is ranging from 1 to 5 seconds." ::= { tpIgmpVlanEntry 15} tpIgmpVlanStatus OBJECT-TYPE SYNTAX TPRowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "the following two values are states: these values may be read or written active(1), notInService(2), the following value is a state: this value may be read, but not written notReady(3), the following three values are actions: these values may be written, but are never read createAndGo(4), createAndWait(5), destroy(6)" ::= { tpIgmpVlanEntry 16 } --************** --IGMP FILTER --************** tpIgmpPortFilterConfig OBJECT IDENTIFIER ::= { tpIgmpFilter 1 } tpIgmpFilterPortTable OBJECT-TYPE SYNTAX SEQUENCE OF TPIGMPFILTERPORTENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "When the switch receives IGMP report message, it examines the multicast filtering IP ID configured on the access port to determine if the port can join the multicast group. If the multicast IP is not filtered, the switch will add the port to the forward port list of the multicast group. Otherwise, the switch will drop the IGMP report message. In that way, you can control the multicast groups that users can access." ::= { tpIgmpPortFilterConfig 1 } tpIgmpFilterPortEntry OBJECT-TYPE SYNTAX TPIGMPFILTERPORTENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains of the information of a port param." INDEX { ifIndex } ::= { tpIgmpFilterPortTable 1 } TPIGMPFILTERPORTENTRY ::= SEQUENCE { tpIgmpFilterMaxGroup INTEGER, tpIgmpFilterMaxGroupAction INTEGER, tpIgmpFilterBindAddrId OCTET STRING, tpIgmpFilterPortLag OCTET STRING } tpIgmpFilterMaxGroup OBJECT-TYPE SYNTAX INTEGER(0..1000) MAX-ACCESS read-write STATUS current DESCRIPTION "Specify the maximum number of multicast groups to prevent some ports taking up too much bandwidth." ::= { tpIgmpFilterPortEntry 2 } tpIgmpFilterMaxGroupAction OBJECT-TYPE SYNTAX INTEGER{ drop(0), --Drop replace(1) --Replace } MAX-ACCESS read-write STATUS current DESCRIPTION "The policy should be taken when the number of multicast group a port has joined reach the maximum. 0.Drop: drop the successive report packet, and this port can not join any other multicast group. 1.Replace: when the port joins another new multicast group,it will quit the existing multicast group randomly." ::= { tpIgmpFilterPortEntry 3 } tpIgmpFilterBindAddrId OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..3)) MAX-ACCESS read-write STATUS current DESCRIPTION "Enter the profile ID the port will be bound to. Only one profile can be bound to each port." ::= { tpIgmpFilterPortEntry 4 } tpIgmpFilterPortLag OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the LAG number which the port belongs to." ::= { tpIgmpFilterPortEntry 5 } --******************** --IGMP Authentication --******************** tpIgmpPortAuthConfig OBJECT IDENTIFIER ::= { tpIgmpAuth 1 } tpIgmpAuthPortTable OBJECT-TYPE SYNTAX SEQUENCE OF TPIGMPAUTHPORTENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "IGMP Authentication can control the access of multicast packets." ::= { tpIgmpPortAuthConfig 1 } tpIgmpAuthPortEntry OBJECT-TYPE SYNTAX TPIGMPAUTHPORTENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains of the information of port authentication configure." INDEX { ifIndex } ::= { tpIgmpAuthPortTable 1 } TPIGMPAUTHPORTENTRY ::= SEQUENCE { tpIgmpAuthEnable INTEGER, tpIgmpAuthPortLag OCTET STRING } tpIgmpAuthEnable OBJECT-TYPE SYNTAX INTEGER{ disable(0), --Disable enable(1) --Enable } MAX-ACCESS read-write STATUS current DESCRIPTION "Select Enable/Disable IGMP Authentication for the desired port. 0. Disable 1. Enable" ::= { tpIgmpAuthPortEntry 2 } tpIgmpAuthPortLag OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..255)) MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the LAG number which the port belongs to." ::= { tpIgmpAuthPortEntry 3 } tpIgmpGlobalAuthAccountConfig OBJECT IDENTIFIER ::= {tpIgmpAuth 2} tpIgmpGlobalAuthAccountConfigEable OBJECT-TYPE SYNTAX INTEGER{ disable(0), enable(1) } MAX-ACCESS read-write STATUS current DESCRIPTION "0. disable 1. enable Enable/Disable the IGMP Authentication Accounting." ::= { tpIgmpGlobalAuthAccountConfig 1 } --************** --PACKET STAT --************** tpIgmpPktStat OBJECT IDENTIFIER ::= { tpIgmpPacketStatistic 1 } tpIgmpPktStatTable OBJECT-TYPE SYNTAX SEQUENCE OF TPIGMPPKTSTATENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of multicast statistic Table." ::= { tpIgmpPktStat 1 } tpIgmpPktStatEntry OBJECT-TYPE SYNTAX TPIGMPPKTSTATENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains of multicast packet statistics over each port." INDEX { ifIndex } ::= { tpIgmpPktStatTable 1 } TPIGMPPKTSTATENTRY ::= SEQUENCE { tpIgmpQueryPktStat INTEGER, tpIgmpReportV1PktStat INTEGER, tpIgmpReportV2PktStat INTEGER, tpIgmpReportV3PktStat INTEGER, tpIgmpLeavePktStat INTEGER, tpIgmpErrorPktStat INTEGER } tpIgmpQueryPktStat OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the number of query packets the port received." ::= { tpIgmpPktStatEntry 2 } tpIgmpReportV1PktStat OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the number of IGMPv1 report packets the port received." ::= { tpIgmpPktStatEntry 3 } tpIgmpReportV2PktStat OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the number of IGMPv2 report packets the port received." ::= { tpIgmpPktStatEntry 4 } tpIgmpReportV3PktStat OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the number of IGMPv3 report packets the port received." ::= { tpIgmpPktStatEntry 5 } tpIgmpLeavePktStat OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the number of leave packets the port received." ::= { tpIgmpPktStatEntry 6 } tpIgmpErrorPktStat OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the number of error packets the port received." ::= { tpIgmpPktStatEntry 7 } tpIpIgmpPktStatClear OBJECT-TYPE SYNTAX INTEGER { commit(1) } MAX-ACCESS read-write STATUS current DESCRIPTION "igmp packet statistic clear." ::= { tpIgmpPktStat 2 } --************** --GROUP SHOW --************** tpIgmpMulticastGroups OBJECT IDENTIFIER ::= { tpIgmpMultigroup 1 } tpIgmpMulticastGroupTable OBJECT-TYPE SYNTAX SEQUENCE OF TPIGMPMULTICASTGROUPENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of multicast groups Table." ::= { tpIgmpMulticastGroups 1 } tpIgmpMulticastGroupEntry OBJECT-TYPE SYNTAX TPIGMPMULTICASTGROUPENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains of multicast packet statistics over each port." INDEX { tpIgmpMulticastIP , tpIgmpVlanID} ::= { tpIgmpMulticastGroupTable 1 } TPIGMPMULTICASTGROUPENTRY ::= SEQUENCE { tpIgmpMulticastIP IpAddress, tpIgmpVlanID INTEGER, tpIgmpForwardPorts OCTET STRING, tpIgmpGrouptype INTEGER } tpIgmpMulticastIP OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the multicast IP address." ::= { tpIgmpMulticastGroupEntry 1 } tpIgmpVlanID OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the VLAN ID." ::= { tpIgmpMulticastGroupEntry 2 } tpIgmpForwardPorts OBJECT-TYPE SYNTAX OCTET STRING(SIZE (0..50)) MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the forward ports of multicast group." ::= { tpIgmpMulticastGroupEntry 3 } tpIgmpGrouptype OBJECT-TYPE SYNTAX INTEGER{ static(0), dynamic(1) } MAX-ACCESS read-only STATUS current DESCRIPTION "Displays the type of multicast group." ::= { tpIgmpMulticastGroupEntry 4 } --************** --STATIC GROUP --************** tpIgmpMulticastStaticGroups OBJECT IDENTIFIER ::= { tpIgmpStaticMultigroup 1 } tpIgmpMulticastStaticGroupTable OBJECT-TYPE SYNTAX SEQUENCE OF TPIGMPMULTICASTSTATICGROUPENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of multicast groups Table." ::= { tpIgmpMulticastStaticGroups 1 } tpIgmpMulticastStaticGroupEntry OBJECT-TYPE SYNTAX TPIGMPMULTICASTSTATICGROUPENTRY MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry contains of multicast packet statistics over each port." INDEX { tpIgmpStaticMulticastIP , tpIgmpStaticVlanID } ::= { tpIgmpMulticastStaticGroupTable 1 } TPIGMPMULTICASTSTATICGROUPENTRY ::= SEQUENCE { tpIgmpStaticMulticastIP IpAddress, tpIgmpStaticVlanID INTEGER, tpIgmpStaticForwardPorts OCTET STRING, tpIgmpStaticGroupStatus TPRowStatus } tpIgmpStaticMulticastIP OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The multicast IP address." ::= { tpIgmpMulticastStaticGroupEntry 1 } tpIgmpStaticVlanID OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "The VLAN ID." ::= { tpIgmpMulticastStaticGroupEntry 2 } tpIgmpStaticForwardPorts OBJECT-TYPE SYNTAX OCTET STRING(SIZE (0..50)) MAX-ACCESS read-create STATUS current DESCRIPTION "The forward ports of multicast group." ::= { tpIgmpMulticastStaticGroupEntry 3 } tpIgmpStaticGroupStatus OBJECT-TYPE SYNTAX TPRowStatus MAX-ACCESS read-create STATUS current DESCRIPTION " The following values are states: these values may be used as follow: active(1),if the entry is being used. notInService(2),destory the entry. notReady(3),destory the entry. createAndGo(4),not being used createAndWait(5),creat a new entry destroy(6),destory the entry." ::= { tpIgmpMulticastStaticGroupEntry 4 } END