如何获得我的192.168。* Linux服务器可通过http:// hostname /?访问

(对不起,如果这个问题的措辞不好和/或重复,我不是一个networking人,我可能不会使用正确的条款…这也很难看到,如果这已经被回答。 )

我在VirtualBox,Windows主机上运行CentOS服务器,我可以在我的局域网上的机器上看到访问Apache托pipe的页面,地址是http://192.168.1.109/ 。 但是我希望人们能够inputhttp://hostname/ …,因为它更容易,主要是因为我不确定本地IP是静态的。 我真的不知道该怎么做 – 有人能指出我的方向吗? 谢谢。

我假设你正在使用桥接networking(否则虚拟机不会那么容易访问)。 configuration局域网的DNS取决于任何盒控制(一些家庭路由器我期望)。

如果该路由器太原始,没有自己的DNS服务器,或者你不想configuration它,你可以使用mDNS。 在Linux机器上安装Avahi ,在Windows机器上安装Bonjour 。

您可以在Windows上创build一个指向192.168.1.109的hosts文件作为“webserver”或任何您喜欢的名称,以便Windows主机可以访问它。 这假设你的Windows机器也在192.168.1.x上,并且连接是桥接的。 否则,你可以看看端口转发NAT'ed虚拟networking连接,但最后一次我用virtualbox尝试它是一个熊,所以我使用桥接networking。

否则,您需要设置一个内部DNS服务器,并为该IP设置正确的logging。 过度描述你所描述的内容。

谷歌主机文件窗口获取如何设置它的信息。 只是您的主机Windows系统上的一个简单的文本文件,但只能在该系统上工作,而不是在networking中的每个人。 如果他们正在运行Windows,你也需要在他们的机器上定制HOSTS文件。 只有当你有很多机器时,麻烦。 如果你在一个更大的网站上工作,那么你需要使用DNS服务器路由,除非你虚拟化了DNS服务器,否则最初只能build立一个PITA的三个数量级:-)

如果您的主机具有dynamicIP,则需要一个DHCP服务器,该服务器与DNS服务器进行通信,或者其本身是DNS服务器。 我总是在我的基于Linux的路由器上使用DNSMasq,它使用DHCP和名称parsing。

如果你的路由器不支持域名服务器,你可以设置一个名字服务器,比如绑定,它知道哪个主机在哪里。 有一个单独的名称服务器的缺点是,你需要给你的主机静态IP,然后在名称服务器给这些IP的名称。

作为最后的手段,您还可以在每个需要能够按名称查找服务器的客户端上编辑主机文件。 我需要一个像“192.168.1.1 bla.localdomain bla”的条目。 主机文件的位置取决于操作系统。

如果您不确定IP地址是否是静态的,那么您可能要查看/确保Web服务器在局域网上有DNS条目,以便始终可以find它。 在testing客户端上的主机文件的问题是,他们假设IP地址是静态的,所以如果IP地址改变,那么你将不得不不断更新恼人的主机文件。

最简单的答案就是尝试给Web服务器一个静态地址(通过分配一个静态地址或者获得一个“DHCP保留”configuration),然后你可以按照Bart的想法去使用hosts文件。