SNMP有效负载地址转换

时间:2008-10-29 06:02:33

标签: linux networking snmp iptables nat

我在linux下使用iptables来NAT NAT流量。某些SNMP数据包具有VARBIND,其中包含生成它们的设备的(实际)IP地址。这会混淆标准管理工具,这些工具需要查看VARBIND中的NATted地址。所以我需要翻译有效负载中的地址以及标题中的地址。

标准工具是nf_nat_snmp_basic.ko内核模块,但原始版本仅转换地址的第一个八位字节,而最新版本只会破坏数据包。这显然是网络上的“常识”(www.netfilter.org),我已经在自己的设备上验证了它。

在深入研究内核之前,有没有其他人在解决这个问题并提出合适的解决方案?目前,仅将那些OID指定其类型的VARBIND转换为IP地址就足够了。换句话说,我不需要翻译嵌入在字符串数据中的地址,这将更加困难。

感谢您的建议!

1 个答案:

答案 0 :(得分:2)

Robert Gamble可能提供的DIY解决方案:Packet mangling utilities besides iptables?

经过一些单元测试后,更新和更多的赞扬 - 谢谢,罗伯特!