iptables c ++控件

Tho*_*omi 11 c++ linux networking firewall

我需要在C++程序中控制进出linux机箱的入站和出站流量.我可以iptables从我的程序中调用,但我更愿意切断中间人并自己访问内核API函数.

我相信我需要使用libnfnetlink,但是,我无法找到任何API文档或示例程序.

我需要构建的规则非常简单 - 例如丢弃目标端口等于X的数据包等.我不打算编写完整的防火墙应用程序.

任何人都可以建议更好的方法,或提供一些文档或示例应用程序的链接?我宁愿避免阅读iptables代码,但我想我可能不得不,如果我找不到更好的资源.

Sat*_*ish 9

一年前,我有相同的要求并进行了探测.但在联系了一些开源内核人员之后,这就是我所知道的 -

iptables的内核API没有外部化,也就是说,它们不是文档化的API.从某种意义上说,API可以随时改变.它们只能由iptables工具使用.它们不应该被应用程序开发人员使用.

-satish

  • 正如马克所说,没有人可以阻止你使用它,因为它是开源的.但是,应该小心,因为API可以在需要时发生变化.然后,您的应用程序需要处理API行为的更改. (3认同)