본문 바로가기

스크립트

dns-check.sh 스크립트

반응형

dns-check.sh 스크립트

dns-check.sh 스크립트 생성

vim dns-check.sh
#!/bin/bash

# DNS 서버 로그 분석 및 IP 통계 스크립트

logfile="/var/named/named.recursing"  # DNS 로그 파일 경로
CUR_DATE=`date '+%Y%m%H%M%S'`  # 현재 날짜 및 시간

echo
echo
echo "---------rndc stats---------------"
/usr/sbin/rndc status | grep recursive  # rndc 상태 확인
/usr/sbin/rndc recursing  # 재귀 요청 목록 출력
echo "----------------------------------"
echo
echo
echo "--------IP COUNTING---------------"
# 로그 파일에서 IP 주소 추출 및 통계 정보 생성
cat $logfile | awk '{print $3}' | grep : | cut -d "#" -f1 | sort -r | uniq -c | sort -r
echo "----------------------------------"

# 총 재귀 클라이언트 수 출력
echo "TOTAL: `cat $logfile | grep \# | wc -l` recursive clients!!"
echo "----------------------------------"
echo
echo
# 로그 파일 백업
cp $logfile /var/named/chklog/named.recursing.$CUR_DATE
chmod +x dns-check.sh

위의 스크립트는 DNS 서버 로그를 분석하고 IP 통계 정보를 생성하는 기능을 수행합니다. 스크립트는 rndc 명령어를 사용하여 재귀 상태와 재귀 요청 목록을 확인하고, 로그 파일에서 IP 주소를 추출하여 통계 정보를 생성합니다. 마지막으로 총 재귀 클라이언트 수를 출력하고, 로그 파일을 백업합니다.

 

728x90
반응형