Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103009
  • 博文数量: 42
  • 博客积分: 1445
  • 博客等级: 上尉
  • 技术积分: 380
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-28 13:57
文章分类

全部博文(42)

文章存档

2010年(10)

2009年(32)

我的朋友

分类:

2009-09-15 21:09:19

配置DDNS附带一些应用

参考了徐秉義(Albert Hsu)的相关文章和蔡松caisong先生以及网络上的各类DDNS文章,我自己也做了一下实验来丰富我的手感。

我是在的基础上继续作的实验,多余的东西就不再说了。

DDNS(Dynamic Domain Name Server)是动态域名服务的缩写!DDNS是将用户的动态IP地址映射到一个固定的域名解析服务上,用户每次连接网络的时候客户端程序就会通过信息传 递把该主机的动态IP地址传送给位于服务商主机上的服务器程序,服务项目器程序负责提供DNS服务并实现动态域名解析

备注:很多域名商的域名解析系统也不是实时刷新的。一般会设置下时间,比如10分钟.就是说,你设置了一个新的A记录以后,域名服 务器会在10分钟内为你 添加。目的就是为了节约服务器资源。怕客户的DNS不断的刷新记录。刷新记录肯定需要消耗一定的资源。而且刷新过程中是不能解析的。另外刷新过程大概5 秒。就是说这个5秒内域名商的的DNS是不能用的。

>>>>>>>>>>>>>>
—-master DNS 192.168.135.129
vi /var/named/chroot/etc/named.conf

options {

directory        “/var/named”;
dump-file       “/var/named/data/cache_dump.db”;
statistics-file “/var/named/data/named_stat.txt”;
pid-file        “/var/run/named/named.pid”;

allow-query     { any; };
allow-transfer  { none; };
};

zone    “yuan.org” IN {
type master;
file “data/yuan.org.zone”;  —也要关注一下这里,前面说过这里是正反库文件
因为…./var/named 权限是不够的,因为执行named
是需要named用户有写入的权限,当然你自己可以
改,但是要时刻注意权限,这里有个data的文件夹,就
用来放这个的,多方便
allow-transfer  { 192.168.135.128; };
allow-update { localhost; };   —-这个才是重点,这个东西就是代表了允许更
新,这里表示的是允许本机更新
};
zone    “135.168.192.in-addr.arpa” IN {
type master;
file “data/135.168.192.zone”;
allow-transfer  { 192.168.135.128; } ;
allow-update { localhost; };
};
这里有allow-transfer,是因为做了主从,不过无所谓

>>>>>>>>

正解反解的库文件都放进来了

[root@localhost ~]# cd /var/named/chroot/var/named/data/
[root@localhost data]# ll
总计 44
-rw-r–r– 1 named  named   271 05-07 11:08 135.168.192.zone
-rw-r–r– 1 named named  4773 05-06 14:24 named_mem_stats.txt
-rw-r–r– 1 named named 18430 05-06 14:24 named.run
-rw-r–r– 1 named named   351 05-07 15:18 yuan.org.zone
因为还没有开始 所以你是看不到DDNS的特色文件jnl

>>>>>>>

nsupdate 在ddns状态下,因为会产生jnl文件,如果你直接去编辑记录文件的话,因为

会出现冲突,你必须先停止named,然后删除jnl文件,再修改记录文件,再启动,这样不仅麻烦,而且未必什么时候都是实验环境DNS可以停.所以在新版本的bind(一般是8.3后)

提供nsupdate 这个动态更新命令

正解

[root@localhost data]# nsupdate    —在master 192.168.135.129下
> server 127.0.0.1   —设置了是allow-update   localhost
> zone yuan.org
> update add test.yuanl.org A 21600 192.168.135.129
ttl ‘A’: not a valid number  —-格式要对
> update add test.yuan.org 21600 A 192.168.135.129
> show   ————检查,错的的话 虽然不能返回,但是你可以del,再add
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:      0
;; flags: ; ZONE: 0, PREREQ: 0, UPDATE: 0, ADDITIONAL: 0
;; UPDATE SECTION:
test.yuan.org.          21600   IN      A       192.168.135.129  —这里是举例,其实

192.168.135.129是

master
> send
> quit

等待几秒后

