![如何配置 dnsmasq 以根据请求来源进行解析?](https://linux22.com/image/30823/%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%20dnsmasq%20%E4%BB%A5%E6%A0%B9%E6%8D%AE%E8%AF%B7%E6%B1%82%E6%9D%A5%E6%BA%90%E8%BF%9B%E8%A1%8C%E8%A7%A3%E6%9E%90%EF%BC%9F.png)
我想得到Siri代理每当我连接到家庭网络时,通过在运行 Tomato 固件的路由器上设置 dnsmasq,将所有对 Apple Siri 服务器的请求发送到运行 SiriProxy 的本地计算机,即可工作。
当然,问题是运行 SiriProxy 的机器需要访问“真正的”Apple Siri 服务器。我不知道它多久更改一次 IP 地址,所以简单的解决方案就是将其指向 IP 地址......
但是,有没有一种方法可以配置 DNSMasq,以便当请求来自(或不是)来自某些客户端时,它只遵循“地址”配置选项?
或者..有人有更好的解决方案吗?
答案1
如果您可以使用 iptables,则可以通过 SiriProxy 将所有请求路由到 Siri。我使用以下命令通过代理服务器路由某些站点,其余站点则直接路由到我的 ISP:
iptables -t nat -A OUTPUT -p tcp --dport $destination_port -d $destination_ip_address -j DNAT --to-destination $Proxyserver:port