Ответы:
Прежде всего, измените IP-адрес вашего сервера с DHCP на STATIC, для этого используйте следующую команду
sudo nano /etc/network/interfaces
и добавить:
auto eth0
iface eth0 inet static
address 192.168.1.5
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-nameservers
Перезапустите сетевые демоны
sudo /etc/init.d/networking restart
Перед настройкой DNS-сервера в Linux Ubuntu вы должны сначала указать доменное имя, а затем продолжить. Сначала вы проверите вашу команду hostname для этого
sudo nano /etc/hostname
nefitari
(Это имя моего сервера Ubuntu, ваше имя может отличаться. Вы можете изменить его в соответствии с вашими потребностями)
Теперь после имени хоста, вы должны сделать доменное имя для вашего сервера. Скажем, servername.domain.com рекомендуется, чтобы при настройке сервера для домашнего использования не использовались .com, а .hom или .net, или что угодно. Дайте команду ниже
sudo nano /etc/hosts
добавить, если его нет:
127.0.0.1 localhost
192.168.1.5 nefitari.autun.hom nefitari
В моем файле 127.0.0.1 для localhost, и я изменил второй IP-адрес 127.0.1.1 с IP-адресом моего сервера, который является 192.168.1.5, теперь я ввожу свое доменное имя с моим именем хоста nefitari, затем мое доменное имя autun.hom и затем псевдоним нефитари . Вы можете выбрать свой собственный, hostname.abc.net или hostname.home.lan и т. Д., Но помните, что для изменения этого файла необходимо перезагрузить сервер, а затем войти в систему. Перезагрузка обязательна
sudo apt-get install bind9
После установки просто настройте файлы ниже, шаг за шагом
Теперь настройте файл named.conf.options. Этот файл используется для IP-адресов DNS. Это означает, что ваш сервер должен подключаться к внешнему DNS-серверу. Когда вы покупаете доменное имя у интернет-провайдера, он обычно дает вам свои собственные IP-адреса DNS. Вы можете использовать открытые DNS-адреса Google или около того. В моем случае я использую свой собственный IP-адрес DNS-провайдера.
sudo nano /etc/bind/named.conf.options
forwarders {
# Give here your ISP DNS IP’s
192.168.1.1; # gateway or router
182.176.39.23;
182.176.18.13;
68.87.76.178;
};
*** Сохраните файл и выйдите из *** с помощью элемента управления x, нажмите y и перезапишите файл.
Теперь отредактируйте файл с именем .conf.local. Это файл, в котором мы определяем прямые зоны и обратные зоны. Это означает, что когда мы вводим доменное имя, оно переводит его в IP-адрес, а когда мы вводим IP-адрес, оно просто конвертирует его в имя.
sudo nano /etc/bind/named.conf.local
покажет:
# Our forward zone
zone "autun.hom" {
type master;
file "/etc/bind/zones/db.autun.hom";
};
# Our reverse Zone
# Server IP 192.168.1.5
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/zones/db.192";
};
*** Сохраните файл и выйдите из *** с помощью элемента управления x, нажмите y и перезапишите файл.
Теперь мы сделаем эти два файла базы данных db.autun.hom и db.192 в папке зон
Сначала создайте зоны каталогов в / etc / bind /
sudo mkdir /etc/bind/zones
Прежде чем делать файлы, позвольте мне проинформировать вас, что у меня разные устройства
IP-адреса устройств
Теперь в каталоге зон мы создадим два файла сначала db.autun.hom . Я просто копирую db.local, уже присутствующий в папке / etc / bind, в папку зон, меняя его имя на db.autun.hom . Я помещу эти IP в мой файл db.autun.hom. Давайте начнем
sudo cp /etc/bind/db.local /etc/bind/zones/db.autun.hom
Теперь используйте команду ниже для редактирования файла
sudo nano /etc/bind/zones/db.autun.hom
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA nefitari.autun.hom. webuser.autun.hom. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
autun.hom. IN NS nefitari.autun.hom.
autun.hom. IN A 192.168.1.5
;@ IN A 127.0.0.1
;@ IN AAAA ::1
nefitari IN A 192.168.1.5
gateway IN A 192.168.1.1
win7pc IN A 192.168.1.50
www IN CNAME autun.hom.
Сохраните его и выйдите
Теперь создайте файл зоны обратного просмотра
sudo cp /etc/bind/db.127 /etc/bind/zones/db.192
Теперь используйте команду ниже для редактирования файла
sudo nano /etc/bind/zones/db.192
;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA nefitari.autun.hom. webuser.autun.hom. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
IN NS nefitari.
1 IN PTR gateway.autun.hom.
5 IN PTR nefitari.autun.hom.
50 IN PTR win7pc.autun.hom.
Сохраните его и выйдите
Теперь, когда вы закончили с вашим файлом зоны, вы должны проверить его, правильно ли он работает, введя команду ниже для прямого файла зоны
named-checkzone autun.hom /etc/bind/zones/db.autun.hom
zone autun.hom /IN: loaded serial 2
Ok
Теперь проверьте файл обратной зоны
named-checkzone autun.hom /etc/bind/zones/db.192
zone autun.hom /IN: loaded serial 2
Ok
Если вывод вашей именованной контрольной зоны такой же, как указано выше, то он работает нормально, в противном случае вы допустили ошибку в файле.
Теперь отредактируйте файл resolv.conf
sudo nano /etc/resolv.conf
nameserver 192.168.1.5
domain autun.hom
search autun.hom
Введите следующие строки в ваш файл resolv.conf и сохраните его
Перезапустите связь
sudo /etc/init.d/bind9 restart
После начала привязки проверьте настройки в файле журнала
tail -f /var/log/syslog
в журнале не должно быть ошибок
host –l autun.hom
Вывод должен понравиться
autun.hom name server nefitari.autun.hom.
autun.hom has address 192.168.1.5
gateway.autun.hom has address 192.168.1.1
nefitari.autun.hom has address 192.168.1.5
win7pc.autun.hom has address 192.168.1.50
Теперь используйте NSLOOKUP
nslookup autun.hom
ВЫХОД
Server: 192.168.1.5
Address: 192.168.1.5#53
Name: autun.hom
Address: 192.168.1.5
Используйте DIG
dig gateway.autun.hom
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35612
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;gateway.autun.hom IN A
;; ANSWER SECTION:
gateway.autun.hom 604800 IN A 192.168.1.1
;; AUTHORITY SECTION:
Autun.hom. 604800 IN NS nefitari.autun.hom.
;; ADDITIONAL SECTION:
Nefitari.autun.hom. 604800 IN A 192.168.1.5
;; Query time: 12 msec
;; SERVER: 192.168.1.5#53(192.168.1.5)
;; WHEN: Thu Aug 8 01:56:25 2013
;; MSG SIZE rcvd: 90
Вывод должен соответствовать описанному выше, проверить статус: NOERROR означает, что он разрешает проверку. РАЗДЕЛ ОТВЕТА: gateway.autun.hom разрешен в 192.168.1.1
host 192.168.1.1
Выход
1.1.168.192.in-addr.arpa domain name pointer gateway.autun.hom
Если это дает вам ошибку, как показано ниже
host 1.1.168.192.in-addr.arpa. not found: 3(NXDOMAIN)
Это означает, что вы допустили некоторую ошибку в файле /etc/bind/named.conf.local в обратной зоне. Если ваш сервер IP 192.168.1.5, то ваша обратная зона выглядит следующим образом
zone "**1.168.192**.in-addr.arpa" {
correct ip reversing
};
Иногда люди совершали ошибку, переворачивая IP как (только пример)
zone "**0.168.192**.in-addr.arpa" {
incorrect ip reversing
};
Используйте NSLOOKUP
nslookup 192.168.1.1
Server: 192.168.1.5
Address: 192.168.1.5#53
1.1.168.192.in-addr.arpa name=gateway.autun.hom
Если вы получаете ошибки типа NXDOMAIN или SERVFAIL, это означает, что один из ваших файлов зоны работает неправильно
Теперь вы можете пропинговать ubuntu.com или копать ubuntu.com в первый раз, чтобы решить имя ubuntu.com, потребуется несколько миллисекунд, но когда вы запустите его во второй раз, это займет 1, 2 или 3 секунды, обычно от 1 до 10 миль. секунды нормальные и это означает, что ваш DNS работает нормально
сторона окон
и здесь укажите IP-адрес (в моем случае это 192.168.1.50, вы помните win7pc)
и вы сделали с этим открыть CMD
ping gateway
это должно дать вам несколько ответов
по аналогии
ping 192.168.1.1 or 5
это должно дать вам несколько ответов
Протестируйте свой сервер для внешнего мира
Теперь вы можете пропинговать ubuntu.com или откопать ubuntu.com в первый раз, чтобы определить имя ubuntu.com в течение нескольких миллисекунд, но когда вы запустите его во второй раз, это займет от 1 до 10 мили секунд, его обычное время и это означает, что ваш DNS работает правильно. Настройка клиентов
сторона окон
открыть сетевые подключения выбрать изменить настройки адаптера выбрать свойства выбрать версию интернет-протокола IPv4
и здесь укажите IP-адрес (в моем случае это 192.168.1.50, вы помните win7pc)
IP-адрес 192.168.1.50
Маска подсети 255.255.255.0
Шлюз по умолчанию 192.168.1.1
основной DNS 192.168.1.5 (мой новый DNS-сервер BIND ip)
выберите Advance (в том же окне)
выберите вкладку DNS
Введите текстовое поле ниже здесь В DNS-суффиксе для этого подключения: autun.hom
нажмите ОК
нажмите на подтвердить настройки при выходе
нажмите ОК
и вы сделали с этим открыть CMD
Код:
ping gateway
это должно дать вам несколько ответов
по аналогии
Код:
ping 192.168.1.1 or 5
он должен дать вам несколько ответов, которые вы можете использовать NSLOOKUP Code:
nslookup gateway
LINUX КЛИЕНТЫ
Код:
sudo nano /etc/network/interfaces
введите следующие строки
Код:
auto eth0
iface eth0 inet dhcp
Теперь перезапустите Сеть Deamons
Код:
sudo /etc/init.d/networking restart
заставить клиента обновить команду IP
Код:
sudo dhclient -r
Теперь получите свежий IP:
Код:
sudo dhclient
Если вы используете DHCP-сервер в своей сети, введите доменное имя и сервер имен в файле dhcpd.conf; Например, у меня есть DNS-сервер с именем nefitari.autun.hom, а IP-адрес 192.168.1.5, как показано ниже
Код:
option domain-name "nefitari.autun.hom";
option domain-name-server 192.168.1.5;
../run/resolvconf/resolv.conf
.
(network unreachable) resolving './NS/IN': 2001:500:3::42#53
от bind пытаются рекурсивно разрешать запросы с использованием ipv6. Редактирование /etc/default/bind9
и использование OPTIONS="-u bind -4"
исправляет это. Дополнительная информация: serverfault.com/questions/77325/unreachable-resolving-domain
db.192
прежде чем IN NS nefitari.
это @
отсутствует. Также мне пришлось добавить полное доменное имя, поэтому моя рабочая строка выглядела так: @ IN NS nefitari.autun.hom.
я проигнорировал раздел resolv.conf и последовал совету jdthood. Ссылка была уже там с установки сервера по умолчанию.
Ответ - только дополнение к большому описанию выше.
Совет по устранению неполадок
Будь очень осторожен со многими ». в конфигурационных файлах, так как каждый из них важен. Один пропущенный "." может остановить работу DNS-сервера. Вы не должны рассчитывать на четкие сообщения об ошибках.
Я узнал, как правильно использовать более понятный серийный номер. Очень важно увеличивать серийный номер каждый раз при изменении настройки, например, при добавлении новых записей. Если его не увеличить, вторичный DNS не сможет синхронизировать новые настройки. Предлагаемый формат: YYYYMMDDss
где ss
находится «старый» серийный номер. Таким образом, при увеличении вы должны увеличить ss
на +1 и установить дату на текущую дату. Я нашел это очень полезным при устранении неполадок при настройке. В системном журнале вы четко видите дату и серийный номер используемого файла.
В Ubuntu 16.04 изменение resolv.conf не рекомендуется. Как пишет jdthood в своем комментарии, замените шаг следующей процедурой: - Измените / etc / default / bind9: новая воля должна выглядеть так:
# run resolvconf?
RESOLVCONF=yes
# startup options for the server
OPTIONS="-u bind"
# use this when you have trouble with IPV6
#OPTIONS="-u bind -4"
см. комментарий от not-a-patch для проблем IPV6.
поместите символическую ссылку /etc/resolv.conf в /run/resolvconf/resolv.conf
cd /etc
sudo ln -s /etc/resolv.conf /run/resolvconf/resolv.conf
Автономная настройка
Настройка точно такая же, и даже немного проще, так как вы можете просто пропустить разделы пересылки. Они не должны присутствовать, поэтому нет необходимости редактировать /etc/bind/names.con.options
.
Сети класса B
Есть несколько незначительных изменений, необходимых для того, чтобы это работало для сетей класса B (прежде чем появятся комментарии, нет причины, по которой локальная сеть, даже дома, не может быть классом B вместо сети класса C) , В этом примере я использую номер сети 172.20.xx (я думаю, что формальная запись 172.20.0.0. Для получения дополнительной информации google rfc1918).
Используйте описание из первого ответа, замените все IP-адреса 192.168.xx на 172.20.xx, используйте для сервера IP 172.20.0.100 и измените файлы следующим образом:
db.192
становится db.172
.файл named.conf.local
получает другой раздел обратной зоны:
zone "20.172.in-addr.arpe" {
type master;
file "/etc/bind/zones/db.172";
}
Файл обратных зон изменяется на:
;
; BIND reverse data file for 172.20.x.x
;
$TTL 604800
@ IN SOA nefitari.autun.hom. webuser.autun.hom. (
2017022102 ; more intuitive serial YYYYMMDDss, here ss=02
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
; note: the '@'was missing from in the initial description
@ IN NS nefitari.autun.hom.
100.0 IN PTR nefitari.autun.hom.
121.0 IN PTR client1.autun.hom.
130.0 IN PTR client2.autun.hom.
33.0 IN PTR client3.autun.hom.
В остальном то же самое.
Надеюсь, что это полезно для кого-то.