# 安装BIND软件包
sudo apt-get update
sudo apt-get install bind9
# 配置主配置文件 /etc/bind/named.conf.options
cat <<EOL | sudo tee /etc/bind/named.conf.options
options {
directory "/var/cache/bind";
// 如果你使用防火墙,确保允许53端口的流量
listen-on-v6 { any; };
listen-on { any; };
allow-query { any; };
// DNS转发器(可选)
forwarders {
8.8.8.8; # Google DNS
8.8.4.4;
};
dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
EOL
# 创建区域文件配置 /etc/bind/named.conf.local
cat <<EOL | sudo tee /etc/bind/named.conf.local
zone "example.com" {
type master;
file "/etc/bind/db.example.com";
};
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192";
};
EOL
# 创建正向解析文件 /etc/bind/db.example.com
cat <<EOL | sudo tee /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.100 ; DNS服务器IP地址
www IN A 192.168.1.101 ; Web服务器IP地址
EOL
# 创建反向解析文件 /etc/bind/db.192
cat <<EOL | sudo tee /etc/bind/db.192
\$TTL 604800
@ IN SOA ns1.example.com. admin.example.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.example.com.
100 IN PTR ns1.example.com.
101 IN PTR www.example.com.
EOL
# 重启BIND服务以应用更改
sudo systemctl restart bind9
# 检查BIND服务状态
sudo systemctl status bind9
apt-get安装BIND9,这是Linux下常用的DNS服务器软件。/etc/bind/named.conf.options文件,设置监听地址、允许查询的客户端和DNS转发器等选项。/etc/bind/named.conf.local中定义正向和反向解析区域,并指定对应的区域文件路径。/etc/bind/db.example.com文件,定义域名到IP地址的映射关系。/etc/bind/db.192文件,定义IP地址到域名的映射关系。以上代码可以帮助你在Linux系统上搭建一个简单的DNS服务器。
上一篇:linux安装rz命令
下一篇:linux查看jar包内文件内容
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站