安装完PowerDNS之后,它
就已经在运行了。可通过
ps -ef |grep pdns
看到
pdns
的进程——通常
pdns
是有两个进程在运行的。
通过apt安装的PowerDNS,主要使用的文件在如下目录中:
/etc/default/pdns
/init.d/pdns
/powerdns/pdns.conf
/usr/bin/pdns_control
/sbin/pdns_server
/share/pdns_backend_mysql/...
/pdns_server/...
/doc/...
重点关注几个地方:
(1)/etc/init.d/pdns
通过
sudo service pdns --help
或
sudo /etc/init.d/pdns --
可以看看
pdns
服务都包含哪些命令(其实只要是后面的选项没有写对,就都能看到
pdns
的全部命令)。
PowerDNS
的命令有:
start
:启动服务。
stop
:停止服务。
force-stop
:强制停止服务。
restart
:重启服务。这里的重启只是重新开始运行pdns,如果pdns本身运行状态正常就有有可能不做变动。如果pdns设置的参数有变动,使用restart命令也可能不会有什么变化。
reload
:重新加载。
status
:查看服务运行状态(
is running
或
is not running
)。
monitor
:以监控模式启动服务。
monitor
模式是相当有用的。建议刚刚装好的
pdns
使用
sudo service pdns stop
先停止服务然后
sudo service pdns monitor
使用监控模式启动,看是否有错误。比如前面提到的
use-logfile
参数不存在,如果直接用
start
启动可以启动,但是不提示问题,用
monitor
就会直接报错。常见错误见网页:
https://doc.powerdns.com/md/authoritative/installation/
(其实就是官网的安装手册)
dump
:转存。dump命令会显示出当前DNS查询的一些数量,例如缓存命中数量,udp/tcp应答数量等等,可以通过这些数值来配置PowerDNS的参数。
show
:显示参数。需要在show后面指明具体要看哪一个参数。使用dump查询具体有哪些参数(觉得这个命令好无聊)。
mrtg
:一个监控网络链路流量负载的工具,可以通过写配置文件来使用。这个功能较为复杂,我也不会用,熟悉MRTG的同学可以通过官网来研究一下配置文件怎么写。官网地址:https://doc.powerdns.com/md/common/logging/#performance-monitoring
cricket
:官网没有介绍,启动脚本中这个参数跟show非常像。怀疑是未完成的功能。
(2)/usr/bin/pdns_control
这里也可以对
PowerDNS
进行一些控制,以及显示运行状态。既然是在/usr/bin中,就是直接作为命令来使用的。
https://doc.powerdns.com/md/manpages/pdns_control.1/
(3)/usr/sbin/pdns_server
这个命令也是PowerDNS的一种启动方式,带参数启动。参数实际上就是pdns.conf配置文件中的一部分。可通过
sudo pdns_server --help来查询帮助文档。
https://doc.powerdns.com/md/manpages/pdns_server.1/
其实PowerDNS的功能还是比较简单的,主要是通过参数调节,启动后就不用管太多,交给它自己解析DNS就好了。至于解析的过程,主要是通过后端的数据库查询来完成的。而具体的域名记录,可以直接写SQL语句来插入到数据库中,或者使用下一节介绍的Poweradmin来管理。