海运的博客

Centos下用BIND配置主从同步智能DNS

发布时间:July 6, 2012 // 分类:DNS // No Comments

BIND可根据请求查询的源IP分配到不同的域规则,即智能DNS服务器
下载运营商IP地址库,定义ACL,由于条目太多,可分别存为独立文件调用。
示例主DNS为:1.1.1.1,从DNS为2.2.2.2。

#https://www.haiyun.me
acl liantong{
    112.96.0.0/15;
};

生成key,用于同步时验证并解决不能全部同步的问题,

dnssec-keygen -a hmac-md5 -b 128 -n HOST one
dnssec-keygen -a hmac-md5 -b 128 -n HOST two
dnssec-keygen -a hmac-md5 -b 128 -n HOST three

主DNS配置:

key one
{
       algorithm hmac-md5;
       secret "hxCQkylFHbhzbPYo+CRWLA==";
};
key two
{
       algorithm hmac-md5;
       secret "T4Gf+E0+3Y+5uL3ylkQBSA==";
};

key three
{
       algorithm hmac-md5;
       secret "8q22D8M1c9QQKJLteC2bQQ==";
};
view "dianxin" {
server  2.2.2.2 { 
        keys { one; };
};
match-clients { dianxin; key one; !key two; !key three};
zone "." IN {
        type hint;
        file "named.ca";
};
zone "www.haiyun.me" IN {
        type master;
        file "dianxin.www.haiyun.me";
        allow-query { any; };
        notify yes;
        allow-transfer { key one; };
        };
};

view "liantong" {
server  2.2.2.2 {
        keys { two; };
};
match-clients { liantong; key two; !key one; !key three; };
zone "." IN {
        type hint;
        file "named.ca";
};
zone "www.haiyun.me" IN {
        type master;
        file "liantong.www.haiyun.me";
        allow-query { any; };
        notify yes;
        allow-transfer { key two; };
        };
};

view "other" {
server  2.2.2.2 {
        keys { three; };
};
match-clients { any; key three; !key one; !key two; };
zone "." IN {
        type hint;
        file "named.ca";
};
zone "www.haiyun.me" IN {
        type master;
        file "other.www.haiyun.me";
        allow-query { any; };
        notify yes;
        allow-transfer { key three; };
        };
};
include "/var/named/dianxin.acl";
include "/var/named/liantong.acl";

从DNS配置:

key one
{
       algorithm hmac-md5;
       secret "hxCQkylFHbhzbPYo+CRWLA==";
};
key two
{
       algorithm hmac-md5;
       secret "T4Gf+E0+3Y+5uL3ylkQBSA==";
};

key three
{
       algorithm hmac-md5;
       secret "8q22D8M1c9QQKJLteC2bQQ==";
};
view "dianxin" {
server  1.1.1.1 {
        keys { one; };
};
match-clients { dianxin; key one; !key two; !key three; };
zone "." IN {
        type hint;
        file "named.ca";
};
zone "www.haiyun.me" IN {
        type master;
        file "dianxin.www.haiyun.me";
        allow-query { any; };
        masters {1.1.1.1;};
        };
};

view "liantong" {
server  1.1.1.1 {
        keys { two; };
};
match-clients { liantong; key two; !key one; !key three; };
zone "." IN {
        type hint;
        file "named.ca";
};
zone "www.haiyun.me" IN {
        type master;
        file "liantong.www.haiyun.me";
        allow-query { any; };
        masters {1.1.1.1;};
        };
};

view "other" {
server  1.1.1.1 {
        keys { three; };
};
match-clients { any; key three; !key one; !key two; };
zone "." IN {
        type hint;
        file "named.ca";
};
zone "www.haiyun.me" IN {
        type master;
        file "other.www.haiyun.me";
        allow-query { any; };
        masters {1.1.1.1;};
        };
};
include "/var/named/dianxin.acl";
include "/var/named/liantong.acl";

定义多个域规则,分别转向不同的IP:

$TTL 600
@                       IN SOA   ns1.www.haiyun.me. domain.mail.www.haiyun.me. (
                        2012070401;
                        3H;
                        10M;
                        1W;
                        1H );
@      IN     NS     ns1.www.haiyun.me.
ns1     IN     A     184.164.141.188
www     IN     A     184.164.141.188

BIND主从DNS配置

发布时间:July 6, 2012 // 分类:DNS // No Comments

