常见的资源记录类型:
A :Address地址, IPv4
AAAA:Address地址 IPv6
NS :Name Server域名服务器
SOA:Start of Authority 起始授权机构
MX:Mail Exchanger 邮件交换
CNAME:Canonical Name规范名
PTR:Pointer 指针,即反向DNS系统,用于查询IP地址时给出相关的域名,即查询IP地址的PTR记录给出该IP指向的域名,在 Zone 文件中被设置;
TXT:Text,网络名称系统的记录,可讲文字信息提供给网络意外的来源,其中有一个非常重要的功能就是当外部查询需要显示BIND的相关版本号时,可以指定 TXT查询,这个配置是默认的;谷歌会使用 TXT 记录来验证网站的拥有权以及确保电子邮件的安全;
SRV:Service 记录,域名中用于指定服务器并提供服务的位置:主机好、端口号;一般在 Zone File 中被定义;
1、A和AAAA记录
bind9添加A、AAAA记录
在arcor.de.db区域文件里面添加2行
0211.sip IN A 172.31.26.253
0211.sip IN AAAA 2a01:d0:838e::26:253
dnsmasq添加A、AAAA记录
在/etc/dnsmasq.hosts中添加两行
172.31.26.253 0211.sip.arcor.de
2a01:d0:838e::26:253 0211.sip.arcor.de
2、添加SRV记录
SRV(Service record),描述数据的规范域名系统限定的位置,即,主机名和端口号,对于指定的服务的服务器。它在 RFC 2782 中定义,其类型代码为 33。某些因特网协议(如会话发起协议(SIP))和可扩展消息传递和呈现协议(XMPP)通常需要网络元素的SRV支持。
bind9添加SRV记录
在arcor.de.db区域文件里面添加2行
0211.sip IN A 172.31.26.253
0211.sip IN AAAA 2a01:d0:838e::26:253
_sip._udp.0211.sip SRV 10 0 5060 0211.sip.arcor.de.
指向0211.sip.arcor.de的服务器,在 UDP 端口 5060 上侦听 SIP 协议服务。这里优先级给出 10,权重为0,SRV 记录中的目标必须指向具有地址记录(A 或 AAAA)的主机名。不能指向有CNAME 的主机名。
记录格式
_service._proto.name. TTL Class SRV Priority Weight Port Target.
service:所需服务器的符号,如:sip
proto:所需服务的传输协议,通常是 TCP 或 UDP。
name:此记录有效的域名,以 . 结束。
TTL:标准 DNS TTL 字段。
Class:标准 DNS class 字段,如:IN。
Priority:目标主机的优先级,值低的优先。
Weight:具有相同优先级的记录的相对权重,值高的优先。
Port:该服务的 TCP 或 UDP 端口,如:5060
Target:提供服务的机器的规范主机名,以 . 结束。
dnsmasq添加SRV记录
在/etc/dnsmasq.conf中添加一行
srv-host=_sip._udp.0211.sip.arcor.de,0211.sip.arcor.de,5060,10
记录格式
srv-host=_service._proto.Target,Target,Port,Priority,Weight
功能验证:
nslookup
> set type=all
> _sip._udp.0211.sip.arcor.de
服务器: UnKnown
Address: 2600:80a:458:2104::1
_sip._udp.0211.sip.arcor.de SRV service location:
priority = 10
weight = 0
port = 5060
svr hostname = 0211.sip.arcor.de
0211.sip.arcor.de internet address = 172.31.26.253
0211.sip.arcor.de AAAA IPv6 address = 2a01:d0:838e::26:253
3、添加CNAME记录
CNAME-records ( Canonical name for an alias )是域名的别名。一个服务器的域名地址 nyc3.example.com 这个主机域名可能会提供不同的服务,比如说域名 nyc3.example.com 指向的主机即要去提供 web服务,也要提供 ftp 服务,那么这个时候就需要一个别名域名来指向原来的域名,这个时候就可以使用一个 A 记录来管理多个域名,为DNS后期修改配置提供方便
bind9添加CNAME记录
在arcor.de.db区域文件里面添加2行
0211.sip IN A 172.31.26.253
webserver IN CNAME 0211.sip
指向域名webserver.arcor.de实际指向是域名0211.sip.arcor.de对应的服务器地址
功能验证:
nslookup webserver.arcor.de
服务器: UnKnown
Address: 2600:80a:458:2104::1
名称: 0211.sip.arcor.de
Addresses: 2a01:d0:838e::26:253
172.31.26.253
Aliases: webserver.arcor.de
dnsmasq添加CNAME记录
在/etc/dnsmasq.conf中添加一行
cname=webserver.arcor.de,0211.sip.arcor.de
4、添加TXT记录
bind9添加TXT记录
在arcor.de.db区域文件里面添加一行
txt IN TXT "2a01::1"
功能验证
nslookup
> set type=all
> txt.arcor.de
服务器: UnKnown
Address: 2600:80a:458:2102::1
txt.arcor.de text =
"2a01::1"
dnsmasq添加TXT记录
在/etc/dnsmasq.conf中添加一行
txt-record=txt.arcor.de,"2a01::1"
5、添加NAPTR记录
bind9添加NAPTR记录
在区域文件里面添加
cat IN A 198.169.125.123
_sip._udp.srv.hztest.com. IN SRV 0 5 5060 cat.hztest.com.
hztest.com. IN NAPTR 100 50 "s" "SIP+D2U" "" _sip._udp.hztest.com.
发出的请求的域名是srv.hztest.com,经过NAPTR 得到_sip._udp.srv.hztest.com,通过SRV请求_sip._udp.srv.hztest.com.得出结果是cat.hztest.com,再通过A记录请求cat.hztest.com得出ip地址是198.169.125.123
没有找到dnsmasq添加NAPTR记录的说明文件,暂不知dnsmasq是否支持NAPTR配置
dnsmasq.conf:
#The following line shows how to make dnsmasq serve an arbitrary PTR
#record. This is useful for DNS-SD. (Note that the domain-name
#expansion done for SRV records _does_not #occur for PTR records.)
#ptr-record=_http._tcp. dns-sd-services,"New Employee Page._http._tcp.dns-sd-services"
6、添加PTR记录
PTR (Pointer Record),指针记录,是电子邮件系统中的一种数据类型,被互联网标准文件RFC1035所定义。与其相对应的是A记录、地址记录,二者组成邮件交换记录
A记录解析域名到IP地址,而PTR记录解析IP地址到域名。
bind9添加PTR记录
配置反向zone
zone "0.168.192.in-addr.arpa" IN {
type master;
file "/etc/bind/db/0.168.192.in-addr.db ";
};
cat /etc/bind/db/0.168.192.in-addr.db //查看区域的解析文件
0.168.192.in-addr.arpa. 600 IN SOA ns1.host.com. chai.simplefish.cn. (
202212101 ;序列号,每次更新记录则需要修改
10800 ;刷新时间,没隔多久到主服务器更新一次
900 ;重试时间,应该小于刷新时间
604800 ;过期时间,当辅助dns服务器无法联系主服务器的时间
86400 ;非权威应答的ttl,缓存DNS记录多长时间
)
0.168.192.in-addr.arpa. 600 IN NS ns1.host.com.
100.0.168.192.in-addr.arpa. 600 IN PTR dns.host.com.
100.0.168.192.in-addr.arpa. 600 IN PTR bind.host.com.
100.0.168.192.in-addr.arpa. 600 IN PTR www.host.com.
功能验证
nslookup
> set type=PTR //设置类型为PTR反向解析记录
> 192.168.0.100
服务器: [192.168.0.100]
Address: 192.168.0.100
100.0.168.192.in-addr.arpa name = dns.host.com
100.0.168.192.in-addr.arpa name = www.host.com
100.0.168.192.in-addr.arpa name = bind.host.com
0.168.192.in-addr.arpa nameserver = ns1.host.com
ns1.host.com internet address = 192.160.0.100
dnsmasq添加PTR记录
在/etc/dnsmasq.conf中添加一行
ptr-record=192.168.0.100,dns.host.com