如果一切可能,请考虑设置一个透明的应用程序级代理。使用应用程序代理进行此类过滤可能会容易得多。
如果您必须使用 iptables 来完成,那么一个笨拙的选择是创建一个链,创建一个命令行脚本,该脚本定期使用来自 DNS 的结果更新您需要使用的名称的特定链。
如果有人要尝试创建这样一个真正基于数据包过滤的 DNS 的东西,它几乎肯定必须通过用户空间来完成。具体来说,您将使用libnetfilter_queue 之类的东西。我从未使用过它,但Packetbl可能接近做到这一点,但它似乎没有得到很好的维护。
另一种选择可能是设置第 7 层过滤。如果 DNS 名称作为数据包负载的一部分进行转换,您可能能够过滤请求的一部分。
归档时间: |
|
查看次数: |
25471 次 |
最近记录: |