PDNS (PowerDNS) 4.2 시스템 로그 및 쿼리 로그 설정
PDNS 로그를 수집하고자 할때 아래와 같이 설정하면 됩니다.
아래는 PDNS 4.2 에서 테스트 하였습니다.
1. 설정
데몬 구동 파일을 백업하고 수정합니다.
# cp -arp /usr/lib/systemd/system/pdns.service /usr/lib/systemd/system/pdns.service.bak
# vi /usr/lib/systemd/system/pdns.service
... [Service] Type=notify # rsyslog 사용하도록 아래 --disable-syslog 옵션 삭제 ExecStart=/usr/sbin/pdns_server --guardian=no --daemon=no --disable-syslog --log-timestamp=no --write-pid=no # rsyslog 설정으로 넘겨주도록 아래 설정 추가 SyslogFacility=local0 SyslogLevel=debug ... |
PDNS 설정을 추가합니다.
# vi /etc/pdns/pdns.conf
... logging-facility=0 log-dns-details=yes # DNS 설정 상 잘못된 세부 정보 로깅 log-dns-queries=yes # 유입되는 모든 질의 로깅 loglevel=5 ... |
rsyslog 설정을 추가합니다.
서비스 데몬 설정 상 debug level 로 해놓아서 아래 로깅 설정이 중요합니다.
vi /etc/rsyslog.conf
... local0.=info /var/log/pdns/pdns.info local0.=warn /var/log/pdns/pdns.warn local0.=err /var/log/pdns/pdns.err local0.=debug /var/log/pdns/pdns.debug ... |
로그 디렉토리를 생성합니다.
# mkdir /var/log/pdns
2. 적용
# systemctl daemon-reload
# systemctl restart pdns
# systemctl restart rsyslog
3. 확인
# cd /var/log/pdns
# ll
합계 145288
drwxr-xr-x 2 root root 4096 3월 29 09:41 .
drwxr-xr-x. 9 root root 4096 3월 29 16:37 ..
-rw------- 1 root root 147126477 3월 30 07:46 pdns.debug
-rw------- 1 root root 998 3월 29 09:30 pdns.err
-rw------- 1 root root 1331 3월 29 09:27 pdns.info
-rw------- 1 root root 1619633 3월 29 09:39 pdns.warn
pdns.debug 파일에 도메인 질의했던 Remote IP 와 Record Type, Domain name 등 정보가 간략히 출력되는데
참고로 packetcache 값은 아래 의미를 가지고 있습니다.
- HIT : 이전에 처리된 DNS 쿼리 결과가 캐시에 저장되어 있고, 현재 처리중인 쿼리와 동일한 결과를 반환할 수 있습니다.
이 경우, pdns 서버는 저장된 정보를 즉시 반환하므로, 쿼리 처리 시간이 매우 빠릅니다.
- MISS : 이전에 처리된 DNS 쿼리 결과가 캐시에 없으며, 실제 DNS 서버에서 새로운 쿼리를 처리해야 합니다.
이 경우, pdns 서버는 실제 DNS 서버로부터 결과를 가져와서 반환해야 하므로, 쿼리 처리 시간이 증가할 수 있습니다.
* 참고
도메인 질의가 많은 서버의 경우 로그 파일 사이즈도 방대하게 늘어나기 때문에
아래 URL 참고하여 logrotate 로 로그 파일을 관리 하면 됩니다.
(내용중 PDNS 설정 부분 참조)
'리눅스 > DNS' 카테고리의 다른 글
Ubuntu 22.04 에서 NSD 4.8.0 설치하기 (0) | 2023.12.19 |
---|---|
Ubuntu 22.04 에서 MaraDNS 3.5.0036 설치하기 (0) | 2023.12.17 |
네임서버 DNS 퍼포먼스 테스트 (dnsperf) (0) | 2023.03.28 |
[TIP] Docker 룰이 포함된 iptables 룰 저장 및 복구 (0) | 2022.12.22 |
bind 9 설치 (Ubuntu 19.04) (0) | 2019.10.29 |