LINUX.ORG.RU
ФорумAdmin

Два сетевых интерфейса со своими DNS, как работает?

 ,


0

2

Запускаю через NetworkManager два интерфейса: ethernet и Wi-Fi, у каждого свои DNS. Маршрут по-умолчанию - от Wi-Fi. Маршруты к двум DNS для ethernet прописаны явно. В resolv.conf пишутся только search <domain1> <domain2>. Сервера пишутся куда-то еще (кстати куда?).

Возникает два вопроса: 1. используются DNS от обоих интерфейсов или только от того который поднимался последним? 2. если ответ на первый - «от обоих», то как определяется приоритет?



Последнее исправление: cetjs2 (всего исправлений: 2)

В принципе нашел что используется dnsmasq:

/usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/sendsigs.omit.d/network-manager.dnsmasq.pid --listen-address=127.0.0.1 --conf-file=/var/run/nm-dns-dnsmasq.conf --cache-size=0 --proxy-dnssec --enable-dbus --conf-dir=/etc/NetworkManager/dnsmasq.d
Но вопросы остаются открытыми.

frymock
() автор топика

Используется первый, если он недоступен, то запрос на разрешение имени отправляется второму в списке.

Если первый доступен и дал отрицательный ответ, то второму запрос на разрешение имени даваться не будет, даже если он знает IP адрес запрошенного домена.

В таком случае возможным решением проблемы может стать использование кэширующего DNS сервера, на котором будут описаны зоны, которые должны обслуживаться соответствующим DNS сервером, примерно так в случае bind:

zone "company1.ru." IN {
        type forward;
        forwarders {
                IP_DNC_COMPANY1;
        };
zone "company2.ru." IN {
        type forward;
        forwarders {
                IP_DNC_COMPANY2;
        };

В /etc/resolv.conf в таком случае прописывается строка подстановки домен и указывается IP кэширующего DNS сервера, на котором прописаны зоны.

search company1.ru
search company2.ru
nameserver IP

kostik87 ★★★★★
()

Запускаю через NetworkManager два интерфейса: ethernet и Wi-Fi, у каждого свои DNS. Маршрут по-умолчанию - от Wi-Fi.

Запусти к примеру wireshark и увидишь точно. По идеи должен быть использован dns от активного соединения, т.е. я так понимая в твоем случае от wi-fi, но если до этого использовалось другое соединение, eth, а после ты переключился на wi-fi, то обращения будут идти из кеша, полученного от eth, а потом уже для всего нового через dns wi-fi. Короче сначала к кешу, а потом уже к dns.

anonymous_sama ★★★★★
()
Последнее исправление: anonymous_sama (всего исправлений: 1)
Ответ на: комментарий от anonymous_sama

Я чуть выше упоминал про dnsmasq. Суть в том что NetworkManager его стартует локально, а в /etc/resolv.conf пишет nameserver 127.0.0.1, правда почему то до search, а не после. По идее можно задать его (dnsmasq) конфиг(внутри конфигов NetworkManager), но у меня он почему-то не подцепился.

Полистал man по dnsmasq, похоже он рандомно выбирает к какому dns обратиться в первую очередь. Что-то похожее про зоны там тоже было.

Собственно моя проблема заключается в том что DNS от обоих интерфейсов знают одни и те-же имена, но резолвят их в разные IP. Независимо от порядка старта интерфейсов почему то резолвится по DNS от ethernet (если его отключить, то используется от Wi-Fi(логично)). Мне нужно чтобы в первую очередь обращалось все к DNS от Wi-Fi, и если DNS не знает такого имени уже к Ethernet DNS.

frymock
() автор топика
Ответ на: комментарий от kostik87

Используется первый, если он недоступен, то запрос на разрешение имени отправляется второму в списке.

Если первый доступен и дал отрицательный ответ, то второму запрос на разрешение имени даваться не будет, даже если он знает IP адрес запрошенного домена.

А это где-то описано или просто наблюдение?

В таком случае возможным решением проблемы может стать использование кэширующего DNS сервера, на котором будут описаны зоны, которые должны обслуживаться соответствующим DNS сервером, примерно так в случае bind:

Этот dnsmasq собственно и является легковесным кеширующим DNS-сервером (dnsmasq - A lightweight DHCP and caching DNS server).

frymock
() автор топика
Ответ на: комментарий от frymock

А это где-то описано или просто наблюдение?

Это стандарт.

kostik87 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.