[root@localhost data]# cat yuan.org.zone
$ORIGIN .
$TTL 86400      ; 1 day
yuan.org                IN SOA  ns.yuan.org. root.yuan.org. (
2009052210 ; serial   —–这里这个serial标准数字增加了1,

这个是用来作axfr或者ixfr定义的

不明白在看看跟

10800      ; refresh (3 hours)
900        ; retry (15 minutes)
604800     ; expire (1 week)
86400      ; minimum (1 day)
)
NS      ns.yuan.org.
NS      slave.yuan.org.
$ORIGIN yuan.org.
ns                      A       192.168.135.129
slave                   A       192.168.135.128
$TTL 21600      ; 6 hours     ————刚才的设置
test                    A       192.168.135.129

[root@localhost data]# ll
总计 48
-rw-r–r– 1 named named   271 05-07 11:08 135.168.192.zone
-rw-r–r– 1 named named  4773 05-06 14:24 named_mem_stats.txt
-rw-r–r– 1 named named 18430 05-06 14:24 named.run
-rw-r–r– 1 named named   397 05-07 23:22 yuan.org.zone
-rw-r–r– 1 named named   701 05-07 23:08 yuan.org.zone.jnl !!>< ><

摘录一下caisong先生的

server  指向某一台 NameServer 進行 update 操作
zone    修改某個 zone file
update delete  進行 update 的 delete 動作,這個指令格式是
update delete FQDN TYPE RDATA,如果有多筆相同的 A
記錄或不同的 MX 記錄要刪除某一筆需將 RDATA 補上,
若沒有 RDATA 則表示這個 FQDN 的這個 TYPE 都要刪除
(TYPE 即是 A,MX,PTR,SOA,NS..等,RDATA 就是 TYPE 後
接的東西,如 A 的 RDATA 是 IP 而 MX 的 RDATA 是 優
先權 FQDN)
update add     進行記錄的增加,操作如同 delete, 但是一定要有
TTL 值,且必需明確寫出 RDATA
show    這只是操作後要顯示進行了那些 update 指令
send    這個代表要把整個 update 指令送給 server,操作 update
時資料不是馬上送出的,所以 update 可以很多行,最後
nsupdate 看到 send 時,才會將整個所有 update 送出,
而 update 使用 port 53/udp 若送出的資料量 (DNS packet)
大於 512 bytes,則會 truncate 而改使用 53/tcp,這是您
需要注意的地方,而只要您有 send, 則 SOA 記錄的 serial
會自動加1,以期讓 slave 來進行同步,所以過多的 send 可
能造成過多的 traffic

>>>>>>>>>>

测试

[root@localhost data]# dig -x 192.168.135.129 因为我们没有做反解,所以也是

反解是ns.yuan.org

; <<>> DiG 9.3.4-P1 <<>> -x 192.168.135.129
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8360
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;129.135.168.192.in-addr.arpa.  IN      PTR

;; ANSWER SECTION:
129.135.168.192.in-addr.arpa. 86400 IN  PTR     ns.yuan.org.

;; AUTHORITY SECTION:
135.168.192.in-addr.arpa. 86400 IN      NS      slave.yuan.org.
135.168.192.in-addr.arpa. 86400 IN      NS      ns.yuan.org.

;; ADDITIONAL SECTION:
ns.yuan.org.            86400   IN      A       192.168.135.129
slave.yuan.org.         86400   IN      A       192.168.135.128

;; Query time: 5 msec
;; SERVER: 192.168.135.129#53(192.168.135.129)
;; WHEN: Fri May  8 00:03:05 2009
;; MSG SIZE  rcvd: 137

[root@localhost data]# dig test.yuan.org @192.168.135.129 —虽然我的resolver已经设定好,但是习惯总还是好的.用@做指定向哪个查询

; <<>> DiG 9.3.4-P1 <<>> test.yuan.org @192.168.135.129
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 9509
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;test.yuan.org.                 IN      A

;; ANSWER SECTION:
test.yuan.org.          21600   IN      A       192.168.135.129

;; AUTHORITY SECTION:
yuan.org.               86400   IN      NS      ns.yuan.org.
yuan.org.               86400   IN      NS      slave.yuan.org.

;; ADDITIONAL SECTION:
ns.yuan.org.            86400   IN      A       192.168.135.129
slave.yuan.org.         86400   IN      A       192.168.135.128

;; Query time: 8 msec
;; SERVER: 192.168.135.129#53(192.168.135.129)
;; WHEN: Fri May  8 00:03:34 2009
;; MSG SIZE  rcvd: 116
>>>>>>>>>>>>>>>>>

新版本的提供rndc freeze 冻结

修改完成后 用rndc unfreeze解除冻结

不过已经有了nsupdtae 我感觉这个东东还不知道哪里好用

阅读(969) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~