Networking 使用dnsmasq将.dev域从其连接的所有本地网络指向一台计算机

Networking 使用dnsmasq将.dev域从其连接的所有本地网络指向一台计算机,networking,dns,localhost,dnsmasq,Networking,Dns,Localhost,Dnsmasq,我正在Mac上运行Apache etc(目前实际上是MAMP,但很快就会被单独的Apache、PHP、MySQL等所取代),用于本地/离线测试我的网站 我希望能够从以下任何和所有内容测试我的所有本地站点(域*.dev),而无需更新每个设备上的hots文件(其中一些设备,如无根手机,甚至不允许编辑主机文件): 显然,我的Mac电脑本身 我的mac连接到的任何本地网络上的任何设备(我的mac不一定总是具有相同的IP地址) 在我的Mac上运行的任何虚拟机(并行)-主要是各种版本的Windows(我的M

我正在Mac上运行Apache etc(目前实际上是MAMP,但很快就会被单独的Apache、PHP、MySQL等所取代),用于本地/离线测试我的网站

我希望能够从以下任何和所有内容测试我的所有本地站点(域
*.dev
),而无需更新每个设备上的
hots
文件(其中一些设备,如无根手机,甚至不允许编辑主机文件):

  • 显然,我的Mac电脑本身
  • 我的mac连接到的任何本地网络上的任何设备(我的mac不一定总是具有相同的IP地址)
  • 在我的Mac上运行的任何虚拟机(并行)-主要是各种版本的Windows(我的Mac在并行共享网络上总是有相同的IP地址)
  • 现在,我读到dnsmasq可能会提供帮助,并使用自制软件将其安装在我的Mac电脑上。我将其设置为启动时启动,我的
    dnsmasq.conf
    如下所示:

    address=/.dev/127.0.0.1
    
    这样做的效果是允许任何域
    *.dev
    在我的Mac上工作,这是一个开始

    接下来,我试图通过将DNS服务器设置为Mac的本地IP地址,使其在Parallels VM中工作。但是,这不起作用–因为dnsmasq返回
    127.0.0.1
    作为查找
    *.dev
    的IP,但这当然会使VM在VM本身而不是在我的Mac上查找站点。。。这显然不起作用

    所以我有点困惑。有人能给我一些提示吗?有没有一种方法可以设置dnsmasq来实现我想要的功能,或者我应该考虑另一种方法


    谢谢

    我对Parallels没有任何经验,但使用Virtualbox,您可以建立桥接网络连接。我想Parallels也有相似之处。这将建立一个内部网络(例如192.168.1.*),您可能可以为其分配固定的IP地址。这样,您可以为Mac提供一个固定的IP地址,您也可以在dnsmasq配置中使用该地址,但您可能需要两个TLD,以便.dev可以一直指向127.0.0.1,而.devel指向192.168.1.xx。

    我对Parallels没有任何经验,但使用Virtualbox可以建立桥接网络连接。我想Parallels也有相似之处。这将建立一个内部网络(例如192.168.1.*),您可能可以为其分配固定的IP地址。这样,你可以给Mac一个固定的IP地址,你也可以在你的dnsmasq配置中使用这个地址,但是你可能需要两个TLD,这样.dev可以一直指向127.0.0.1,而.devel指向192.168.1.xx。

    Hmm,两个TLD,这是一个有趣的解决方案。但实际上这对我不起作用,因为我在本地测试的许多站点都是WordPress站点,WordPress要求域与WordPress首选项中设置的域相同。嗯,两个TLD,这是一个有趣的解决方案。但实际上它对我不起作用,因为我在本地测试的许多站点都是WordPress站点,WordPress要求域与WordPress首选项中设置的域相同。