首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法从SNMP端口接收响应

无法从SNMP端口接收响应
EN

Stack Overflow用户
提问于 2010-07-02 18:33:03
回答 1查看 5.3K关注 0票数 1

我正在使用SNMP访问远程系统数据。根据要求,我将SNMP请求数据编码为OAMPDU数据包格式,并发送到远程系统。远程系统接收到OAMPDU数据包,对其进行解码,并通过绑定到端口161的UDP套接字将snmp请求发送给snmp代理。但是我无法收到snmp代理的响应。我已经创建了一个绑定到161端口的UDP套接字来接收响应。

如果我使用161以外的任何其他空闲端口号来接收SNMP代理,则不会向该端口发送响应。

有没有人能建议我如何克服这个问题?

我们可以为tx、rx配置不同的端口吗?

我们如何知道snmp在哪个端口发送响应?

EN

回答 1

Stack Overflow用户

发布于 2010-07-02 18:46:12

每个UDP数据包都有一个源端口和一个目的端口。SNMP管理器使用任何源端口和目的端口161发出SNMP请求。代理将回复管理器上的源端口。例如:

代码语言:javascript
复制
Manager                                    Agent

source port: <random number>
dest port: 161
content: what is your sysUpTime 
                                           source port: 161
                                           destination port: <same random number>
                                           content: sysUpTime is 42 seconds

应答到达random number端口,而不是端口161。因此,监听端口161的管理器不太可能收到很多回复。不要监听161端口,而要监听您用来发出请求的同一套接字。该套接字将记住它选择用于发送的源端口。

使用SNMP查询时,SNMP的manager为UDP的client,SNMP的agent为UDP的server

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

https://stackoverflow.com/questions/3164928

复制
相关文章

相似问题

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