1 关于edns-client-subnet 可以参考 draft
2 edns-client-subnet 主要目的就是用用户的真实ip地址而不是用户的dns服务器地址来进行dns查询,在DNS智能调度,CDN等技术有用处。
3 bind9.10 已经实现了edns-client-subnet, 但是只是在其中一个commit上找到了,还没有release。没有在其他v9_10_1_patch, v9_10_2_patch上发现
所以只能通过checkout源码安装测试。
4 项目源码:git clone https://source.isc.org/git/bind9.git
5 ecs commit 对象: git checkout d46855caedd5cb101795707f6f467fa363ef1448
6 ./configure && make
7 配置acl, 需要在ip段前指定 ecs关键字, 不指定的按照正常流程查询。
acl "local" {
ecs 127.0.0.1;
::1;
20.17.9.0/24;
10.0.0.0/8;
};
acl "beijing" {
22.2.0.0/16;
ecs 23.2.0.0/16;
ecs 220.2.2.0/24;
};
acl "shanghai" {
ecs 11.1.0.0/1