我的 GNU/Linux PC(Debian Squeeze;称为 Iphigenie)从 Thomson TG585v7 路由器获取其 IP。网络访问工作正常(网页浏览、ssh 客户端/服务器等)。但是通过 DNS 查询 Iphigenie 不起作用(互联网网站的 DNS 有效)。相比之下,Windows 机器的 IP 可以通过 TG585 的 DNS 服务器毫无问题地解析。
我很确定这是路由器没有将名称从 DHCP 传输到 DNS 的问题。[1] 这很有意思:Linux PC 出现在 TG585 的 Web 界面上,并带有正确的名称等。连接到路由器的 telnet 接口,我可以看到 PC 获得了正确的 DHCP 租约(10.0.0.9
):
CPxxxxxxx=>dhcp server lease list
Lease Pool TTL State Clientid
3 10.0.0.18 LAN_private 13:48:08 USED [01] 70:1a:04:xx:xx:xx
2 10.0.0.8 LAN_private 22:45:01 USED [01] 00:21:6a:xx:xx:xx
0 10.0.0.9 LAN_private infinite USED [01] 00:0e:35:xx:xx:xx
1 10.0.0.10 LAN_private infinite FREE [01] 00:0f:b5:xx:xx:xx
但是它没有出现在 DNS 列表中,而 Windows 机器却出现了:
CP0852SF726=>dns server host list
Address Hostname TL (s) Creator
<local> dsldevice 1200 undefined
<local> speedtouch 1200 undefined
10.0.0.8 * Elektra 0 DHCP_Server
10.0.0.18 * Reini-PC 0 DHCP_Server
如果我使用dns server host add name = Iphigenie addr=10.0.0.9 tls=0
,则会添加条目,但在路由器重启后它会变成假的(然后它引用路由器本身)。
我想知道 Linux 机器和 Windows 机器之间有什么区别,DHCP->DNS 传输对后者有效,但对前者无效?
有什么建议么?
[1] 证据:
ping Iphigenie
在 Linux PC 上有效(通过 查找/etc/hosts
),但在 Windows 机器上失败(通过 DNS 查找)。在 Linux 机器上对 Iphigenie 的 DNS 查找也失败了(host Iphigenie
)
答案1
我遇到了同样的问题,但发生在运行 Debian Squeeze 的不同系统之间。请确保您的 DHCP 客户端已配置为发送主机名。如果使用带有 isc-dhcp-client 的接口 (5) 配置,请在 Iphigenie 上的 /etc/dhcp/dhclient.conf 中添加以下内容:
发送主机名“Iphigenie”;
由于某种原因,在 /etc/network/interfaces 中添加“hostname”选项不起作用。
使用 wicd,确保选中“DHCP 主机名”选项,并且主机名存在于连接的属性中。