首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用snmp获取系统的Mac地址?

如何使用snmp获取系统的Mac地址?
EN

Stack Overflow用户
提问于 2018-05-02 07:46:21
回答 1查看 7.7K关注 0票数 0

我使用snmpwalk检索我的系统(Localhost)或远程系统的mac地址,并使用以下命令:

代码语言:javascript
复制
snmpwalk -v2c -c public localhost .1.3.6.1.2.1.2.2.1.6

并得到一个类似于noSuchObject的错误。

如何解决这个错误?还有其他方法可以使用snmp获取系统mac地址吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-08 17:02:37

没有“系统MAC地址”这样的东西。系统没有MAC地址;网络接口有,一个系统可能有零个、一个、两个或多个网络接口。

这就是使用snmpwalk的原因:因为.1.3.6.1.2.1.2.2.1.6 (即ifPhysAddress)是一个接口表中的列,而且您事先不知道您将返回多少概念性行(以及每行将使用什么唯一的数字索引作为其键)。

所以,您正在正确地使用该命令。但是接下来,我们必须考虑的是,自从SNMP和SMI RFCs被编写以来,时代已经发生了变化,早在网络繁荣之前,互联网是一个相对令人愉快和快乐的地方。如今,实现在所披露的信息中往往更加保守,因为您所披露的每一条信息都可能是攻击您的系统的另一种方式。为什么有人需要访问才能知道系统的MAC地址?我最近创建了一个SNMP代理,它对“标准”对象的支持并不接近列出网络接口。当RFC1213中的“安全”子集被采用到RFC1907中时,snmp中的许多数据包/状态计数器被故意淘汰。

这对你意味着什么?那么,远程系统必须有一个网络接口,否则您将无法与它交谈。因此,您正在轮询/查询的SNMP代理(没有说明哪个)要么是硬编码的,要么是配置为不提供此信息。你无法回避这个问题,除非与软件开发者交谈,并询问软件是否是可配置的;准备好答案是“否”。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50129507

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档