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

Запуск DNS локально для домашней сети

У меня есть небольшая домашняя сеть, которая только что стала больше (новая соседка, моя существующая соседка получила ноутбук (поверх своего компьютера), мои друзья приходят с ноутбуками и т.д.)

Я хочу запустить локальный DNS сервер для поиска вещей в моей локальной сети (fileserver.local, windowsTV.local, machineA.local, machineB.local, appletv.local). Раньше у меня была бизнес-линия со статическим IP, и я запускал привязку/название внутри. Однако теперь у меня обычная учетная запись.

DNS-серверы моего провайдера постоянно меняются (по каким-то причинам мой провайдер не любит держать один и тот же IP-диапазон долгое время). Мне нужно, чтобы мой локальный DNS автоматически обновлялся, чтобы использовать DNS моего провайдера для внешнего трафика, но иметь возможность обслуживать внутренний DNS сервер (обновление хост-файла является проблемой для каждой новой машины, помимо восстановления существующих машин с win7 или Ubuntu 9.04).

Кроме того, DNS-серверы моего провайдера часто ломаются или становятся невосприимчивыми. Есть ли открытые DNS-серверы, которые надежны (я не хочу переконфигурировать каждый день), которые я мог бы использовать в качестве основных, а если они отказывают, тогда используйте DNS-серверы моего провайдера?

UPDATE: Также ищет каждую рабочую станцию, чтобы иметь возможность использовать dhcp для подключения, но вместо того, чтобы получить DNS-серверы моего провайдера, получить мой внутренний……

Ответы (14)

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

По сути, вам нужно запустить свой собственный DHCP и DNS сервер. Вы уже используете свой собственный DHCP сервер, если у вас есть обычный роутер, который выдает частные IP адреса.

Ваш DHCP сервер должен быть настроен на выдачу IP адреса роутера в качестве адреса шлюза, а IP адреса DNS сервера в качестве адреса DNS сервера.

Ваш DNS сервер должен быть настроен на локальное преобразование неофициального домена верхнего уровня, например .local, а затем переадресацию любых других запросов на другой DNS сервер. В BIND вы должны добавить раздел forwarders { } в ваши `/etc/bind/named.conf.options’, который содержит публичные DNS серверы, которые вы хотите использовать для разрешения нелокальных адресов. Как и другие комментарии, если вы не хотите переадресовывать DNS-серверы вашего провайдера, вы можете использовать OpenDNS, публичные DNS-серверы Google, или 4.2.2.¼.2.2.2 (я забыл, кто это делает).

Если вы используете свой собственный DNS-сервер, вам понадобится ящик, который будет постоянно включен, так как все DNS-запросы в вашей домашней сети будут проходить через него. Этот ящик нуждается в фиксированном IP-адресе в вашей домашней подсети. Убедитесь, что он не может быть сгенерирован бульдозером по DHCP, а сам ящик не должен получать IP через DHCP. Если ваш DHCP настроен на раздачу адресов с 192.168.1.1 по 192.168.1.100, например, то дайте вашему DNS серверу IP 192.168.1.101. В обычной ситуации с домашними роутерами вам просто нужно сказать роутеру, что DNS сервер 192.168.1.101, и перезагрузиться.

Если вы можете получить локальный DNS, запущенный на вашем широкополосном роутере, отлично, но DNS сервер может выиграть от большого объема оперативной памяти для кэширования запросов, в зависимости от того, какое программное обеспечение DNS вы используете. В своей сети я просто использую прямую BIND . Звучит так, как будто у вас есть небольшой опыт работы с этим, и для меня это отлично работает.

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

Если вы хотите, чтобы работали внутренние фальшивые домены, вы не можете настроить ваши рабочие станции с любыми DNS-серверами, кроме вашего собственного. После настройки BIND он может работать сам по себе, и вам вообще не нужны ни провайдеры, ни другие неавторитетные 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-сервера - и имеет простой в использовании графический интерфейс.

[Примечание: продукт разработан автором этой заметки].

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

Разъединение довольно просто, поддерживает стиль привязки конфигурационных файлов и довольно надежно. Если сервер будет представлять собой отдельное окно типа ‘шлюз’, и вы хотели бы получить несколько дополнительных приятных моментов, то вы, возможно, захотите взглянуть и на дистрибутив брандмауэра/шлюза, который называется “путаница”.

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

Если у вас есть linux box, то вам нужно настроить DNSMASq на получение локальных адресов и использовать его в качестве сервера переадресации/кэширования DNS для внешних адресов. Это также часто используется в linux дистрибутивах для домашних маршрутизаторов, таких как openwrt/ddwrt/tomato.

Альтернативно, в большинстве сетей Apple/Mac вы бы использовали Bonjour/Zeroconf, на котором компьютеры Linux и Apple могли бы взаимодействовать для разрешения DNS/служб широковещательного уровня.

Учитывая это, в чисто гибридной сети с работающими тремя операционными системами, вам определенно понадобится локальный DNS сервер с переадресацией либо на OpenDNS, либо на GoogleDNS, либо на ваш локальный DNS провайдера, в зависимости от вашего местоположения/потребностей.

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

Любой широкополосный маршрутизатор предоставляет услуги DNS и DHCP для локальной сети. Если вам нужны INcomming соединения из Интернета к локальным машинам, вам нужен маршрутизатор, который также поддерживает DynDNS и Incomming PortForwarding.

Если вы выберете один из списка DD-wrt поддерживает аппаратное обеспечение , вы можете прошить его этой прошивкой, и он будет поддерживать любую функцию, которая когда-либо может понадобиться в вашей маленькой сети.

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

4.2.2.1 и 4.2.2.2 - это то, что я использую

edit: то есть в отношении публичных серверов. Легко запомнить, и я не думаю, что видел их неудачу с тех пор, как я их использую.

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 benchmark с link text , она выполнит проверку списка публичных DNS-серверов, а также вашего локального DNS-сервера. После запуска этой программы попробуйте поместить копию самых быстрых серверов в настройки DNS на вашем роутере, а затем обновите DHCP сеанс и снова запустите тест.

Если ваш роутер разрешает это, добавьте и роутер, и один из самых быстрых внешних DNS серверов в список DNS серверов, который он передает клиенту DHCP (но выберите другой сервер, отличный от того, который вы ввели для адресов 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.local

192.168.0.80 studiopc.local

Похожие вопросы

16
5
8
22
5