2009-09-23 18:40:30 +0000 2009-09-23 18:40:30 +0000
106
106

在本地运行DNS为家庭网络

我有一个小的家庭网络,刚刚变大了(新室友,现有室友买了一台笔记本电脑(在她的电脑上面),朋友们带着笔记本电脑过来,等等),

我想运行一个本地DNS服务器,用于查询我的本地网络的东西(fileserver.localwindowsTV.localmachineA.localmachineB.localappletv.local,&007)。我以前有一条业务线,有一个静态IP,在内部运行绑定/命名。但是,现在我有一个正常的账号。

我的ISP的DNS服务器一直在不断的更换(不管是什么原因,我的ISP不喜欢长期保持同一个IP范围)。我需要我的本地DNS自动更新,以使用我的ISP的DNS进行外部流量,但又能维护内部的DNS服务器(更新主机文件是一个麻烦,因为每台新的机器都要用win7或Ubuntu 9.04重建现有的机器)。是否有任何开放的DNS服务器是可靠的(我不想每天都重新配置),我可以用它作为我的主服务器,然后如果那些失败了,那就用我的ISP的?

UPDATE: 也在寻找每个工作站都能使用dhcp连接,但不是用ISP的DNS服务器,而是用我的内部DNS服务器……

答案 (14)

88
88
88
2011-02-16 14:43:18 +0000

基本上你需要运行你自己的DHCP和DNS服务器。

你的DHCP服务器必须配置成把你的路由器IP作为网关地址,而你的DNS服务器IP作为DNS服务器地址,很明显,你的DHCP服务器必须配置成在本地解析一个非官方的顶级域名,比如.local,然后把其他的请求转发到另一个DNS。 正如其他评论所建议的那样,如果你不想转发到你的ISP的DNS服务器,你可以使用OpenDNS,Google的公共DNS服务器,或者4.2.2.2.2.¼.2.2.2/4.2.2.2(我忘了是谁做的)。这个盒子需要在你家里的子网上有一个固定的IP。确保它不能被DHCP欺负,而且盒子本身应该不会通过DHCP获得一个IP。如果你的DHCP被配置成了从192.168.1.1到192.168.1.100的地址,比如说你的DHCP是给你的DNS服务器发的地址是192.168.1.1.101。在家庭路由器的通常情况下,你只需要告诉路由器DNS服务器是192.168.1.101,然后重新启动。在我的网络中,我只使用直接的BIND。听起来你可能有一点经验,对我来说,它的效果很好。

17
17
17
2009-09-23 18:58:59 +0000

如果你想让内部假域名发挥作用,除了你自己的DNS服务器,你不能用任何DNS服务器配置你的工作站。一旦你设置了BIND,它就可以自己工作,你根本不需要你的ISP或其他非权威的DNS服务器。

15
15
15
2009-09-23 18:57:05 +0000

有没有什么开放的DNS服务器是可靠的

你说了算。 OpenDNS .

208.67.222.222 208.67.220.220
6
6
6
2009-09-25 15:38:41 +0000

如果你运行的是Windows系统 - 你应该看看Simple DNS Plus - 它是一个完整的DNS服务器,还附带了一个DHCP服务器插件 - 有一个易于使用的GUI。

5
5
5
2009-09-23 23:51:02 +0000

Unbound](http://unbound.net/)很简单,支持绑定式的配置文件,而且相当可靠。如果服务器将是一个独立的 “网关 "类型的盒子,而你想要一些额外的功能,你可能会想看看名为untangle的防火墙/网关发行版。

4
4
4
2010-03-03 05:23:15 +0000

如果你有一个linux盒子,那么你会希望设置DNSMASq得到你的本地地址,并将其作为一个转发/缓存DNS服务器,用于外部地址。这也是linux发行版的家庭路由器,如openwrt/ddwrt/tomato等。

另外,在大多数的苹果/Mac网络上,你会使用Bonjour/Zeroconf,Linux和苹果电脑都可以通过它来进行广播级DNS/服务解析。

2
2
2
2009-09-23 19:38:37 +0000

任何宽带路由器都可以为本地网络提供DNS和DHCP服务。如果你想要从互联网到本地机器的INcomming连接,你需要一个同时支持DynDNS和Incomming PortForwarding的路由器。

2
2
2
2009-09-23 18:44:01 +0000

4.2.2.2.2.1和4.2.2.2.2.2是我用的

编辑:就是关于公共服务器。很容易记住,而且从我使用它们以来,我想我没有看到过它们失效。

1
1
1
2018-12-05 21:08:14 +0000

一些免费的DNS服务器可以用于转发:

1.1.1.1 - Cloudflare
1.0.0.1 - Cloudflare
4.2.2.1 - Layer 3
4.2.2.2 - Layer 3
4.2.2.3 - Layer 3
8.8.8.8 - Google
8.8.4.4 - Google
208.67.222.222 - OpenDNS
208.67.220.220 - OpenDNS
1
1
1
2009-09-23 18:46:58 +0000

要在局域网上运行DNS服务器,请看一下'pdnsd',它是*nix的命名服务器。

0
0
0
2018-04-27 20:55:25 +0000

我也遇到了类似的问题。我买了一台OpenWRT兼容的路由器,并安装了OpenWRT。它在路由器中提供了静态IP绑定以及名称解析功能,让我可以按照自己的意愿给网络中的电脑和设备起名字。

0
0
0
2010-03-03 03:22:51 +0000

如果你从链接文本下载DNS基准程序,它将对公共DNS服务器的列表以及你的本地DNS服务器进行基准测试。

如果你的路由器允许的话,将路由器和快速外部DNS服务器中的一个加入到它交给DHCP客户端的DNS服务器列表中(但要选择一个与你输入的路由器DNS服务器地址不同的服务器)。

0
0
0
2019-12-31 05:06:10 +0000

对于主机名的解析,也许mDNS/DNS-SD使用 avahi 可以更容易解决这个问题:

检查你是否已经运行了服务:

systemctl status avahi-daemon.service

如果没有,请安装 avahi-daemon (服务) 和 avahi-utils (avahi-browse 命令) 包。一旦主机正确设置了服务和主机名:

avahi-browse --all --ignore-local --resolve --terminate

相关链接

-1
-1
-1
2017-10-06 10:53:37 +0000

也许我说的很蠢。在这种情况下,我会简单地将IP和名称添加到各个机器的主机文件中…..

192.168.0.120 tv.120 tv.local

192.168.0.80 studiopc.local