我在 CentOS 上安装了 dnsmasq 2.66 版。根据发行说明,dnsmasq 从 2.60 版开始支持正则表达式
我的配置文件中有以下条目:
address=/:clients[0-9]*\.google\.com/192.168.10.2
此单一条目应该将与 clients.google.com 和 clients3.google.com 匹配的 URL 地址解析为地址 192.168.10.2,但事实并非如此。
请针对此问题提出解决方案。
答案1
我认为正则表达式功能只是 v2.63 的一个补丁。我检查了主分支中的 Makefile 和 .conf 文件,没有“regex”宏。
答案2
你错过了结尾:
你的行看起来应该像这样:
address=/:clients[0-9]*\.google\.com:/192.168.10.2
答案3
你确定:
正则表达式中的 s 是正确的吗?我在文档中没有看到任何关于使用它们的参考。
我尝试过带冒号和不带冒号的情况。我不确定这是否可行,尤其是官方文档没有提到这一点。一些非官方参考资料还表明这可能只是服务器指令的一个功能。