为什么大多数路由器不包含本地DNS?


22

我需要更改防火墙/路由器,并且我希望使用内置DNS的内容来解析本地子网上的查询。我有一个混合的Linux / Windows系统,通常只打开一台计算机,而我经常遇到解析本地名称的问题。我不想只为DNS永久保留Linux机器,而是希望将DNS保留在始终启用的路由器设备中。

我偶尔会在Google上搜索此内容,但从未找到任何内容。您总是会得到明显的答案-不可能将所有内容都放入/etc/hostsNetBIOS,专用框等中。那么我还缺少什么?为什么不“便宜”的路由器让您做到这一点?我很确定思科工具包可以做到这一点。几乎所有便宜的路由器都可以让您保留MAC地址,以便为DHCP分配静态IP地址。那么,为什么他们不能仅通过远程域传递给ISP就对本地子网上的所有内容也简单地进行DNS?


3
以50美元左右的价格获得Linksys WRT54GL,在其上安装OpenWRT固件,您将拥有一个解析本地名称的DNS服务器。但是在stackoverflow上仍然有很多
话题

2
不要忘记其他经典作品,DD-WRT和Tomato!
达斯Android

漩涡论坛上的一些@Grumby表示,公共域名的成本低于用于本地DNS的专用路由器/ DNS服务器硬件。我只是设置了一个新域,并在大约20分钟内设置了合成子域转发,同样的效果仅需12美元。因此,如果您想要某些东西,而无需购买任何新硬件,则可以廉价地启动并运行它,别忘了这是一个选择。
ComradeJoecool

Answers:


22

实际上,DNS协议非常复杂,尤其是递归功能,大多数路由器甚至无法正确地代理 DNS并遵循DNS RFC,更不用说充当适当的DNS服务器了。参见RFC 5625

对于DNS功能而言,最好的路由器是那些dnsmasq内部使用软件且在Linux内核之上运行的路由器。

OB。免责声明-我写了RFC。


这并不能真正回答问题。
DaveInCaz '18

1
@DaveInCaz TL; DR版本-DNS协议(尤其是递归功能)对于大多数路由器供应商而言过于复杂,无法正确实现。
Alnitak

我本以为他们会倾向于使用一些现成的DNS。至少,如果某些供应商想要与众不同,可以使用它们。
DaveInCaz

@DaveInCaz是的,我在回答中提到了这一点。请注意,“现成”也意味着“便携式”,因此需要诸如多任务POSIX环境之类的东西。许多路由器都没有,它们运行定制的嵌入式代码。
Alnitak

您在这里的评论很有用,您可以考虑将其添加到答案中以提供更完整的说明。现在看来,第一句话听起来可能有些轻描淡写,即使您显然很认真地表示了这句话(并且所有支持者显然都同意)。因此,添加更多详细信息可以使您的观点更加清楚。
DaveInCaz

9

使用Linksys的WRT *系列之类的可闪存路由器,可以安装OpenWRTTomato;这两个固件应该使您能够使用各种工具。

OpenWrt 支持的设备列表可能会打开其他选项。也许您可以从列表中回收旧路由器。


但是,此选项仅限于路由器的有限列表。
SaidbakR

2

我怀疑廉价路由器制造商的用例是您要做的唯一一件事就是连接到外部互联网。您为什么要在家庭网络上的设备之间进行通信?

他们要做的正确的事情是在执行DHCP时自动添加DNS条目,并且当DHCP租约到期且未续订时,请删除DNS条目。

您可以使用OpenWRT执行此操作。您也可以设置自己的dhcp / dns服务器,并将其用于DHCP,而不是廉价的路由器。


2

“妈妈和流行音乐有限公司” 不需要这样的东西。

正如您所注意到的,Cisco的设备可以做到这一点,但是与SOHO硬件相比,它要花更多的钱。这不仅使人们购买了更昂贵的硬件,而且还减少了支持电话的数量(“在我用IP将Facebook放在路由器上之后,我无法检查自己的状态,这太令人发指了!”)

您可以使用已经建议的OpenWRT支持的路由器,也可以购买基于vyatta的路由器(或重新配置旧PC)。


1

正如其他人提到的那样,定制固件有一个“方法”,而“为什么”是思科不希望需要该功能的小型企业跳过某些低端企业路由器。都是关于“您得到所付的钱”。对于拥有5名员工但需要DNS的小型公司,这将是一个不错的$ 50解决方案。对于思科来说太便宜了,并且考虑到大多数家庭用户不需要DNS,为什么要将它放在那里?

此外,出于这些目的,这些设备的功率可能很低。家用路由器确实没有做NAT的能力。DHCP; 和DNS同时进行。虽然我确定可以通过安装自定义固件来实现,但它可能无法达到预期的效果。


7
在CPU上提供DHCP和DNS比从bittorrent客户端跟踪10k连接要容易得多。
休伯特·卡里奥

0

这是我购买Guruplug并将其变成bind安装了DNS 的基于Linux的路由器的原因之一。

DNS有点技术性,大多数消费者级别的路由器/交换机组合都希望对普通的非技术用户易于使用。试图向对网络一无所知的人解释一下MAC地址是什么,或DHCP的工作原理是多么糟糕。它还介绍了可能出错或配置错误的另一件事,它们可能是产品退货或支持电话的来源。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.