From 2faa13c56789e375fd766f82a4ab27e8cdde942b Mon Sep 17 00:00:00 2001 From: root Date: Wed, 17 Sep 2025 04:27:35 +0000 Subject: [PATCH] =?UTF-8?q?[#4]=20=E5=A2=9E=E5=8A=A0=E8=AF=BB=E5=8F=96dns.?= =?UTF-8?q?conf=E6=9B=B4=E6=96=B0=E5=AE=B9=E5=99=A8=E5=86=85nameserver?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/bind/scripts/update-dns.sh | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100755 src/bind/scripts/update-dns.sh diff --git a/src/bind/scripts/update-dns.sh b/src/bind/scripts/update-dns.sh new file mode 100755 index 0000000..17da942 --- /dev/null +++ b/src/bind/scripts/update-dns.sh @@ -0,0 +1,31 @@ +#!/bin/sh +# update-dns.sh +# 从 /private/argus/etc/dns.conf 读取 IP,写入 /etc/resolv.conf + +DNS_CONF="/private/argus/etc/dns.conf" +RESOLV_CONF="/etc/resolv.conf" + +# 检查配置文件是否存在 +if [ ! -f "$DNS_CONF" ]; then + echo "配置文件不存在: $DNS_CONF" >&2 + exit 1 +fi + +# 生成 resolv.conf 内容 +{ + while IFS= read -r ip; do + # 跳过空行和注释 + case "$ip" in + \#*) continue ;; + "") continue ;; + esac + echo "nameserver $ip" + done < "$DNS_CONF" +} > "$RESOLV_CONF".tmp + +# 替换写入 /etc/resolv.conf +cat "$RESOLV_CONF".tmp > "$RESOLV_CONF" +rm -f "$RESOLV_CONF".tmp + +echo "已更新 $RESOLV_CONF" +