如何 configure/extend bind9 具有地理意识?

How to configure/extend bind9 to be geographical aware?

在研究了cdn的工作原理后,我了解到cdn主要有两类:1. dns based; 2、基于路由器。

dns based cdn持有一个域名的ip地址集合,当一个dns查询请求到达时,它根据请求的客户端ip地址确定最近的ip地址。

基于路由器的cdn在多个地理区域部署具有相同IP地址的节点,当客户端发起请求时,路由器将决定到达哪个节点。

我对cdn的工作原理基本就这样理解了。如果有什么不对的地方,请指正。

现在我想自制一个cdn。我不想基于路由器,因为我无法控制那么多节点,也无法为它们分配相同的 IP 地址。我认为我自制的 cdn 可能是基于 dns 的。我的 dns 服务器上有 bind9 服务。现在有什么方法可以黑入 bind9 并让它根据客户端请求的 ip 地址决定 return 哪个 ip 地址?谢谢。

搜索 bind9 geoip

http://www.caraytech.com/geodns/

What is it?

A 40-line patch for BIND to add geographical filters support to the existent views in BIND. Look at it. What can I use it for?

The most popular use of this patch is to send web site visitors to their nearest web server.

或其他选项 http://phix.me/geodns/

仅供参考,我更新了 http://geoip.site/ 以包含一个新的 Python 脚本,该脚本将为跨越 IPv4 和 IPv6 地址的 BIND 生成单个 GeoIP.acl 文件 space.

只是发表评论让其他人知道,因为我现在认为如果不采用源代码修补路线,此脚本是使 BIND 具有地理感知能力的最简单解决方案。