需要通过 iptables 将 UDP 数据包复制到多个目的地

需要通过 iptables 将 UDP 数据包复制到多个目的地

我正在寻找复制 SYSLOG 和 NetFlow 数据的 UDP 流量,并希望使用 iptables 来实现,但到目前为止我还没有太多运气。

我知道其他用户空间软件包可以实现这一点,但它们的开发人员似乎没有很好地维护它们,所以如果可能的话,我宁愿避免使用它们。

答案1

只要您的内核中有 xt_TEE 模块,您就可以使用 iptables TEE 目标。您可以复制进入您盒子的数据包,并将其发送到 LAN 中的另一台服务器。

即复制所有传入的 DNS 请求并将其发送到服务器 192.168.0.10

iptables -t mangle -A PREROUTING -i eth0 -p udp --dport 53 -j TEE --gateway 192.168.0.10

另一个解决方案是使用用户空间程序作为http://code.google.com/p/port-mirroring/

相关内容