Suse linux настройка dns

SDB:Настройка DNS сервера BIND

Давным-давно, в конце 60-ых годов, когда еще не было Интернета, Министерство обороны США, открыло финансирование экспериментальной компьютерной сети ARPAnet. Сеть была создана для объединения важных государственных объектов и разделения ресурсов дорогоредких компьютеров. Однако уже тогда, сеть использовалась по «назначению». Пользователи сети обменивались файлами и посылали сообщения по электронной почте. Каждый узел в сети имел текстовый файлик hosts.txt в котором хранилось соответствие, какому имени компьютера, какой IP адрес соответствует. Если в сети появлялся новый узел, его добавляли в этот файл и рассылали по электронной почте всем пользователям сети. Когда масштабы ARPAnet увеличились, понадобилось придумать, что-то новое и вот тогда придумали систему доменных имен DNS.

настройка BIND

BIND — самых популярный DNS server.

DNS работает по принципу «Клиент-Сервер» с возможностью синхронизации и кэширования. Одним из самых популярных сегодня является DNS server BIND. Далее я опишу, как настроить авторитетный сервер для собственного домена с автоматической передачей зоны на вторичный сервер. Т.к. во FreeBSD по умолчанию используется BIND — устанавливать его не нужно, а для того чтобы настроить, достаточно отредактировать основной файл конфигурации named.conf и файл зоны своего домена, проверить если нет ошибок в конфигах и можно запускать демон BIND-a.

Правим основной файл конфигурации named.conf:

options < directory "/etc/namedb"; pid-file "/var/run/named/pid"; dump-file "/var/dump/named_dump.db"; statistics-file "/var/stats/named.stats"; allow-transfer < 195.24.128.164; 193.218.105.146; >; allow-query < any; >; recursion no; notify yes; version "hi"; >; zone "." < type hint; file "named.root"; >; zone "localhost." < type master; file "master/localhost"; >; zone "0.0.127.in-addr.arpa" < type master; file "master/localhost.rev"; >; zone "test.com" < type master; file "master/test.com"; >; zone "122.21.211.in-addr.arpa" < type master; file "master/test.com.rev"; >;

pid-file «/var/run/named/pid»; Где находится пид файл

dump-file «/var/dump/named_dump.db»; Где находится дамп

statistics-file «/var/stats/named.stats»; Проверить состояние бинда можно здесь

allow-transfer < 195.24.128.164; 193.218.105.146; >; Здесь перечисляются IP адреса вторичных серверов, на которые можно передавать зону. (slave server ip adress)

allow-query < any; >; Спрашивать информацию имеют права все, ограничений нет

recursion no; А вот рекурсивные запросы запрещены, мой DNS сервер отвечает только за одну зону

Читайте также:  Чем распаковать архив tar linux

notify yes; Оповещать вторичные сервера, когда есть изменения на основном

version «hi»; Здесь можно подключить творчество >;

Ниже опций, пишутся зоны, их имена и где они расположены. Корневая зона, localhost (прямая, обратная), test.com (прямая, обратная).

Настройка зоны test.com

В руководстве написано: «Для создания основной зоны для локального хоста перейдите в каталог /etc/namedb и выполните команду»

Не знаю как у остальных, но у меня этого скрипта вообще не было, кстати он может создавать не только зону локалхоста, но и все остальные необходимые, например test.com. Т.к. скрипта не было пришлось делать все вручную, в каталоге /etc/namedb/master/ есть 2-а файлика:

localhost-forward.db localhost-reverse.db

из этих файликов я наклепал еще 4-ре, которые мне нужны:

localhost localhost.rev test.com test.com.rev и начал их редактировать:

$ORIGIN test.com. $TTL 3h test.com. SOA admin.test.com. admin.test.com. ( 1306200802 5h 1h 1w 3h ;Serial, Refresh, Retry, Expire, TTL ) @ IN NS ns1.test.com. @ IN NS ns2.trifle.net. @ IN NS ns0.xname.org. @ IN NS ns1.xname.org. @ IN MX 10 ASPMX.L.GOOGLE.COM. @ IN MX 20 ALT1.ASPMX.L.GOOGLE.COM. @ IN A 211.11.122.111 ns1 IN A 159.22.117.7 www IN A 211.11.122.111 @ IN AAAA ::1 forum CNAME google.com.

В файлах зон, символ » @ » заменяется демоном named на имя зоны, написанной в файле named.conf после слова zone в кавычках: zone «test.com», именно поэтому E-Mail пишется через точку, а не через » @ » admin.test.com.

Серийный номер не обязательно должен быть в формате «ДеньМесяцГодСколькоРазИзменялся» 1306200802, да, так можно узнать точную дату когда редактировалась зона, но Serial может быть любой, например можно написать 1, главное увеличивать это число после редактирования зоны — иначе вторичные DNS сервера не обновятся.

Refresh (5h) в начале, пока вы экспериментируете можно поставить один час (1h), чтобы вторичные DNS сервера быстрее обновляли значение Serial, когда все будет стабильно работать, можно увеличить это значение, например на 5h или 10h.

Retry (1h) — это значение указывает вторичным серверам, как часто необходимо обращаться к Master серверу, если тот не отвечает.

Expire (3w) — это время которое slave сервера будут обслуживать зону, пока master сервер не доступен. Если спустя это время вторичный сервер так и не смог достучаться до основного сервера, он перестает обслуживать эту зону.

