我可以通过使用获取开关状态 oid : .1.3.6.1.2.1.2.2.1.8
这将显示所有状态为 up 或 down 的端口。
但是,我想oid
检查特定端口,例如检查第 5 个端口是打开还是关闭。
另外,我想要oid
获取连接到端口的 MAC 地址和 IP,例如连接到端口 5 的 PC 的 MAC 地址和 IP。
我可以通过使用获取开关状态 oid : .1.3.6.1.2.1.2.2.1.8
这将显示所有状态为 up 或 down 的端口。
但是,我想oid
检查特定端口,例如检查第 5 个端口是打开还是关闭。
另外,我想要oid
获取连接到端口的 MAC 地址和 IP,例如连接到端口 5 的 PC 的 MAC 地址和 IP。
有关端口的数据存储在 MIB 表中。表 OID 是.1.3.6.1.2.1.2.2.1
,这意味着要获取特定的数据,您必须查询:
.1.3.6.1.2.1.2.2.1.X.Y
其中X
是项目索引,Y
是端口索引。例如,端口 10101 描述的 oid 是.1.3.6.1.2.1.2.2.1.2.10101
:
$ snmpget -mall -v1 -c public <switch_ip> .1.3.6.1.2.1.2.2.1.2.10101
IF-MIB::ifDescr.10101 = STRING: GigabitEthernet0/1
要获取端口表中的所有数据,您可以像这样查询它:
$ snmpwalk -mall -v1 -c public <switch_ip> .1.3.6.1.2.1.2.2.1
要获取特定端口上的 MAC 地址,您可以在 BRIDGE-MIB 中查询 FDB:
$ snmpwalk -mall -v1 -c public <switch_ip> .1.3.6.1.2.1.17.4.3.1.2
由于开启2960多半是二层操作,所以没有办法获取对应的IP地址,除非你设置成路由器。