我可以在同一个IP上有我的DNS服务器和我的networking服务器吗?

我刚刚买了一个树莓派,并把它做成一个networking服务器。 我有一个1 IP的networking。 我创build了一个DMZ,我可以从互联网上访问我的树莓派networking服务器。 我购买了一个我打算用于我的网站的域名,但是我发现我需要创build一些名称服务器(主要和次要),并为那些从我购买域名的域名服务器提供IP。

我的问题是:我可以有我的DNS服务器和我的网站使用相同的IP? 是真的需要有一个辅助名称服务器(因为我只有一个IP,我不认为我可以有一个辅助名称服务器)? 接下来要做什么? 我应该在我的树莓上安装DNS服务器并进行configuration吗? 我可以让我的网站只用1个IP和1个树莓派来运行吗? 我怎么能实现所有这些东西(让我的网站在我的覆盆子上运行,我的域名指向它)?

谢谢!

只要目标端口不相互冲突,让两个服务转到相同的IP地址没有任何问题。

在这种情况下,您将使用端口53的DNS和端口80的Web服务器。

您也可以将两个(或全部)名称服务器设置为相同的IP地址。*

您需要在您的树莓派上build立一个权威的DNS服务器,然后让您的注册服务商知道您的域名服务器的IP地址,并将您的域的权限委托给您的DNS服务器。

* 违背了正常的build议,但这是可能的。

啊。 在很多好人回答之后,我通常不会回答,但是我不能完全同意迄今为止发布的答案。 经过20年的DNSpipe理,这里是我的看法:

  • DNS是否应该外包? 不需要。运行自己的DNS服务器是完全正常的(尽pipe静态IP地址对我来说必不可less的 ),正如Vasili所说,这是一个很好的学习体验。 我们在SF上看到很多问题,这是因为某些DNS提供商的networking接口非常可怕,导致人们犯了基本的DNS错误。

  • 你可以在提供其他服务的服务器上运行DNS服务吗? 当然是。 teaparty.net的主DNS服务器也是Web服务器(IP地址稍有不同,但这只是因为我的共同服务器有几个地址分配给它)。

  • 你需要多个DNS服务器吗? 当然好。 RFC2182明确地讨论了这一点,并指出:

偶尔有一种说法是,如果域中的主机不可访问,则不需要域的域名服务器可访问。 这个说法是错误的。

您的辅助服务器应该位于与主服务器完全不同的networking上,最好是大陆的。 请注意,我的辅助名称服务器ns2.teaparty.net远不在ns.teaparty.net的地址空间附近,并且位于不同的国家/地区。 在过去的好日子里,主要名字服务器的运营商会互相交换服务,所以我的主要服务器也是你的次要服务器,反之亦然。 另外,在廉价VPS的这些日子里,一个小小的,便宜的VPS将很好地完成2ary的工作。

不要忘记绑定你的DNS服务器,以便它们只能recursion解决你自己组织中的人员。 开放DNS服务器是可爱的,但除非仔细configuration,他们可以用于放大reflectionDDoS攻击,这是不好的。

最后,虽然最佳实践问题可以说是SF的命脉,但要求学习材料的build议是明显的脱离主题。 如果我是你的话,我会在你的问题上修改一下,以免累积更多的选票。

是的,DNS和Web服务器可以在同一个IP上。

但是,通常configurationDNS的方式必须是静态IP。 在dynamicIP上运行Web服务器很简单,只要DNS服务器支持。

此外,你真的应该有两个IP在不同子网的DNS服务器。 因此,将域名托pipe在许多免费的DNS托pipe服务提供商中可能会更简单。 我知道他 ,其他答案已经提到其他提供者。

如果您真的想在dynamicIP上托pipe您自己的DNS服务器,那么要做到这一点,就是在几个提供商处注册dynamic主机名。 现在,您可以为您的域指定这两个dynamic主机名。 由于那些在你自己的领域之外,你不需要胶水。

从技术上讲这没有问题。 但是,这不是你想要的“家庭服务器”需求。 注册一些DynDNS服务(DynDNS,no-ip等),然后将你的域名指向那里,就是这样。 如果您不知道自己在做什么,请不要运行DNS服务器。 在你的情况下,也不需要自己运行一个。

DNS是所有服务的核心。 考虑将你的DNS移动到一个专门的提供者:

达因

的UltraDNS

Route53

这样做将解决您确定的一个问题,即您的域名注册商希望您为您的域提供至less两个(某些地区三个或更多)DNS服务器。

有时,您的域名注册商将免费提供这项服务。