为不间断的提供DNS查询服务,自架DNS至少有两台服务器同时提供服务,一台设置为主DNS服务器,其它设置从DNS,自动从主DNS获取数据更新。
Master DNS配置:

#https://www.haiyun.me
zone "www.haiyun.me" IN {
        type master;
        file "named.www.haiyun.me";
        notify yes; #通知Slave更新
        allow-transfer { 184.164.141.188; }; #允许Slave获取信息
};

配置域规则略过,可参考:BIND安装配置
Slave DNS配置:

zone "www.haiyun.me" IN {
    type slave;
    file "named.www.haiyun.me";
    masters { 184.164.141.188; };
};

从DNS要从主DNS获取域规则并写入,域规则存入目录需有named进程运行用户写入权限,默认为named。

chown -R named:named /var/named/

BIND子域名授权管理

发布时间:July 6, 2012 // 分类:DNS // No Comments

BIND主域名服务器安装配置参考:BIND DNS安装配置
子域名管理授权即授权DNS管理二级域名,本例以web.www.haiyun.me为测试域名,BIND主配置文件添加域规则:

zone "web.haiyun.me" IN {
        type master;
        file "named.web.haiyun.me";
        allow-query { any; };
        allow-update { none; }; 
};

主域名规则下定义子域NS:

$TTL 600
@                       IN SOA   ns1.haiyun.me. root.mail.gmail.com. (
                        2012070401;
                        21600;
                        5400;
                        864000;
                        86400 );
@      IN     NS     ns1.haiyun.me.
ns1     IN     A     184.164.141.188
www     IN     A     184.164.141.188
web     IN      NS      ns.web.haiyun.me. #定义web.haiyun.me由ns.web.haiyun.me管理
ns.web  IN      A       184.164.141.188 #定义子域ns.web.haiyun.me所在服务器

然后新建web.haiyun.me域名规则:

$TTL 600
@                       IN SOA   ns.haiyun.me. root.mail.gmail.com. (
                        2012070401;
                        3H;
                        10M;
                        1W;
                        1D );
@      IN     NS     ns.web.haiyun.me.
ns     IN     A     184.164.141.188 #本子域NS地址要和主域定义的相同
www     IN     A     184.164.141.188

Ping测试:

ping www.web.haiyun.me
PING www.web.haiyun.me (184.164.141.188) 56(84) bytes of data.
64 bytes from 184.164.141.188: icmp_seq=1 ttl=57 time=19.1 ms

Centos6安装配置DNS服务器Bind

发布时间:July 5, 2012 // 分类:DNS // No Comments

DNS服务器分为三种:

缓存DNS:负责接收缓存用户DNS请求,查询通过转发DNS服务器,一般家用路由带这种DNS。
递归DNS:普通用户最常接触的就是递归DNS了,用于递归查询域名所对应的IP地址,一般都是使用运营商提供的DNS。
权威DNS:包含根DNS,权威域名DNS,当用户通过递归DNS查询域名对应IP的时候就要向权威DNS查询。

本文要介绍的是权威DNS服务器的安装配置,用于提供对域名的解析服务。
Centos6下BIND安装:

#https://www.haiyun.me
yum install bind

Centos5下BIND安装:

