按特定查询路由客户端?

按特定查询路由客户端?

myweb.com 有外部 IP。

我有一台运行 BIND9 的 Debian 服务器,它包含一些客户端,我创建了区域 myweb.com,并创建了指向 localhost 的 A 记录。这样就没问题了,但我想知道我是否可以将 A 记录指向真实的外部 IP,但将客户端路由到 localhost?因此,当用户通过 dns myweb.com 访问时,他们将位于我的服务器上,该服务器据称具有原始外部 IP,而不是我的服务器的 IP。

(我正在寻找一些可以做到这一点的 iptables、host、ferm 或脚本,但很难找到)

答案1

如果您想使用本地服务器模拟公共服务器,在您的本地网络中您有两种解决方案:

  1. 使用本地 DNS,它将使用私有 IP 来回答本地客户端的问题。对于外部客户端,您可以使用公共 IP 来回答。请参阅:http://www.zytrax.com/books/dns/ch7/view.html
  2. 使用 NetFilter (iptables) 并创建 DNAT 规则,将公共 IP 重定向到本地 IP。例如:

    iptables -A PREROUTING -t nat -p tcp --目标 123.123.123.123 --目标端口 80 -m 状态 -j DNAT --到目标 127.0.0.1:80

相关内容