簡體   English   中英

iptables的替代品?

[英]Alternatives for iptables?

我正在開發一個應用程序,其中我非常依賴iptables路由流量。 我只是通過從應用程序中調用iptables作為外部進程來設置表。

我想知道是否有一種方法可以直接與iptables依賴的內核模塊(Netfilter)進行通信,並避免為此目的運行新進程的開銷?

歡迎提供其他路由解決方案的建議。

我看不到netfilter有任何問題。 您可以在任何netfilter鈎子上綁定回調,內核將在鈎子事件上調用您的回調。 您正在通過nf_register_hook進行此操作。 您甚至可以使用conntrack跟蹤連接

例子在這里

有關在官方文檔中入侵netfilter的更多信息

如果我的理解是正確的,那么您正在要求一個用於iptables配置的程序接口。 不幸的是,iptables(libiptc)沒有提供用於配置或查詢它們的API接口,它在堆棧中的位置太低了。

我可以建議的另一種選擇是內核IP集。 ipset實際上是iptables的擴展,它允許一次創建與整個地址集匹配的規則。 IPtables線性遍歷,其中ip set存儲在索引數據結構中。 這使其非常有效。

https://packages.debian.org/sid/net/ipset

這可能不是您問題的直接答案,但希望能對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM