bing高级应用(第19天)
子域授权:分布式数据库
比如:magedu.com通过子域授权分出ops.magedu.com和fin.magedu.com等子域名。
正向解析区域子域方法如下:
在父域的解析库文件中定义一个子区域:
ops.magedu.com. IN NS ns1.ops.magedu.com.
ops.magedu.com. IN NS ns2.ops.magedu.com.
ns1.ops.magedu.com. IN A 1.1.1.1
ns2.ops.magedu.com. IN A 1.1.1.2
fin.magedu.com. IN NS ns1.fin.magedu.com.
fin.magedu.com. IN NS ns2.fin.magedu.com.
ns1.fin.magedu.com. IN A 3.1.1.1
ns2.fin.magedu.com. IN A 3.1.1.2
定义转发服务器:
例子:比如ops.magedu.com域内的st2.ops.magedu.com这个主机想要访问父域magedu.com域内的www.magedu.com主机,并且设置st2.ops.magedu.com的首选DNS服务器为ns1.ops.magedu.com。那么名称解析服务器ns1.ops.magedu.com就可以将解析直接交给父域的名称解析服务器ns1.magedu.com,而不是去请求根。有一个注意点,ns1.magedu.com必须能够为ns1.ops.magedu.com做递归查询,否则,转发请求不能进行。
注意:被转发的服务器需要能够为请求者做递归,否则,转发请求不予进行;
(1) 全部转发: 凡是对非本机所有负责解析的区域的请求,统统转发给指定的服务器;
Options {
forward {first|only} //转发模式,first表示首先转发给forwarders里定义的服务器,如果对方拒绝,则自己去迭代。only表示转发给forwarders里定义的服务器,如果对方拒绝,则就此放弃
forwarders
}
(2) 区域转发:仅转发对特定的区域(ZONE_NAME)的请求至某服务器;
zone "ZONE_NAME" IN {
type forward;
forward {first|only}
forwarders
}
注意:关闭dnssec功能:
dnssec-enable no;
dnssec-validation no;
bind中基础的安全相关的配置:
acl: 把一个或多个地址归并为一个集合,并通过一个统一的名称调用;
acl acl_name {
ip;
ip;
net/prelen;
};
示例:
acl mynet {
172.16.0.0/16;
}
bind有四个内置的acl:
none: 没有一个主机;
any: 任意主机;
local: 本机;
localnet: 本机的IP同掩码运算后得到的网络地址;
注意:acl只能先定义,后使用;因此,其一般定义在配置文件中options的前面;
访问控制的指令:
allow-query {}: 允许查询的主机;白名单;
allow-transfer {}:允许区域传送的主机;白名单;
allow-recursion {}: 允许递归的主机;
allow-update {}: 允许更新区域数据库文件中的内容;
bind view:
视图:
一个bind服务器可定义多个view,每个view中可定义一个或多个zone;
每个view用来匹配一组客户端;为这组客户服务
多个view内可能需要对同一个区域(比如magedu.com)进行解析,但使用不同的区域解析库文件;(比如电信的用户和铁通的用户分别通过的不同view来解析magedu.com域)
view VIEW_NAME {
match-clients { };
zone...
}
注意:
(1) 一旦启用了view,所有的zone都只能定义在view中;
(2) 仅有必要在匹配到允许递归请求的客户所在view中定义根区域;
(3) 客户端请求到达时,是自上而下检查每个view所服务的客户端列表;
CDN: Content Delivery Network
智能DNS:
dnspod
dns.la
编译安装bind:
bind源代码位于isc.org:
bind-9.8
bind-9.9
bind-10
bind-9.10源代码编译安装步骤
# tar
# cd
# groupadd -r -g 53 named
# useradd -r -u 53 -g 53 named
# ./configure --prefix=/usr/local/bind9 --sysconfdir=/etc/named/ --disable-ipv6 --disable-chroot --enable-threads
# make
# make install
编译完成之后,bing提供的命令无法直接使用,必须导出/usr/local/bind9/bin/和/usr/local/bind9/sbin/目录的二进制文件到PATH环境变量中 :
touch /etc/profile.d/named.sh
echo "export PATH=/usr/local/bind9/bin:/usr/local/bind9/sbin:$PATH" >> /etc/profile.d/named.sh
导出bind的库文件:
touch /etc/ld.so.conf.d/named.conf
echo "/usr/local/bind9/lib" >> /etc/ld.so.conf.d/named.conf
导出bind的头文件:
ln -sv /usr/local/bind9/include /usr/include/named
文档:
编辑/etc/man.conf,加入MANPATH /usr/local/bind9/share/man
前次博客作业附加:子域授权和view;
比如:magedu.com通过子域授权分出ops.magedu.com和fin.magedu.com等子域名。
正向解析区域子域方法如下:
在父域的解析库文件中定义一个子区域:
ops.magedu.com. IN NS ns1.ops.magedu.com.
ops.magedu.com. IN NS ns2.ops.magedu.com.
ns1.ops.magedu.com. IN A 1.1.1.1
ns2.ops.magedu.com. IN A 1.1.1.2
fin.magedu.com. IN NS ns1.fin.magedu.com.
fin.magedu.com. IN NS ns2.fin.magedu.com.
ns1.fin.magedu.com. IN A 3.1.1.1
ns2.fin.magedu.com. IN A 3.1.1.2
定义转发服务器:
例子:比如ops.magedu.com域内的st2.ops.magedu.com这个主机想要访问父域magedu.com域内的www.magedu.com主机,并且设置st2.ops.magedu.com的首选DNS服务器为ns1.ops.magedu.com。那么名称解析服务器ns1.ops.magedu.com就可以将解析直接交给父域的名称解析服务器ns1.magedu.com,而不是去请求根。有一个注意点,ns1.magedu.com必须能够为ns1.ops.magedu.com做递归查询,否则,转发请求不能进行。
注意:被转发的服务器需要能够为请求者做递归,否则,转发请求不予进行;
(1) 全部转发: 凡是对非本机所有负责解析的区域的请求,统统转发给指定的服务器;
Options {
forward {first|only} //转发模式,first表示首先转发给forwarders里定义的服务器,如果对方拒绝,则自己去迭代。only表示转发给forwarders里定义的服务器,如果对方拒绝,则就此放弃
forwarders
}
(2) 区域转发:仅转发对特定的区域(ZONE_NAME)的请求至某服务器;
zone "ZONE_NAME" IN {
type forward;
forward {first|only}
forwarders
}
注意:关闭dnssec功能:
dnssec-enable no;
dnssec-validation no;
bind中基础的安全相关的配置:
acl: 把一个或多个地址归并为一个集合,并通过一个统一的名称调用;
acl acl_name {
ip;
ip;
net/prelen;
};
示例:
acl mynet {
172.16.0.0/16;
}
bind有四个内置的acl:
none: 没有一个主机;
any: 任意主机;
local: 本机;
localnet: 本机的IP同掩码运算后得到的网络地址;
注意:acl只能先定义,后使用;因此,其一般定义在配置文件中options的前面;
访问控制的指令:
allow-query {}: 允许查询的主机;白名单;
allow-transfer {}:允许区域传送的主机;白名单;
allow-recursion {}: 允许递归的主机;
allow-update {}: 允许更新区域数据库文件中的内容;
bind view:
视图:
一个bind服务器可定义多个view,每个view中可定义一个或多个zone;
每个view用来匹配一组客户端;为这组客户服务
多个view内可能需要对同一个区域(比如magedu.com)进行解析,但使用不同的区域解析库文件;(比如电信的用户和铁通的用户分别通过的不同view来解析magedu.com域)
view VIEW_NAME {
match-clients { };
zone...
}
注意:
(1) 一旦启用了view,所有的zone都只能定义在view中;
(2) 仅有必要在匹配到允许递归请求的客户所在view中定义根区域;
(3) 客户端请求到达时,是自上而下检查每个view所服务的客户端列表;
CDN: Content Delivery Network
智能DNS:
dnspod
dns.la
编译安装bind:
bind源代码位于isc.org:
bind-9.8
bind-9.9
bind-10
bind-9.10源代码编译安装步骤
# tar
# cd
# groupadd -r -g 53 named
# useradd -r -u 53 -g 53 named
# ./configure --prefix=/usr/local/bind9 --sysconfdir=/etc/named/ --disable-ipv6 --disable-chroot --enable-threads
# make
# make install
编译完成之后,bing提供的命令无法直接使用,必须导出/usr/local/bind9/bin/和/usr/local/bind9/sbin/目录的二进制文件到PATH环境变量中 :
touch /etc/profile.d/named.sh
echo "export PATH=/usr/local/bind9/bin:/usr/local/bind9/sbin:$PATH" >> /etc/profile.d/named.sh
导出bind的库文件:
touch /etc/ld.so.conf.d/named.conf
echo "/usr/local/bind9/lib" >> /etc/ld.so.conf.d/named.conf
导出bind的头文件:
ln -sv /usr/local/bind9/include /usr/include/named
文档:
编辑/etc/man.conf,加入MANPATH /usr/local/bind9/share/man
前次博客作业附加:子域授权和view;
评论
发表评论