欢迎来到云服务器

Directadmin Linux面板

如何使用perl做一个大规模的DNS更新

如果您需要通过DirectAdmin逐个更改所有dns服务器,使用perl执行正则表达式(正则表达式)可以更简单地使用一个命令执行替换。 为此,您可以运行以下操作。 (用你自己的替换粗体)

cd /usr/local/directadmin/data/users
perl -pi -e 's/ns1.old.com/ns1.new.com/' */user.conf
perl -pi -e 's/ns2.old.com/ns2.new.com/' */user.conf
perl -pi -e 's/ns1.old.com/ns1.new.com/' */reseller.conf
perl -pi -e 's/ns2.old.com/ns2.new.com/' */reseller.conf

cd /var/named   #(or whatever the path to your *.db files is, eg: /etc/bind, /etc/named)
perl -pi -e 's/ns1.old.com/ns1.new.com/' *.db
perl -pi -e 's/ns2.old.com/ns2.new.com/' *.db

一旦完成更改,最好重写所有.db文件以更新串行数据,并触发与远程DNS系统的任何同步:

echo "action=rewrite&value=named" >> /usr/local/directadmin/data/task.queue

腾讯云代理

Copyright © 2003-2021 MFISP.COM. 国外vps服务器租用 梦飞云服务器租用 版权所有 粤ICP备11019662号