DNS

Как да конфигурирам dnsmasq на Ubuntu Server 18.04 LTS

Как да конфигурирам dnsmasq на Ubuntu Server 18.04 LTS
dnsmasq е много лек локален DNS сървър. dnsmasq може също да бъде конфигуриран като DNS кеш сървър и DHCP сървър. dnsmasq има IPv4 и IPv6 поддържа, включително DHCPv4 и DHCPv6. dnsmasq е идеален за малка мрежа.

В тази статия ще ви покажа как да използвате dnsmasq за конфигуриране на локален DNS сървър, кеширане на DNS сървър и DHCP сървър. И така, нека започнем.

Мрежова топология:

Това е мрежовата топология на тази статия. Тук ще конфигурирам рутер като DNS и DHCP сървър с dnsmasq. рутер има 2 мрежови интерфейса, един (ens33) се свързва с интернет и другият (ens38) се свързва с a мрежов swtich. Всички останали домакини (домакин1, домакин2, домакин3) в мрежата използва DHCP сървър, конфигуриран на рутер за автоматично присвояване на IP адреси и DNS сървър за разрешаване на имена.

Конфигуриране на статичен IP:

В моята мрежова топология, видяхте, моя рутер има два интерфейса ens33 и ens38. свързва рутера към интернет и ens38 е свързан с a мрежов превключвател, към които се свързват други компютри в мрежата. Ще трябва да използвам DHCP, за да получа IP адрес за ens33 интерфейс от моя ISP за интернет връзка. Но, ens38 интерфейсът трябва да се конфигурира ръчно.

Нека използваме мрежата 192.168.10.0/24 за ens38 интерфейс и други компютри в мрежата. Ако все пак използвам мрежата 192.168.10.0/24, след това IP адресът на ens38 интерфейсът на рутера трябва да бъде 192.168.10.1/24. Това е IP адресът на dnsmasq DNS сървъра и DHCP сървъра.

ЗАБЕЛЕЖКА: Името на вашия мрежов интерфейс може да е различно. Можете да разберете какво е за вас с ip a команда.

На Ubuntu Server 18.04 LTS, можете да използвате netplan за конфигуриране на мрежовите интерфейси. По подразбиране конфигурационният файл на netplan е / etc / netplan / 50-cloud-init.ямъл.

Първо отворете конфигурационния файл / etc / netplan / 50-cloud-init.ямъл със следната команда:

$ sudo nano / etc / netplan / 50-cloud-init.ямъл

Сега въведете следните редове и запазете файла, като натиснете + х следван от у и .

Сега рестартирайте вашия рутер със следната команда:

$ sudo рестартиране

Веднъж рутер обувки, IP адресите трябва да бъдат присвоени според очакванията.

Инсталиране на dnsmasq:

dnsmasq се предлага в официалното хранилище на пакети на Ubuntu. Така че можете лесно да го инсталирате с помощта на мениджъра на пакети APT.

Ubuntu използва разрешено от systemd по подразбиране за управление на DNS сървъри и DNS кеширане. Преди да инсталирате dnsmasq, трябва да спрете и деактивирате разрешено от systemd услуги. В противен случай изобщо няма да можете да стартирате dnsmasq.

За да спрете разрешено от systemd услуга, изпълнете следната команда:

$ sudo systemctl спре systemd-разрешен

За да деактивирате разрешено от systemd услуга, изпълнете следната команда:

$ sudo systemctl деактивира системно разрешено

По подразбиране / и т.н. / резолюция.конф файлът е свързан с друг конфигурационен файл на systemd, както можете да видите на екранната снимка по-долу. Но ние вече не го искаме.

И така, премахнете / и т.н. / резолюция.конф връзка със следната команда:

$ sudo rm -v / etc / resolv.конф

Сега създайте нов / и т.н. / резолюция.конф файл и задайте google DNS сървъра като DNS сървър по подразбиране със следната команда:

$ echo "сървър за имена 8.8.8.8 "| sudo tee / etc / resolv.конф

Сега актуализирайте кеша на хранилището на APT пакета със следната команда:

$ sudo apt актуализация

Сега инсталирайте dnsmasq със следната команда:

$ sudo apt инсталира dnsmasq

dnsmasq трябва да бъде инсталиран.

Конфигуриране на dnsmasq DNS сървър:

Конфигурационният файл на dnsmasq е / etc / dnsmasq.конф. За да конфигурирате dnsmasq като DNS сървър, трябва да промените този файл.

По подразбиране / etc / dnsmasq.конф файлът съдържа много документация и коментирани опции. Така че, мисля, че е по-добре да преименувате / etc / dnsmasq.конф файл в / etc / dnsmasq.конф.bk и създайте нов.

Можете да преименувате конфигурационния файл със следната команда:

$ sudo mv -v / etc / dnsmasq.conf / etc / dnsmasq.конф.bk

