Понимание DNS-сервера в файле /etc/resolv.conf

Я установил сервер Ubuntu в виртуальной машине. Я начал изучать сеть и прочитал для нее книгу.

Это говорит о том, что мой DNS-сервер указан в файле /etc/resolv.conf.

Это IP моего сервера.

luvpreet@server16:~$ hostname -I
192.168.122.62 

Это файл /etc/resolv.conf,

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.122.1

Ну, DNS-сервер сопоставляет удобочитаемые адреса с IP-адресами. В моей основной машине (не в ВМ)

tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      2332/dnsmasq    

DNS-сервер работает.

Но как это работает, я понятия не имею, как этот IP-адрес, то есть 192.168.122.1, служит моим DNS-сервером. Пожалуйста, объясните, как это работает, а также порядок работы этого DNS-сервера.

Я знаю, как работает DNS-сервер, это как телефонная книга, которая помогает нам найти конкретный веб-сайт. Где кеш DNS? Я хочу знать, как этот IP-адрес работает как мой DNS-сервер? Могу ли я связать любой IP-адрес в качестве моего DNS-сервера? Если да, как это сделать? Если нет, то почему?

Извините, если это глупо, но я не понимаю этого.

1 ответ

Решение

Ваш вопрос слишком неясен для меня, но в любом случае я пытаюсь прояснить некоторые вещи.

Как Вам известно 192.168.122.62 ваш сервер (ВМ) IP, и вы должны сидеть на 192.168.122.0/24 сеть.

Если вы бежите ifconfig -a на вашем хост-компьютере, я уверен, что вы получите 192.168.122.1 как один из ваших IP-адресов интерфейсов, он должен быть на виртуальном интерфейсе, созданном вашим гипервизором, например, VirtualBox.

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

И вот почему, когда вы ищете свой resolve.conf вы получаете IP хоста, фактически ваш хост, являющийся маршрутизатором вашей виртуальной машины, отвечает за разрешение DNS-запросов.

Вы можете запустить ip r или же route или же netstat -nr на вашей виртуальной машине, чтобы увидеть таблицу маршрутизации.

Уже давно я не использую dnsmasq, но если я точно помню, отправляете ли вы USR1 сигнализируя его процессу, он генерирует некоторый журнал о кэшированных адресах в своем статусе службы, что-то вроде этого:

kill -USR1 `pidof dnsmasq`

Если вы хотите запустить DNS-сервер: INBIND9
Чтобы узнать больше о dnsmasq, которые слушают на вашем хосте: Dnsmasq

Другие вопросы по тегам