在Linux DNS服务器上配置多个域名,通常需要以下几个步骤:
安装DNS服务器软件: 首先,确保你的Linux系统上已经安装了DNS服务器软件,比如BIND(Berkeley Internet Name Domain)。
sudo apt update
sudo apt install bind9 bind9utils bind9-doc
配置主配置文件:
编辑BIND的主配置文件/etc/bind/named.conf
。
sudo nano /etc/bind/named.conf
包含区域文件:
在named.conf
文件中,包含你要配置的域名对应的区域文件。例如,如果你有两个域名example.com
和test.com
,你需要创建两个区域文件/etc/bind/db.example.com
和/etc/bind/db.test.com
。
include "/etc/bind/db.example.com";
include "/etc/bind/db.test.com";
创建区域文件:
创建每个域名的区域文件,并添加DNS记录。例如,创建/etc/bind/db.example.com
文件并添加以下内容:
$TTL 604800
@ IN SOA ns1.example.com. admin.example.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.example.com.
ns1 IN A 192.168.1.1
www IN A 192.168.1.2
创建/etc/bind/db.test.com
文件并添加以下内容:
$TTL 604800
@ IN SOA ns1.test.com. admin.test.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.test.com.
ns1 IN A 192.168.2.1
www IN A 192.168.2.2
重启BIND服务: 保存并退出配置文件后,重启BIND服务以应用更改。
sudo systemctl restart bind9
验证配置:
使用named-checkzone
工具验证区域文件的配置是否正确。
sudo named-checkzone example.com /etc/bind/db.example.com
sudo named-checkzone test.com /etc/bind/db.test.com
防火墙设置: 确保你的防火墙允许DNS查询流量。例如,如果你使用的是UFW防火墙,可以运行以下命令:
sudo ufw allow 53/tcp
sudo ufw allow 53/udp
通过以上步骤,你应该能够在Linux DNS服务器上成功配置多个域名。