【发布时间】:2013-07-09 16:40:30
【问题描述】:
所以我在本地开发环境中使用 dnsmasq,我需要将其设置为使用多个域。 (.dev, .test, .somethingelse) 如何做到这一点?
目前仅适用于 .dev
这就是我的 dnsmasq.conf 的样子
address=/dev/127.0.0.1
listen-address=127.0.0.1
【问题讨论】:
标签: macos unix dns localhost dnsmasq
所以我在本地开发环境中使用 dnsmasq,我需要将其设置为使用多个域。 (.dev, .test, .somethingelse) 如何做到这一点?
目前仅适用于 .dev
这就是我的 dnsmasq.conf 的样子
address=/dev/127.0.0.1
listen-address=127.0.0.1
【问题讨论】:
标签: macos unix dns localhost dnsmasq
对于您要在本地服务器的每个(子)域,将以下条目添加到您的 dnsmasq.conf:
address=/.domain/127.0.0.1
现在让您的操作系统知道,您希望将请求重定向到该域到您的本地 dnsmasq 域名服务器。通过在“/etc/resolvers”中创建一个文件“域”来做到这一点。
/etc/resolvers/domain 有以下内容:
nameserver 127.0.0.1
【讨论】:
对我来说,address=/.aaa.com/.bbb.com/127.0.0.1 可以解决问题。
【讨论】:
更通用的答案是/etc/dnsmasq.conf
local=/mylan/
在/etc/hosts
192.168.1.3 dev dev.mylan
192.168.1.3 test test.mylan
192.168.1.4 build build.mylan
根据https://serverfault.com/questions/136332/setting-up-dnsmasq-for-a-local-network
(请注意,该解决方案有助于 DHCP 设置,您不能在同一 IP 上拥有 2 个主机,就像 OP 喜欢的那样)
【讨论】:
.dev 不建议用于开发,因为 Google 实际上拥有该顶级域。
您可能希望使用保留的 TLD,例如 .localhost,用于开发。
关于同样问题的好文章:https://web.archive.org/web/20180722223228/https://iyware.com/dont-use-dev-for-development/
【讨论】:
在你的/usr/local/etc/dnsmasq.conf 添加:
address=/dev/test/127.0.0.1
然后创建文件:
/etc/resolver/dev 和 /etc/resolver/test。两者都有内容:
nameserver 127.0.0.1
从现在开始,所有xyz.dev 和xyz.test 域都将指向127.0.0.1。
【讨论】: