Skip to content

viewManage

LostSymbol edited this page May 15, 2019 · 2 revisions

VIEW域名管理

视图是BIND9强大的新功能,视图允许BIND根据访问它的主机提供不同的功能。

用到view域名管理的情况 需要外网域名根据请求主机来源访问就近服务器,不同的公司这部分功能需求差异可能比较大,我们的解决方案仅供参考。

概述

为来自不同运营商的主机提供不同的DNS查询结果

  • 为不同的运营商配置不同的ACL(访问控制列表)
  • 外网域名 www.corp.com
    1. 域名所在zonecorp.com, cname到配置视图的zone view.com: www IN CNAME www.view.com.
    2. bind根据请求主机IP解析域名www.view.com到不同的CNAME, CNAME到的域名属于普通zoneview.corp.comwww IN CNAME www.def.view.corp.com., 其中def是运营商在系统中配置的英文缩写
    3. www.def.view.corp.com解析到为域名www.corp.com的运营商def配置的ip或CNAME

image-20190130181252308

下文的view域名指属于配置了视图的zone的域名

配置

etc/beta/dnsdb.conf

...
[view]
;acl文件变更应该推送到的主机组,可以有多个主机组,逗号隔开
acl_groups = ViewSlave
;要配置视图的zone,目前只支持单一zone
view_zone = view.com
;view_zone中CNAME记录的TTL
cname_ttl = 300
;普通域名zone和cname到的view域名后缀的对应关系
normal_view = corp.com:corp.view.com
normal_cname = corp.com:view.corp.com
...
  1. 主机组配置 请到配置管理 --> 主机管理 中配置acl_groups中定义的主机组
  2. 配置文件中view_zone normal_cname中配置的zone都要在系统中有header记录

机房配置

$ export FLASK_APP=dnsdb_command.py
$ export FLASK_ENV=beta
$ flask add-colo-config --colos bj1,bj2 --group view

参数说明

运营商管理

image-20190130154636296

必要参数 英文名 中文别名 英文简写,不能重复

可选参数

  • ACL名称 访问控制列表名称,不同运营商对应的ACL不能相同
  • ACL文件 访问控制列表所在文件名

ACL管理

导入acl文件

$ export FLASK_APP=dnsdb_command.py
$ export FLASK_ENV=beta
$ flask import-acl-subnet --acl_dir /var/named/chroot/var/named

每个acl文件中指能包含一个ACL,格式如下:

acl acl_name {
1.51.0.0/20;
};

管理

image-20190130164121898

  • 搜索 根据ip搜索管理的acl网段

  • 新增网段

    • 可选的运营商 配置了acl文件的运营商
    • 网段 与运营商对应的acl中已有的网段不能有交叉

    image-20190130164300582

  • 迁移 将属于运营商A的ACL的网段迁到运营商B

    • 恢复 将迁移的网段恢复到原来的ACL

域名管理

新增域名

页面导航 View域名 --> 域名管理 - 新增域名

image-20190131134207798

image-20190131134532414

参数说明

  1. 域名 域名的zone应该是etc/beta/dnsdb.conf配置的normal_cname中的key
  2. 属性中包含两部分: 机房、CDN
    1. 机房 上图的'bj1, bj2'属于机房,输入属于该机房的外网ip, 输入后回车保存
    2. CDN 配置为该域名申请的CDN, 格式 name:cname同一个CDN厂商只能有一个域名

提交成功,可以看到如下界面:

image-20190131134052398

修改域名状态

image-20190131140035970

对每个运营商,机房或者CDN必须有一种且只能一种启用。

修改完成后,点击右上角的提交按钮保存

修改域名

域名修改和新增界面相同,可以对配置进行增删:

  • 不能删除已经启用的机房或CDN

迁移管理

迁移

当某个机房的某个运营商需要维护或者出现异常,则可以将对应的域名解析迁移到其他机房。

image-20190131144641092

参数说明

  • 运营商 要维护或异常的运营商
  • 迁移机房 源机房, 要维护或异常的机房
  • 目的机房

如果参数如上图所示,那么迁移操作要做是:

  1. 找到为运营商中国电信、中国联通启用了迁移机房bj2的域名
  2. 确定域名在目标机房bj1上是否有配置的话
  3. 如果有启用目标机房配置,关闭迁移机房配置;如果没有则不迁移

点击预览按钮,看到上图表中迁移运营商字段两个域名的差别:

image-20190131162910921

image-20190131162621097

点击迁移按钮, 看下迁移后两个域名的状态:

image-20190131165302858

image-20190131165340914

恢复

按钮一键恢复,恢复所有迁移域名到迁移之前的状态:所有处于迁移完成状态的记录,状态都变为已恢复

image-20190131165637223