如何限制 dnsmasq 仅回复特定的客户端 DNS 请求?

Posted

技术标签:

【中文标题】如何限制 dnsmasq 仅回复特定的客户端 DNS 请求?【英文标题】:How can I restrict dnsmasq to only reply to specific client DNS requests? 【发布时间】:2013-12-04 15:26:52 【问题描述】:

我正在考虑使用 dnsmasq 服务器轻松提供一些本地临时主机名,并为本地客户端提供递归 DNS。

但是,一旦将 dnsmasq 服务配置为递归 DNS 服务器,它似乎总是允许任何客户端查找 DNS 条目。

有没有办法将 dnsmasq 服务限制为仅允许来自本地客户端的请求,例如 192.168.0.0/16 和 127.0.0.0/8 甚至可能是一些选择的公共 IP?

我可以使用 iptables 来做到这一点,但如果我可以将与 DNS 相关的配置保留在 dnsmasq 本地会更好。

【问题讨论】:

【参考方案1】:

您可以限制 dnsmasq 侦听的接口(例如您的本地网络):

这指定只监听 eth0:

interface=eth0

这指定仅监听特定地址(在本例中为 192.168.1.1):

listen-address:192.168.1.1

你也可以指定一个不监听的接口:

except-interface=eth1

您可以为多个界面重复该行。

修正

抱歉,我重新阅读了您的问题,但不相信我的回答特别有帮助,您希望限制对 dns 的访问(在 dnsmasq conf 中),而不是限制分发 dhcp 租约的地点/方式。我不知道如何在 dnsmasq conf 文件中执行此操作,所以我会让其他人回答。我会在这里留下我原来的答案,只是希望它对任何人都有用。

【讨论】:

ps。为了帮助自己,默认安装的文件 /etc/dnsmasq.conf (至少在我的 debian 机器上)包含很多示例,值得一读,如果有帮助的话。 感谢您的回答,尽管正如您所指出的,我仍然没有回答我原来的问题。 是的,不要将我的标记为已接受,如果有人知道你会希望得到回复。如果我发现了什么,我也会回来。

以上是关于如何限制 dnsmasq 仅回复特定的客户端 DNS 请求?的主要内容,如果未能解决你的问题,请参考以下文章

轻量级的DNS服务器--DNSmasq

如何限制 Lambda 函数仅响应特定来源?

如何使用条带 API 检索客户总数(没有“限制”)

限制仅在特定 DIV 内拖动

仅限制具有文件类型的特定 AEM DAM 文件夹

如何在Node js中限制一个客户端一次在本地访问一个文件