yum install bind 
cp -a /usr/share/doc/bind-9.3.6/sample/etc/* /etc/
cp -a /usr/share/doc/bind-9.3.6/sample/var/named/* /var/named/

配置为本地缓存转发DNS服务器:

cat /etc/named.conf
options {
    listen-on port 53 { 127.0.0.1; };
    directory     "/var/named"; 
    allow-query     { localhost; }; #仅允许本地查询
    recursion yes; #允许递归查询
        forward only;  #仅转发
        forwarders {
                8.8.8.8; #转发查询DNS服务器
                4.4.4.4;
        };

};

配置为域名解析权威服务器,根据view功能对内提供递归查询服务,对外提供域名解析服务,需在域名注册商处理更改DNS服务器,如ns1.haiyun.me。

//全局设置
options {
    listen-on port 53 { any; };
    directory     "/var/named";
};

//日志设置
logging {
        channel default_debug {
                file "data/named.run";
                print-time        yes;
                severity dynamic;
        };
        channel query_log {
                file "data/query.log" versions 3 size 20m;
                severity  info;
                print-time        yes;
                print-category  yes;
                };
                category queries {
                query_log;
        };
};

//匹配本机
view localhost {
    match-clients      { localhost; };
    allow-query      { any; };
    recursion yes;  //允许递归查询,即本地DNS缓存服务器
    include "/etc/named.rfc1912.zones"; //调用根服务器及本地
};


//匹配外网
view  external
{
    match-clients    { any; };
        allow-query     { any; };
    recursion no; //非递归服务器
        allow-transfer  { none; }; //不允许传送
    allow-query-cache { any; };

zone "haiyun.me" { 
        type master;
        file "haiyun.me";
        };
};

正解配置:

$ORIGIN haiyun.me //此参数配合下面@,无设置为主配置文件内zone参数
$TTL 600          //SOA ns用于主从判断权威服务器 
@                       IN SOA   ns1.haiyun.me. mail.haiyun.me. ( 
                        2012070401; #序号,slave判断是否下载
                        3H; #更新频率
                        10M; #失败重新连接时间
                        1W; #失效时间
                        1H ); #TTL时间
@      IN     NS     ns1.haiyun.me.  //授权ns服务器
@      IN     NS     ns2.haiyun.me.
ns1     IN     A     1.2.3.4
ns2     IN     A     1.2.3.4
www     IN     A     1.2.3.4

配置完成启动named服务,如有配置iptables需开启udp53端口,为稳定可配置主从同步DNS服务器

/etc/init.d/named start
iptables -p upd --dport 53 -j ACCEPT

验证是否生效:

dig -t ns www.haiyun.me
;; QUESTION SECTION:
;www.haiyun.me.            IN    NS

;; ANSWER SECTION:
www.haiyun.me.        600    IN    NS    ns1.haiyun.me.
www.haiyun.me.        600    IN    NS    ns2.haiyun.me.

;; ADDITIONAL SECTION:
ns1.haiyun.me.        600    IN    A    1.2.3.4
ns2.haiyun.me.        600    IN    A    1.2.3.4

Centos5安装配置Xen虚拟化环境

发布时间:July 4, 2012 // 分类:虚拟化 // No Comments

OpenVZ安装可参考:Centos6.2安装配置OpenVZ虚拟化环境
Xen安装:

#https://www.haiyun.me
yum install kernel-xen xen

修改GRUB以Xen内核启动:

vim /boot/grub/menu.lst 
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-308.8.2.el5xen)
    root (hd0,0)
    kernel /xen.gz-2.6.18-308.8.2.el5
    module /vmlinuz-2.6.18-308.8.2.el5xen ro root=/dev/VolGroup00/LogVol00
    module /initrd-2.6.18-308.8.2.el5xen.img

关闭SELinux

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

重新启动系统:

reboot

重新登录验证Xen是否正常运行:

uname -a|grep xen
xm list

新建Xen虚拟机,如果服务器CPU支持全虚拟化可直接使用ISO安装Xen虚拟机,CPU支持半虚拟机要使用网络安装,如果有相应的Xen模板可直接使用模板新建。
本次以网络安装Centos5.8为例,可将下载的ISO解压至本地电脑,以127.0.0.1/iso安装,也可以通过互联网安装,如http://mirrors.163.com/centos/5.8/os/i386/

mkdir /vm #新建VM目录
dd if=/dev/zero of=/vm/101.img bs=1M count=10240 #新建虚拟机硬盘文件,10G
virt-install -n vm101 -r 128 -f /vm/101.img --nographics -p -l http://mirrors.163.com/centos/5.8/os/i386/
-n #虚拟机名称
-r #虚拟机内存
-f #虚拟机文件
--nograhics #无X环境,以字符界面安装

Xen虚拟机管理:

xm list #列出VM列表
xm start vm101 #启动虚拟机
xm shutdown vm 101 #关闭虚拟机
xm console vm01 #打开虚拟机管理界面
分类
最新文章
最近回复
  • opnfense: 谢谢博主!!!解决问题了!!!我之前一直以为内置的odhcp6就是唯一管理ipv6的方式
  • liyk: 这个方法获取的IPv6大概20分钟之后就会失效,默认路由先消失,然后Global IPV6再消失
  • 海运: 不好意思,没有。
  • zongboa: 您好,請問一下有immortalwrt設定guest Wi-Fi的GUI教學嗎?感謝您。
  • 海运: 恩山有很多。
  • swsend: 大佬可以分享一下固件吗,谢谢。
  • Jimmy: 方法一 nghtp3步骤需要改成如下才能编译成功: git clone https://git...
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...
归档