domain-name-system – 为本地网络设置dnsmasq

前端之家收集整理的这篇文章主要介绍了domain-name-system – 为本地网络设置dnsmasq前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我和一小群开发人员刚搬到新办公室,我想在我们的开发上设置dnsmasq
服务器,所以当我们在那里部署Web应用程序时,我们不必编辑自己的主机文件.我们有一台192.168.3.1的路由器
我们无权访问.我想我会在开发盒上安装一个DNS服务器,我们都会记录它的IP
作为辅助DNS服务器.不幸的是,我很努力地做这项工作.

devel服务器的名称是devBox,它的IP是192.168.3.99,它正在运行最新的Ubuntu Server(Karmic)

我的电脑正在运行Ubuntu Desktop(Karmic)

我想要实现的目标

假设我在开发框上运行了三个网站:website1,website2,website3.
我想通过网址访问它们:

http://website1.devBox
http://website2.devBox
http://website3.devBox

所以我在开发盒上配置了Apache,安装了dnsmasq,并将以下行放入它的hosts文件中:

192.168.3.99 website1.devBox
192.168.3.99 website2.devBox
192.168.3.99 website3.devBox

并编辑了我自己的resolv.conf文件,将devel框包含为名称服务器:

nameserver 192.168.3.99

它工作正常,我可以访问这些网站.问题是它不能很好地扩展.我希望所有域名都以.结尾
.devBox转发到开发框,这就是我正在努力的方向.

我试过推杆

192.168.3.99 devBox

进入hosts文件,并在dnsmasq.conf中编辑行:

# Add local-only domains here,queries in these domains are answered
# from /etc/hosts or DHCP only.
local=/devBox/

但我无法让它发挥作用.如果我尝试任何未明确出现在开发框的hosts文件中的url,则dns查找失败.

是否有其他东西的本地指令?我在找错了地方吗?

解决方法

请参阅 DNSmasq documentation,尤其是 dnsmasq manpagesample configuration file.本地关键字告诉DNSmasq使用本地数据执行这些域查找.例如,这会影响发送到DNSmasq的foo.localnet和bar.localnet的请求.我不认为这是你想要的.
# Add local-only domains here,queries in these domains are answered
# from /etc/hosts or DHCP only.
local=/localnet/

要强制主机/子域查找解析到特定地址,您可能希望使用address关键字.下面的第二个示例应允许web1.devBox和web2.devBox以及web73872.devBox全部解析为指定的地址.

# Add domains which you want to force to an IP address here.
# The example below send any host in doubleclick.net to a local
# webserver.
address=/doubleclick.net/127.0.0.1

# for your example
address=/devBox/192.168.3.99

我在家里使用DNSmasq为我的局域网处理简单的DNS东西;在这种情况下,本地和关联的域以及expand-hosts关键字是合适的. DNSmasq服务器是我的主要名称服务器,因此所有请求都通过它;任何非本地地址都会传回ISP的名称服务器.如果可能,您可以考虑该配置.

猜你在找的HTML相关文章