Сега създайте конфигурационния файл / etc / dnsmasq.конф както следва:

$ sudo nano / etc / dnsmasq.конф

Сега въведете следните редове и запазете файла, като натиснете + х следван от у и .

# DNS конфигурация
порт = 53
 
необходим домейн
фалшив-прив
строг ред
 
разширяване-хостове
домейн = пример.com

ЗАБЕЛЕЖКА: Промяна пример.com към собственото си име на домейн.

Сега рестартирайте услугата dnsmasq със следната команда:

$ sudo systemctl рестартирайте dnsmasq

Не, грешки. Страхотен!

Сега трябва да настроите 192.168.10.1 като адрес по подразбиране на DNS сървъра в / и т.н. / резолюция.конф.

За да направите това, отворете / и т.н. / резолюция.конф файл със следната команда:

$ sudo nano / etc / resolv.конф

Сега въведете 192 серия.168.10.1 преди линията сървър за имена 8.8.8.8 както е показано на екранната снимка по-долу. След това запазете файла.

Това е.

Добавяне на DNS записи:

Сега можете да добавите вашите DNS записи към / etc / hosts файл.

Първо отворете / etc / hosts файл със следната команда:

$ sudo nano / etc / hosts

Сега въведете своите DNS записи в следния формат:

IP_ADDR DOMAIN_NAME

Добавих 4 записа рутер.пример.com (192.168.10.1), домакин1.пример.com (192.168.10.51), домакин2.пример.com (192.168.10.52) , и домакин3.пример.com (192.168.10.53) както е отбелязано на екранната снимка по-долу. Можете да добавите толкова DNS записи, колкото искате.

След като приключите, запазете файла, като натиснете + х следван от у и .

Сега рестартирайте услугата dnsmasq със следната команда:

$ sudo systemctl рестартирайте dnsmasq

Тестване на DNS сървър:

Както можете да видите, локалната DNS резолюция работи.

$ копай рутер.пример.com

Разрешаването на имена в интернет също работи.

$ dig google.com

Конфигуриране на DHCP сървър:

За да конфигурирате DHCP сървър, отворете dnsmasq конфигурационния файл / etc / dnsmasq.конф отново както следва:

$ sudo nano / etc / dnsmasq.конф

Сега добавете маркираните редове в края на файла. След това запазете файла.

# DHCP конфигурация
dhcp-диапазон = 192.168.10.50 192.168.10.240 255.255.255.0,24ч
dhcp-option = option: рутер, 192.168.10.1
dhcp-option = option: dns-server, 192.168.10.1
dhcp-option = option: netmask, 255.255.255.0
dhcp-хост = 00: 0C: 29: A5: BD: 4A, 192.168.10.51
dhcp-хост = 00: 0C: 29: A5: BD: 5B, 192.168.10.52
dhcp-хост = 00: 0C: 29: A5: BD: 6C, 192.168.10.53

Тук, dhcp-обхват се използва за задаване на диапазона от IP адреси, които DHCP сървърът ще присвоява на хостове.

dhcp-опция се използва за задаване на шлюза (опция: рутер), Адрес на DNS сървър (опция: dns-сървър) и мрежова маска (опция: мрежова маска)

dhcp-хост се използва за задаване на конкретни IP адреси на хостове в зависимост от посочените MAC адреси.

Сега рестартирайте услугата dnsmasq със следната команда:

$ sudo systemctl рестартирайте dnsmasq

Тестване на DHCP сървър:

Както можете да видите, компютърът домакин1 получи IP адреса 192.168.10.51/24 от DHCP сървъра.

DNS резолюцията също работи от домакин1.

Същия начин, домакин2 и домакин3 също получава правилния IP адрес от DHCP сървъра и DNS резолюцията работи на всеки един от тях.

Къде да отидем нататък:

Ако искате да научите повече за dnsmasq, проверете конфигурационния файл по подразбиране / etc / dnsmasq.конф (сега преименувано на / etc / dnsmasq.конф.bk). Той има подробно описание на всички опции за конфигуриране на dnsmasq.

$ по-малко / etc / dnsmasq.конф.bk

Конфигурационен файл по подразбиране dnsmasq на Ubuntu Server 18.04 LTS.

И така, вие конфигурирате dnsmasq на Ubuntu Server 18.04 LTS. Благодаря, че прочетохте тази статия.

Урок за OpenTTD
OpenTTD е една от най-популярните бизнес симулационни игри там. В тази игра трябва да създадете прекрасен транспортен бизнес. Въпреки това, ще започне...
SuperTuxKart за Linux
SuperTuxKart е страхотно заглавие, създадено да ви предостави безплатно изживяването на Mario Kart във вашата Linux система. Играта е доста предизвика...
Урок за битка за Уеснот
Битката за Уеснот е една от най-популярните стратегически игри с отворен код, които можете да играете по това време. Тази игра не само се разработва о...