在 Debian 12 上安装 DNS 代理查询工具,可以使用 dnsmasq
或 bind9
等工具。以下是安装和配置 dnsmasq
作为 DNS 代理查询工具的步骤:
1. 更新软件包列表
首先,更新本地的软件包列表,以确保安装的是最新版本:
sudo apt update
2. 安装 dnsmasq
使用以下命令安装 dnsmasq
:
sudo apt install dnsmasq
3. 配置 dnsmasq
安装完成后,可以通过编辑 /etc/dnsmasq.conf
文件来配置 dnsmasq
。你可以使用 nano
或其他编辑器打开配置文件:
sudo nano /etc/dnsmasq.conf
你可以修改或添加以下配置:
指定 DNS 上游服务器: 例如,将 DNS 查询代理到 Google 的 DNS 服务器(8.8.8.8 和 8.8.4.4),也可以加@指定走哪个网卡:
server=8.8.8.8 server=8.8.4.4@eth0
启用 DNS 缓存: 如果你希望启用 DNS 缓存,可以确保以下行未被注释:
cache-size=1000
监听特定的接口: 如果你希望
dnsmasq
仅在本地网络接口上监听,可以设置:interface=lo
4. 启动 dnsmasq
服务
配置完成后,启动 dnsmasq
服务:
sudo systemctl start dnsmasq
5. 设置 dnsmasq
开机启动
为了确保 dnsmasq
在系统启动时自动启动,可以启用该服务:
sudo systemctl enable dnsmasq
6. 测试 DNS 查询
可以使用 dig
或 nslookup
工具来测试 DNS 查询是否正常工作:
dig @127.0.0.1 example.com
如果你没有安装 dig
,可以通过以下命令安装:
sudo apt install dnsutils
这将通过 dnsmasq
代理进行查询。
7. 配置客户端使用本地 DNS 代理
最后,在客户端的网络配置中,确保 DNS 设置指向 127.0.0.1
,即本地机器的 IP 地址。
这样就可以成功安装并配置 dnsmasq
作为 DNS 代理查询工具。
如果你需要其他类型的 DNS 代理工具(如 bind9
),可以让我知道,我会提供相应的配置步骤。
DNS是使用UDP 53侦听:
要在现有的 iptables
配置中允许 ztbto72xxn
网卡上的 UDP 53 端口,可以添加一条规则来允许此端口上的流量。下面是修改后的规则,您可以将其添加到 INPUT
链中。
规则:
-A INPUT -i ztbto72xxn -p udp --dport 53 -j ACCEPT
完整步骤:
编辑现有的
iptables
配置文件: 打开配置文件iptables
(通常是/etc/iptables/rules.v4
或类似的文件):sudo nano /etc/iptables/rules.v4
在
INPUT
链中添加该规则。将以下内容添加到文件的适当位置(通常是在现有规则后):-A INPUT -i ztbto72xxn -p udp --dport 53 -j ACCEPT
保存文件并退出编辑器。
重新应用
iptables
配置:sudo iptables-restore < /etc/iptables/rules.v4
说明:
-i ztbto72xxn
:指定规则应用于ztbto72xxn
网卡接口。-p udp
:指定规则仅应用于 UDP 协议。--dport 53
:指定规则应用于目标端口为 53,即 DNS 服务的默认端口。-j ACCEPT
:允许此类流量。
这样,您的 ztbto72xxn
网卡上的 UDP 53 端口流量就会被接受。