温馨提示×

Debian怎么解析域名

小樊
47
2026-07-05 16:37:57
栏目: 云计算

在 Debian 系统中,域名解析主要依赖 DNS(Domain Name System) 配置。下面按常见场景给你系统性说明。


一、Debian 域名解析的基本原理

Debian 使用 /etc/resolv.conf 来指定 DNS 服务器,系统通过它把域名解析成 IP。

常见解析顺序(简化):

  1. 先看 /etc/hosts
  2. 再看 /etc/resolv.conf 中的 DNS 服务器
  3. 由 DNS 服务器完成域名解析

二、查看当前 DNS 配置

1️⃣ 查看 DNS 服务器

cat /etc/resolv.conf

常见内容:

nameserver 8.8.8.8
nameserver 114.114.114.114

⚠️ 注意
在 Debian 10+ 中,/etc/resolv.conf 可能被 systemd-resolvedNetworkManager 自动管理。


三、临时修改 DNS(不推荐长期使用)

echo "nameserver 8.8.8.8" > /etc/resolv.conf

⚠️ 重启网络或系统后可能失效。


四、永久修改 DNS(推荐方式)

✅ 方法一:使用 /etc/network/interfaces(服务器常用)

编辑:

sudo nano /etc/network/interfaces

示例(静态 IP):

auto eth0
iface eth0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    gateway 192.168.1.1
    dns-nameservers 8.8.8.8 114.114.114.114

重启网络:

sudo systemctl restart networking

✅ 方法二:使用 NetworkManager(桌面版常见)

查看连接名:

nmcli connection show

设置 DNS:

nmcli connection modify eth0 ipv4.dns "8.8.8.8 114.114.114.114"
nmcli connection modify eth0 ipv4.ignore-auto-dns yes
nmcli connection up eth0

✅ 方法三:systemd-resolved(Debian 10+)

查看状态:

systemd-resolve --status

设置 DNS(示例):

sudo resolvectl dns eth0 8.8.8.8

五、手动测试域名解析

1️⃣ 使用 ping

ping www.baidu.com

2️⃣ 使用 nslookup

nslookup www.google.com

3️⃣ 使用 dig(推荐)

安装:

sudo apt install dnsutils

使用:

dig www.google.com

六、本地域名解析(不走 DNS)

编辑:

sudo nano /etc/hosts

示例:

127.0.0.1   localhost
192.168.1.10 example.local

适用于:

  • 内网服务
  • 测试环境

七、常见问题排查

❌ 能 ping IP,但不能解析域名

ping 8.8.8.8        # 通
ping www.google.com # 不通

✅ 排查步骤:

  1. 检查 /etc/resolv.conf
  2. 检查 DNS 是否可达
  3. 是否被防火墙拦截(UDP 53)
  4. 是否被 systemd-resolved 接管

八、总结(快速选择)

场景 推荐方式
服务器 /etc/network/interfaces
桌面 NetworkManager
新系统 systemd-resolved
临时测试 直接改 /etc/resolv.conf

如果你愿意,可以告诉我:

  • Debian 版本(cat /etc/debian_version
  • 服务器还是桌面
  • 是否使用 DHCP

我可以给你精确到命令级别的配置方案。

0