TTL (3h) — время жизни записей для зоны.

Читайте также:  Linux open source github

В конце каждого доменного имени обязательно должна стоять точка » . » Точка указывает на то, что это абсолютное имя домена, которое начинается с корня (т.е. с точки) например создадим одну запись CNAME для домена test.com :

Так правильно! Bind будет интерпретировать эту запись так — site2.test.com и перенаправлять на google.com, а если создать такую же запись, но не поставить точку в конце доменного имени, то Bind будет интерпретировать такую запись, как относительную для домена test.com и другие DNS сервера поймут это так:

site2.test.com IN CNAME google.com.test.com

Теперь, когда Master сервер настроен, необходимо настроить передачу зоны вашего домена на slave сервера и чем больше у вас будет slave серверов — тем надежнее! Описание конфигурационного файла named.conf на вторичном сервере практически не отличается от файла на основном сервере, за исключением режима, в котором будет работать данный сервер (type slave) и директории.

options < directory "/etc/namedb"; pid-file "/var/run/named/pid"; dump-file "/var/dump/named_dump.db"; statistics-file "/var/stats/named.stats"; allow-transfer < 195.24.128.164; 193.218.105.146; >; allow-query < any; >; recursion no; notify yes; version "hi"; >; zone "." < type hint; file "named.root"; >; zone "localhost." < type master; file "master/localhost"; >; zone "0.0.127.in-addr.arpa" < type master; file "master/localhost.rev"; >; zone "test.com" < type slave; file "slave/test.com"; >;

Также будет полезно настроить несколько вторичных-бесплатных днс серверов. В интернете не так много (но и не мало) бесплатных DNS сервисов я работаю с http://ns2.trifle.net и http://www.xname.org а также можно воспользоваться http://secondary.net.ua еще есть несколько, но я их не использовал. (сайт1 сайт2 сайт3 сай4)

Запуск Bind-a и проверка зон на работоспособность

(или forcestart, а также stop, restart)

Обновить базу данных bind-a т.е. чтобы перечитал свои файлы можно коммандой:

(кстати, если вы сделали изменения в файлах зон и забыли изменить serial то после этой комманды bind вам напомнит об этом)

Проверить есть ли ошибки в конфиг файле можно коммандой:

Файл зоны можно проверить так: команда ИмяЗоны ПутьКзоне

Посмотреть bind в процессах

И послушать висит ли Bind на 53 порту:

Если в панели управления вашего домена нет возможности указать IP адрес NS (NameServer-a) а только имя, к примеру ns1.newdomen.com, а это имя еще не резолвиться в интернете, тогда можно сделать так:

  1. Настроить основной сервер у себя, потом воспользоваться бесплатным вторичным днс сервисом, там зарегистрироваться, указать IP адрес master сервера, когда вторичный схавает все настройки, подождать 12-18 часов пока пока не заработает.
  2. Попросить знакомого, который владеет DNS сервером, чтобы он создал у себя запись для вашего IP адреса типа: pupkin IN A 222.11.112.123 — это ваш IP и прописать в панели управления для вашего домена pupkin.domendruga.com
  3. Мне кажется, этот вариан самый простой. Зарегистрировать бесплатно домен 3-го уровня на сайте no-ip.com и указать для этого домена ваш IP адрес.
Читайте также:  Ia32 libs arch linux

Стегний Павел —Adramelech 22:14, 24 декабря 2008 (UTC)

Источник

SDB:Configure DNS

Usually when you connect to internet, you will be automatically assigned a DNS server to resolve domain names. However, these DNS servers, provided by your ISP, can be very slow! Each time you open a new website, it wastes several seconds to look up domain names. Another reason that you won’t want to use default DNS servers is that they may censor what websites you visited and prevent you accessing some services.

Here are several public DNS known to be faster and safer, like OpenDNS, Cloudflare DNS, Google DNS. This article introduces how to configure your DNS. You can choose whatever DNS server you like. However, be aware that a DNS server can record all sites you visit, so don’t use any DNS servers that you cannot trust!

Method 1: Use NetworkManager applets

  1. In your panel or system tray, click the network icon.
  2. Click Configure network connection.
  3. Choose the connection.
  4. In IPv4 tab, type 1.1.1.1,1.0.0.1 in Other DNS Servers field.
  5. In IPv6 tab, type 2606:4700:4700::1111,2606:4700:4700::1001 in Other DNS Servers field.
  6. Save connection.
  7. As NetworkManager in OpenSUSE uses netconfig DNS settings, you need to edit /etc/NetworkManager/NetworkManager.conf and add following line:

This change only apply to specific connection, not globally.

Method 2: Use YaST (without NetworkManager)

  1. Open YaST.
  2. Enter Network Settings.
  3. Open Hostname/DNS tab.
  4. Fill Nameserver 1/2/3 with 1.1.1.1 , 1.0.0.1 , 2606:4700:4700::1111

Method 3: Edit configuration file (without NetworkManager)

If you are using NetworkManager(see more), content of /etc/resolv.conf will be overridden by NetworkManager frequently so it won’t work.

nameserver 1.1.1.1 nameserver 1.0.0.1 nameserver 2606:4700:4700::1111 nameserver 2606:4700:4700::1001

Источник

Оцените статью
Adblock
detector