参考文章:https://blog.csdn.net/sdhzdtwhm/article/details/135910057
https://www.cnblogs.com/charnet1019/p/16005184.html
修改的地方:
yum install epel-release -y
yum install -y iptables iptables-services 需要下载最新的

镜像版本有了一定的修改,以及powerdns的端口修改成5300(因为要安装的pdns-recurosr是53端口)

[root@localhost powerdns]# cat /opt/powerdns/pdns/config/pdns.conf 
api=yes
api-key=qwerasdf
launch=gmysql
gmysql-host=pdnsdb
gmysql-port=3306
gmysql-dbname=pdns
gmysql-user=pdns
gmysql-password=pdns123
local-address=0.0.0.0
local-port=5300    #端口修改
webserver=yes
webserver-address=0.0.0.0
webserver-allow-from=0.0.0.0/0
webserver-port=8081
enable-lua-records=yes



[root@localhost powerdns]# cat docker-compose.yaml 
version: '3'
services:
  pdnsdb:
    image: mysql:5.7.35
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 123456
      MYSQL_DATABASE: pdns
      MYSQL_USER: pdns
      MYSQL_PASSWORD: pdns123
    volumes:
      - ./pdnsdb/data:/var/lib/mysql
      - ./pdnsdb/init-scripts:/docker-entrypoint-initdb.d
    networks:
      - pdns_net
  pdns:
    image: powerdns/pdns-auth-47:4.7.4
    restart: always
    user: root
    privileged: true
    environment:
      SECRET_KEY: qwerasdf
    ports:
      - "5300:5300/tcp"  #端口修改
      - "5300:5300/udp"  #端口修改
    volumes:
      - ./pdns/config:/etc/powerdns
    depends_on:
      - pdnsdb
    networks:
      - pdns_net
  pdnsadmindb:
    image: mysql:5.7.35
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 123456
      MYSQL_DATABASE: pdnsadmin
      MYSQL_USER: pdnsadmin
      MYSQL_PASSWORD: pdnsadmin123
    volumes:
      - ./pdnsadmindb/data:/var/lib/mysql
    networks:
      - pdns_net
  pdnsadmin:
    image: powerdnsadmin/pda-legacy:v0.3.0 #镜像版本
    restart: always
    ports:
      - "9191:80"
    environment:
      - SQLALCHEMY_DATABASE_URI=mysql://pdnsadmin:pdnsadmin123@pdnsadmindb/pdnsadmin
      - GUNICORN_TIMEOUT=60
      - GUNICORN_WORKERS=2
      - GUNICORN_LOGLEVEL=DEBUG
    depends_on:
      - pdns
      - pdnsadmindb
    networks:
      - pdns_net
networks:
  pdns_net:
    driver: bridge


在这里插入图片描述

安装pdns-recursor:
yum install pdns-recursor -y

[root@localhost pdns-recursor]# cat /etc/pdns-recursor/recursor.conf
allow-from=0.0.0.0/0,::/0      #对应权威服务器的allow-recursion 允许哪些ip进行递归
forward-zones-file=/etc/pdns-recursor/zones
forward-zones-recurse=.=223.5.5.5, .=114.114.114.114           # 除forward-zones外其他所有的请求发至223.5.5.5, 114.114.114.114
local-address=0.0.0.0         #对应权威服务器的local-address
local-port=53
setgid=pdns-recursor
setuid=pdns-recursor
[root@localhost pdns-recursor]# cat zones 
test-source.app.cn=192.168.109.169:5300
local-source.app.cn=192.168.109.169:5300
[root@localhost pdns-recursor]# 


每次添加zones后:需要重启pdns-recursor
systemctl restart  pdns-recursor
设置成开机自启:
systemctl enable pdns-recuror

在交换机中将修改dns为powerdns的ip
设置成功后,如何测试:
1.windows机器中:
nslookup source.app.cn 192.168.109.169
nslookup source.app.cn
ping source.app.cn
可以通过手动设置windows的dns为192.168.109.169,进行调试。ipconfig -all查看windows的dns
2.centos中,配置DNS1为192.168.109.169,重启网络,ping source.app.cn

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