Check Incoming Requests
This scenario shows how to configure a user to receive incoming requests in SNMPv3 using VRFs.
In addition, the SNMP walk
and table
commands are checked.
Test SNMP Walk With VRFs
Description
Using VRFs, a user is configured in DUT0 and the walk
command is used to check incoming requests in SNMPv3.
Scenario
Step 1: Set the following configuration in DUT0
:
set interfaces ethernet eth0 address 10.0.0.1/24 set interfaces ethernet eth0 vrf A set service snmp user USER2TEST set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0' set system vrf A
Step 2: Set the following configuration in DUT1
:
set interfaces ethernet eth0 address 10.0.0.2/24 set interfaces ethernet eth0 vrf B set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0' set system vrf B
Note
First, remote walk
requests shouldn’t work because no information has been specifed in DUT1 about where to route the requests.
Step 3: Run command service snmp walk remote-agent 10.0.0.1 v3 USER2TEST oid ifTable
at DUT1
and check if output does not match the following regular expressions:
::ifDescr\.1 = STRING: "?lo"?Show output
snmpbulkwalk: Unknown engine ID (Sub-id not found: (top) -> ifTable) (Network is unreachable)
Note
Remote walk
requests also shouldn’t work because no information has been specified in DUT0 about where to route responses.
Step 4: Run command service snmp walk remote-agent 10.0.0.1 v3 USER2TEST vrf B oid ifTable
at DUT1
and check if output does not match the following regular expressions:
::ifDescr\.1 = STRING: "?lo"?Show output
snmpbulkwalk: Timeout (Sub-id not found: (top) -> ifTable)
Note
After setting the VRF in DUT0, remote walk
requests shouldn’t work until information on where to route the requests is specified in DUT1.
Step 5: Modify the following configuration lines in DUT0
:
set service snmp local-vrf A
Step 6: Run command service snmp walk remote-agent 10.0.0.1 v3 USER2TEST oid ifTable
at DUT1
and check if output does not match the following regular expressions:
::ifDescr\.1 = STRING: "?lo"?Show output
snmpbulkwalk: Unknown engine ID (Sub-id not found: (top) -> ifTable) (Network is unreachable)
Step 7: Run command service snmp walk remote-agent 10.0.0.1 v3 USER2TEST vrf B oid ifTable
at DUT1
and check if output matches the following regular expressions:
::ifDescr\.1 = STRING: "?lo"?Show output
IF-MIB::ifIndex.1 = INTEGER: 1 IF-MIB::ifIndex.2 = INTEGER: 2 IF-MIB::ifIndex.3 = INTEGER: 3 IF-MIB::ifIndex.4 = INTEGER: 4 IF-MIB::ifIndex.60 = INTEGER: 60 IF-MIB::ifIndex.61 = INTEGER: 61 IF-MIB::ifIndex.62 = INTEGER: 62 IF-MIB::ifIndex.322 = INTEGER: 322 IF-MIB::ifIndex.325 = INTEGER: 325 IF-MIB::ifIndex.327 = INTEGER: 327 IF-MIB::ifIndex.513 = INTEGER: 513 IF-MIB::ifDescr.1 = STRING: lo IF-MIB::ifDescr.2 = STRING: eth0 IF-MIB::ifDescr.3 = STRING: eth1 IF-MIB::ifDescr.4 = STRING: ip_vti0 IF-MIB::ifDescr.60 = STRING: gre0 IF-MIB::ifDescr.61 = STRING: gretap0 IF-MIB::ifDescr.62 = STRING: erspan0 IF-MIB::ifDescr.322 = STRING: tunl0 IF-MIB::ifDescr.325 = STRING: ip6tnl0 IF-MIB::ifDescr.327 = STRING: sit0 IF-MIB::ifDescr.513 = STRING: A IF-MIB::ifType.1 = INTEGER: softwareLoopback(24) IF-MIB::ifType.2 = INTEGER: ethernetCsmacd(6) IF-MIB::ifType.3 = INTEGER: ethernetCsmacd(6) IF-MIB::ifType.4 = INTEGER: tunnel(131) IF-MIB::ifType.60 = INTEGER: tunnel(131) IF-MIB::ifType.61 = INTEGER: ethernetCsmacd(6) IF-MIB::ifType.62 = INTEGER: ethernetCsmacd(6) IF-MIB::ifType.322 = INTEGER: tunnel(131) IF-MIB::ifType.325 = INTEGER: tunnel(131) IF-MIB::ifType.327 = INTEGER: tunnel(131) IF-MIB::ifType.513 = INTEGER: ethernetCsmacd(6) IF-MIB::ifMtu.1 = INTEGER: 65536 IF-MIB::ifMtu.2 = INTEGER: 1500 IF-MIB::ifMtu.3 = INTEGER: 1500 IF-MIB::ifMtu.4 = INTEGER: 1480 IF-MIB::ifMtu.60 = INTEGER: 1476 IF-MIB::ifMtu.61 = INTEGER: 1462 IF-MIB::ifMtu.62 = INTEGER: 1450 IF-MIB::ifMtu.322 = INTEGER: 1480 IF-MIB::ifMtu.325 = INTEGER: 1452 IF-MIB::ifMtu.327 = INTEGER: 1480 IF-MIB::ifMtu.513 = INTEGER: 65575 IF-MIB::ifSpeed.1 = Gauge32: 10000000 IF-MIB::ifSpeed.2 = Gauge32: 0 IF-MIB::ifSpeed.3 = Gauge32: 0 IF-MIB::ifSpeed.4 = Gauge32: 0 IF-MIB::ifSpeed.60 = Gauge32: 0 IF-MIB::ifSpeed.61 = Gauge32: 0 IF-MIB::ifSpeed.62 = Gauge32: 0 IF-MIB::ifSpeed.322 = Gauge32: 0 IF-MIB::ifSpeed.325 = Gauge32: 0 IF-MIB::ifSpeed.327 = Gauge32: 0 IF-MIB::ifSpeed.513 = Gauge32: 0 IF-MIB::ifPhysAddress.1 = STRING: IF-MIB::ifPhysAddress.2 = STRING: de:ad:be:ef:6c:10 IF-MIB::ifPhysAddress.3 = STRING: de:ad:be:ef:6c:11 IF-MIB::ifPhysAddress.4 = STRING: IF-MIB::ifPhysAddress.60 = STRING: IF-MIB::ifPhysAddress.61 = STRING: IF-MIB::ifPhysAddress.62 = STRING: IF-MIB::ifPhysAddress.322 = STRING: IF-MIB::ifPhysAddress.325 = STRING: IF-MIB::ifPhysAddress.327 = STRING: IF-MIB::ifPhysAddress.513 = STRING: 72:ef:e7:a8:58:fb IF-MIB::ifAdminStatus.1 = INTEGER: up(1) IF-MIB::ifAdminStatus.2 = INTEGER: up(1) IF-MIB::ifAdminStatus.3 = INTEGER: down(2) IF-MIB::ifAdminStatus.4 = INTEGER: down(2) IF-MIB::ifAdminStatus.60 = INTEGER: down(2) IF-MIB::ifAdminStatus.61 = INTEGER: down(2) IF-MIB::ifAdminStatus.62 = INTEGER: down(2) IF-MIB::ifAdminStatus.322 = INTEGER: down(2) IF-MIB::ifAdminStatus.325 = INTEGER: down(2) IF-MIB::ifAdminStatus.327 = INTEGER: down(2) IF-MIB::ifAdminStatus.513 = INTEGER: up(1) IF-MIB::ifOperStatus.1 = INTEGER: up(1) IF-MIB::ifOperStatus.2 = INTEGER: up(1) IF-MIB::ifOperStatus.3 = INTEGER: down(2) IF-MIB::ifOperStatus.4 = INTEGER: down(2) IF-MIB::ifOperStatus.60 = INTEGER: down(2) IF-MIB::ifOperStatus.61 = INTEGER: down(2) IF-MIB::ifOperStatus.62 = INTEGER: down(2) IF-MIB::ifOperStatus.322 = INTEGER: down(2) IF-MIB::ifOperStatus.325 = INTEGER: down(2) IF-MIB::ifOperStatus.327 = INTEGER: down(2) IF-MIB::ifOperStatus.513 = INTEGER: up(1) IF-MIB::ifLastChange.1 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.2 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.3 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.4 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.60 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.61 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.62 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.322 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.325 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.327 = Timeticks: (0) 0:00:00.00 IF-MIB::ifLastChange.513 = Timeticks: (0) 0:00:00.00 IF-MIB::ifInOctets.1 = Counter32: 1167979 IF-MIB::ifInOctets.2 = Counter32: 819066418 IF-MIB::ifInOctets.3 = Counter32: 63134759 IF-MIB::ifInOctets.4 = Counter32: 0 IF-MIB::ifInOctets.60 = Counter32: 0 IF-MIB::ifInOctets.61 = Counter32: 0 IF-MIB::ifInOctets.62 = Counter32: 0 IF-MIB::ifInOctets.322 = Counter32: 0 IF-MIB::ifInOctets.325 = Counter32: 0 IF-MIB::ifInOctets.327 = Counter32: 0 IF-MIB::ifInOctets.513 = Counter32: 720 IF-MIB::ifInUcastPkts.1 = Counter32: 0 IF-MIB::ifInUcastPkts.2 = Counter32: 0 IF-MIB::ifInUcastPkts.3 = Counter32: 0 IF-MIB::ifInUcastPkts.4 = Counter32: 0 IF-MIB::ifInUcastPkts.60 = Counter32: 0 IF-MIB::ifInUcastPkts.61 = Counter32: 0 IF-MIB::ifInUcastPkts.62 = Counter32: 0 IF-MIB::ifInUcastPkts.322 = Counter32: 0 IF-MIB::ifInUcastPkts.325 = Counter32: 0 IF-MIB::ifInUcastPkts.327 = Counter32: 0 IF-MIB::ifInUcastPkts.513 = Counter32: 0 IF-MIB::ifInNUcastPkts.1 = Counter32: 0 IF-MIB::ifInNUcastPkts.2 = Counter32: 0 IF-MIB::ifInNUcastPkts.3 = Counter32: 0 IF-MIB::ifInNUcastPkts.4 = Counter32: 0 IF-MIB::ifInNUcastPkts.60 = Counter32: 0 IF-MIB::ifInNUcastPkts.61 = Counter32: 0 IF-MIB::ifInNUcastPkts.62 = Counter32: 0 IF-MIB::ifInNUcastPkts.322 = Counter32: 0 IF-MIB::ifInNUcastPkts.325 = Counter32: 0 IF-MIB::ifInNUcastPkts.327 = Counter32: 0 IF-MIB::ifInNUcastPkts.513 = Counter32: 0 IF-MIB::ifInDiscards.1 = Counter32: 0 IF-MIB::ifInDiscards.2 = Counter32: 181 IF-MIB::ifInDiscards.3 = Counter32: 0 IF-MIB::ifInDiscards.4 = Counter32: 0 IF-MIB::ifInDiscards.60 = Counter32: 0 IF-MIB::ifInDiscards.61 = Counter32: 0 IF-MIB::ifInDiscards.62 = Counter32: 0 IF-MIB::ifInDiscards.322 = Counter32: 0 IF-MIB::ifInDiscards.325 = Counter32: 0 IF-MIB::ifInDiscards.327 = Counter32: 0 IF-MIB::ifInDiscards.513 = Counter32: 0 IF-MIB::ifInErrors.1 = Counter32: 0 IF-MIB::ifInErrors.2 = Counter32: 0 IF-MIB::ifInErrors.3 = Counter32: 0 IF-MIB::ifInErrors.4 = Counter32: 0 IF-MIB::ifInErrors.60 = Counter32: 0 IF-MIB::ifInErrors.61 = Counter32: 0 IF-MIB::ifInErrors.62 = Counter32: 0 IF-MIB::ifInErrors.322 = Counter32: 0 IF-MIB::ifInErrors.325 = Counter32: 0 IF-MIB::ifInErrors.327 = Counter32: 0 IF-MIB::ifInErrors.513 = Counter32: 0 IF-MIB::ifInUnknownProtos.1 = Counter32: 0 IF-MIB::ifInUnknownProtos.2 = Counter32: 0 IF-MIB::ifInUnknownProtos.3 = Counter32: 0 IF-MIB::ifInUnknownProtos.4 = Counter32: 0 IF-MIB::ifInUnknownProtos.60 = Counter32: 0 IF-MIB::ifInUnknownProtos.61 = Counter32: 0 IF-MIB::ifInUnknownProtos.62 = Counter32: 0 IF-MIB::ifInUnknownProtos.322 = Counter32: 0 IF-MIB::ifInUnknownProtos.325 = Counter32: 0 IF-MIB::ifInUnknownProtos.327 = Counter32: 0 IF-MIB::ifInUnknownProtos.513 = Counter32: 0 IF-MIB::ifOutOctets.1 = Counter32: 1167979 IF-MIB::ifOutOctets.2 = Counter32: 2176999578 IF-MIB::ifOutOctets.3 = Counter32: 99678486 IF-MIB::ifOutOctets.4 = Counter32: 0 IF-MIB::ifOutOctets.60 = Counter32: 0 IF-MIB::ifOutOctets.61 = Counter32: 0 IF-MIB::ifOutOctets.62 = Counter32: 0 IF-MIB::ifOutOctets.322 = Counter32: 0 IF-MIB::ifOutOctets.325 = Counter32: 0 IF-MIB::ifOutOctets.327 = Counter32: 0 IF-MIB::ifOutOctets.513 = Counter32: 0 IF-MIB::ifOutUcastPkts.1 = Counter32: 8933 IF-MIB::ifOutUcastPkts.2 = Counter32: 4889187 IF-MIB::ifOutUcastPkts.3 = Counter32: 3536298 IF-MIB::ifOutUcastPkts.4 = Counter32: 0 IF-MIB::ifOutUcastPkts.60 = Counter32: 0 IF-MIB::ifOutUcastPkts.61 = Counter32: 0 IF-MIB::ifOutUcastPkts.62 = Counter32: 0 IF-MIB::ifOutUcastPkts.322 = Counter32: 0 IF-MIB::ifOutUcastPkts.325 = Counter32: 0 IF-MIB::ifOutUcastPkts.327 = Counter32: 0 IF-MIB::ifOutUcastPkts.513 = Counter32: 0 IF-MIB::ifOutNUcastPkts.1 = Counter32: 0 IF-MIB::ifOutNUcastPkts.2 = Counter32: 0 IF-MIB::ifOutNUcastPkts.3 = Counter32: 0 IF-MIB::ifOutNUcastPkts.4 = Counter32: 0 IF-MIB::ifOutNUcastPkts.60 = Counter32: 0 IF-MIB::ifOutNUcastPkts.61 = Counter32: 0 IF-MIB::ifOutNUcastPkts.62 = Counter32: 0 IF-MIB::ifOutNUcastPkts.322 = Counter32: 0 IF-MIB::ifOutNUcastPkts.325 = Counter32: 0 IF-MIB::ifOutNUcastPkts.327 = Counter32: 0 IF-MIB::ifOutNUcastPkts.513 = Counter32: 0 IF-MIB::ifOutDiscards.1 = Counter32: 0 IF-MIB::ifOutDiscards.2 = Counter32: 0 IF-MIB::ifOutDiscards.3 = Counter32: 0 IF-MIB::ifOutDiscards.4 = Counter32: 0 IF-MIB::ifOutDiscards.60 = Counter32: 0 IF-MIB::ifOutDiscards.61 = Counter32: 0 IF-MIB::ifOutDiscards.62 = Counter32: 0 IF-MIB::ifOutDiscards.322 = Counter32: 0 IF-MIB::ifOutDiscards.325 = Counter32: 0 IF-MIB::ifOutDiscards.327 = Counter32: 0 IF-MIB::ifOutDiscards.513 = Counter32: 0 IF-MIB::ifOutErrors.1 = Counter32: 0 IF-MIB::ifOutErrors.2 = Counter32: 0 IF-MIB::ifOutErrors.3 = Counter32: 0 IF-MIB::ifOutErrors.4 = Counter32: 0 IF-MIB::ifOutErrors.60 = Counter32: 0 IF-MIB::ifOutErrors.61 = Counter32: 0 IF-MIB::ifOutErrors.62 = Counter32: 0 IF-MIB::ifOutErrors.322 = Counter32: 0 IF-MIB::ifOutErrors.325 = Counter32: 0 IF-MIB::ifOutErrors.327 = Counter32: 0 IF-MIB::ifOutErrors.513 = Counter32: 0 IF-MIB::ifOutQLen.1 = Gauge32: 0 IF-MIB::ifOutQLen.2 = Gauge32: 0 IF-MIB::ifOutQLen.3 = Gauge32: 0 IF-MIB::ifOutQLen.4 = Gauge32: 0 IF-MIB::ifOutQLen.60 = Gauge32: 0 IF-MIB::ifOutQLen.61 = Gauge32: 0 IF-MIB::ifOutQLen.62 = Gauge32: 0 IF-MIB::ifOutQLen.322 = Gauge32: 0 IF-MIB::ifOutQLen.325 = Gauge32: 0 IF-MIB::ifOutQLen.327 = Gauge32: 0 IF-MIB::ifOutQLen.513 = Gauge32: 0 IF-MIB::ifSpecific.1 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.2 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.3 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.4 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.60 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.61 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.62 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.322 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.325 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.327 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.513 = OID: SNMPv2-SMI::zeroDotZero
Test SNMP Table With VRFs
Description
Using VRFs, a user is configured in DUT0 and the table
command is used to check incoming requests in SNMPv3.
Scenario
Step 1: Set the following configuration in DUT0
:
set interfaces ethernet eth0 address 10.0.0.1/24 set interfaces ethernet eth0 vrf A set service snmp user USER2TEST set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0' set system vrf A
Step 2: Set the following configuration in DUT1
:
set interfaces ethernet eth0 address 10.0.0.2/24 set interfaces ethernet eth0 vrf B set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0' set system vrf B
Note
First, remote table
requests shouldn’t work because no information has been specified in DUT1 about where to route the requests.
Step 3: Run command service snmp table remote-agent 10.0.0.1 v3 USER2TEST oid ifTable
at DUT1
and check if output does not match the following regular expressions:
SNMP table:.*::ifTableShow output
snmptable: Unknown engine ID (Sub-id not found: (top) -> ifTable) (Network is unreachable)
Note
Remote table
requests should also not work because no information has been specified in DUT0 about where to route responses.
Step 4: Run command service snmp table remote-agent 10.0.0.1 v3 USER2TEST vrf B oid ifTable
at DUT1
and check if output does not match the following regular expressions:
SNMP table:.*::ifTableShow output
snmptable: Timeout (Sub-id not found: (top) -> ifTable)
Note
After setting the VRF in DUT0, remote table
requests shouldn’t work until the information on where to route the requests is specified in DUT1.
Step 5: Modify the following configuration lines in DUT0
:
set service snmp local-vrf A
Step 6: Run command service snmp table remote-agent 10.0.0.1 v3 USER2TEST oid ifTable
at DUT1
and check if output does not match the following regular expressions:
SNMP table:.*::ifTableShow output
snmptable: Unknown engine ID (Sub-id not found: (top) -> ifTable) (Network is unreachable)
Step 7: Run command service snmp table remote-agent 10.0.0.1 v3 USER2TEST vrf B oid ifTable
at DUT1
and check if output matches the following regular expressions:
SNMP table:.*::ifTableShow output
SNMP table: IF-MIB::ifTable ifIndex ifDescr ifType ifMtu ifSpeed ifPhysAddress ifAdminStatus ifOperStatus 1 lo softwareLoopback 65536 10000000 up up 2 eth0 ethernetCsmacd 1500 0 de:ad:be:ef:6c:10 up up 3 eth1 ethernetCsmacd 1500 0 de:ad:be:ef:6c:11 down down 4 ip_vti0 tunnel 1480 0 down down 60 gre0 tunnel 1476 0 down down 61 gretap0 ethernetCsmacd 1462 0 down down 62 erspan0 ethernetCsmacd 1450 0 down down 322 tunl0 tunnel 1480 0 down down 325 ip6tnl0 tunnel 1452 0 down down 327 sit0 tunnel 1480 0 down down 514 A ethernetCsmacd 65575 0 7a:a1:b:c1:66:76 up up SNMP table IF-MIB::ifTable, part 2 ifLastChange ifInOctets ifInUcastPkts ifInNUcastPkts ifInDiscards ifInErrors ifInUnknownProtos 0:0:00:00.00 1168283 0 0 0 0 0 0:0:00:00.00 819071614 0 0 181 0 0 0:0:00:00.00 63134759 0 0 0 0 0 0:0:00:00.00 0 0 0 0 0 0 0:0:00:00.00 0 0 0 0 0 0 0:0:00:00.00 0 0 0 0 0 0 0:0:00:00.00 0 0 0 0 0 0 0:0:00:00.00 0 0 0 0 0 0 0:0:00:00.00 0 0 0 0 0 0 0:0:00:00.00 0 0 0 0 0 0 0:0:00:00.00 720 0 0 0 0 0 SNMP table IF-MIB::ifTable, part 3 ifOutOctets ifOutUcastPkts ifOutNUcastPkts ifOutDiscards ifOutErrors ifOutQLen 1168283 8937 0 0 0 0 2177009325 4889226 0 0 0 0 99678486 3536298 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SNMP table IF-MIB::ifTable, part 4 ifSpecific SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero SNMPv2-SMI::zeroDotZero