我正在尝试在我的 DynDNS 域下设置多个站点。我有一个动态 IP,我唯一的域名是来自 dydns 的免费域名,例如 username.dyndns.org。
我只有一台服务器,但我希望能够从这台服务器托管多个站点。
这是我为 bind 设置的,
zone "username.dyndns.org" {
allow-query { any; };
type master;
file "/etc/bind/db.username.dyndns.org";
};
/etc/bind/db.用户名.dyndns.org
$TTL 1d;
$ORIGIN username.dyndns.org. ;
@ IN SOA ns.username.dyndns.org. joe.username.dyndns.org. (
2011051300 ; serial number
3h ; refresh
10m ; retry
1w ; expiry
3h ; minimum
)
@ IN NS ns.username.dyndns.org.
www IN CNAME username.dyndns.org.
mysite IN CNAME www
当我这样做时$ nslookup mysite.username.dyndns.org username.dyndns.org
,我得到:
Server: username.dyndns.org
Address: 12.23.56.78#53
mysite.username.dyndns.org canonical name = www.username.dyndns.org.
Name: www.username.dyndns.org
Address: 12.23.56.78
但如果我这样做,nslookup mysite.username.dyndns.org
我会得到 NXDOMAIN。
结果如下dig @username.dyndns.org mysite.username.dyndns.org
:
; <<>> DiG 9.7.3 <<>> @username.dyndns.org mysite.username.dyndns.org
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30676
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2
;; QUESTION SECTION:
;mysite.username.dyndns.org. IN A
;; ANSWER SECTION:
mysite.username.dyndns.org. 86400 IN CNAME www.username.dyndns.org.
www.username.dyndns.org. 86400 IN A 12.23.56.78
;; AUTHORITY SECTION:
username.dyndns.org. 86400 IN NS localhost.
;; ADDITIONAL SECTION:
localhost. 604800 IN A 127.0.0.1
localhost. 604800 IN AAAA ::1
;; Query time: 1 msec
;; SERVER: 12.23.56.78#53(12.23.56.78)
;; WHEN: Sat May 14 11:23:49 2011
;; MSG SIZE rcvd: 153
但如果我这样做,我不会得到答案,dig mysite.username.dyndns.org
尽管我得到了答案dig username.dyndns.org
我不知道还能尝试什么。有什么想法吗?
注:为了保护无辜者,姓名和地址均已更改。
答案1
免费的 dyndns 不支持此功能,您需要通配符支持 - 在 dyndns.com 上它不再是免费的。
名称服务器需要固定的 IP 地址,但通配符支持就足够了 - 您这边不需要名称服务器。