番茄固件上的Dnsmasq将不会从简单的名称地址进行回复

我希望能够从简单名称“pos”访问计算机192.168.0.3。 不是“pos.com”或任何东西。 用我的设置下面我可以ping dev.pos,只是不正确。 我必须ping mydomain.pos才能得到答复。

在基本>番茄中的识别我已经将名设置为mydomain. (与期间)

 local-ttl=1 bogus-priv domain=mydomain expand-hosts local=/pos/ address=/pos/192.168.0.3 

可能是什么问题呢?

更新:当我从番茄路由器的“ping工具”ping时,ping“pos”时得到正确的响应。 只是不从任何连接到它的计算机。

更新0.5:运行nslookup并inputpos. (与期间)工作; 只是不是没有。

更新2:我注意到的另一个问题是,当访问这些DNS条目时,我的本地dnscaching不会更新。 所以要testing:

 cmd ipconfig /flushdns ping google.ca ipconfig /displaydns ' Notice that there are entries ipconfig /flushdns ping dev.pos ipconfig /displaydns ' Notice that there aren't any entries for dev.pos 

进一步看,我遇到了这个链接 。 然而改变我的configuration匹配没有任何帮助。

进入我的以太网适配器的设置,并更改“追加这些DNS后缀(按顺序)为”。“修复它,这感觉很脏虽然我现在必须改变所有连接的计算机和任何没有它改变计算机的设置必须使用“pos”。

dnsmasq不会自动将域search列表推送到使用DHCP获取IP地址的主机。 有需要设置的DHCP参数。 您还应该将您的路由器的地址作为DNS服务器。 查看dnsmasq文档,了解可以通过DHCP发送的一些数据。

  • DHCP选项6是名称服务器的列表
  • DHCP选项119是search列表的域名列表

编辑:如果你想只能通过它的名字来引用一个服务器,你应该在dnsmasq定义一个域。 (不要使用local因为这将与zeroconf冲突。)某些路由器使用lan ,而localnet是一个传统名称。 将此域设置为search列表中的第一个域。

我不能确切地说为什么,但使用address=/pos.mydomain/192.168.0.3而不是address=/pos/192.168.0.3作品。

对于那些仍然解决这个问题的人:我有同样的问题,我解决了这个问题,在番茄(经过大量的试验和错误),通过添加以下DHCP / DNS – > Dnsmasq自定义configuration(其中“计算机”是工作站;“dom”是域名,“11.22.33.44”是工作站的IP地址):

 local-ttl=1 expand-hosts domain=dom address=/computer.dom/11.22.33.44 

路由器的域(在标识部分)应该可能被设置为相同的(在这种情况下:dom),但不能确定。

现在“ping计算机”从Dnsmasq得到正确的答复。