安裝BIND軟件這裏就不介紹,動態域名更新可以採用named自帶的nsupdate來更新。這裏只介紹linux系統下的配置方法。
密鑰有HOST和USER兩種。
一、HOST密鑰生成方法
1. 生成密鑰
dnssec-keygen –a HMAC-MD5 –b 128 –n HOST <keyname>
例如: keyname是camera.home-live.com
2. 察看密鑰
生成兩個密鑰文件,以K開頭
例如:
Kcamera.live-home.cn.+157+39156.key
和Kcamera.live-home.cn.+157+39156.private
察看以*.private結尾的文件,如下:
cat Kcamera.live-home.cn.+157+39156.private
Private-key-format: v1.2
Algorithm: 157 (HMAC_MD5)
Key: pTn/SfKOFw9LNBBL4BGppA==
3. 在named.conf中配置密鑰
# TSIG keys
#
# MDC
key camera.live-home.cn {
algorithm HMAC-MD5.SIG-ALG.REG.INT;
secret "pTn/SfKOFw9LNBBL4BGppA==" ;
};
# 密鑰就是*.private文件中的密鑰
4. 在named.conf中配置動態子域
# Dynamic subdomains
#
zone "camera.live-home.cn" in {
type master;
file "Dynamic/camera.live-home.cn";
allow-update {key camera.live-home.cn;};
allow-transfer {key camera.live-home.cn;};
};
子域file中配置和普通的子域文件一樣
5. 本地動態域添加測試
nsupdate –y keyname:secret
本例:nsupdate –y camera.live-home.cn:pTn/SfKOFw9LNBBL4BGppA==
>prereq nxdomain lll.camera.live-home.cn
> update add lll.camera.live-home.cn 600 A 200.10.1.12
>
檢查Dynamic/camera.live-home.cn文件,可以發現增加了一條記錄
lll IN A 200.10.1.12
用ping或nslookup測試
6. 遠程測試:
DDNS客戶端
1、先創建一個用戶ddns-1#useradd ddns-12、生成密碼#dnssec-keygen -a HMAC-MD5 -b 128 -n USER ddns-1在當前目錄下生成了兩個文件:Kddns-1.+157+59363.keyKddns-1.+157+59363.private3、配置DNS#vi /etc/named.conf添加以下內容:key ddns-1 {algorithm HMAC-MD5.SIG-ALG.REG.INT;secret /lvRdT0bks+YnGOxmx1hGA==;};其中secrect後的內容是用vi打開Kddns-1.+157+59363.private後,拷貝里面的密碼文件得來的!
附:NSUPDATE命令如下:
prereq yxrrset domain name type
prereq nxrrset domain name type
prereq yxdomain domain name
prereq nxdomain domain name
update delete domain name [type] [rdata]
update add domain name ttl [class] type rdata
看起來似乎挺複雜,其實很容易。prereq 表示預先必須符合的條件,yxrrset表示存在記錄,nxrrset表示不存在記錄,而yxdomain則表示存在域名了。
prereq nxrrset domain name type
prereq yxdomain domain name
prereq nxdomain domain name
update delete domain name [type] [rdata]
update add domain name ttl [class] type rdata
看起來似乎挺複雜,其實很容易。prereq 表示預先必須符合的條件,yxrrset表示存在記錄,nxrrset表示不存在記錄,而yxdomain則表示存在域名了。