0
- 16.07.2015 - 20:02
|
Доброго времени суток. Настроил такую связку: Client --> Local DNS Cache (dnsmasq 127.0.1.1:53) --> Local DNSCrypt Proxy (dnscrypt-proxy 127.0.2.1:53) <--https--> Remote Open DNS Server В параметрах сетевого соединения wlan0 (wifi) прописал в качестве DNS сервера 127.0.2.1. В /etc/resolv.conf только одна строчка 127.0.1.1 dnsmasq работает по dbus в связке с NetworkManager. Т. е. при установке/разрыве соединения NetworkManager уведомляет dnsmasq, чтобы он добавил/убрал DNS-сервера, полученные по DHCP, или прописанные в соединении (в моем случае 127.0.2.1). больше dnsmasq ниоткуда не берет списки (запускается с no_resolv, и на механизм resolveconf не обращает внимания). при старте dnsmasq, однако уведомляет resolvconf, чтобы тот зарегистрировал его у себя и так как в ubuntu по умолчанию включена опция simoncat@l01:~$ cat /etc/default/resolvconf TRUNCATE_NAMESERVER_LIST_AFTER_LOOPBACK_ADDRESS=ye s то формируется только одна строчка в simoncat@l01:~$ cat /etc/resolv.conf nameserver 127.0.1.1 соответственно, все DNS запросы идут на dnsmasq 127.0.1.1:53 он их перенаправляет на dnscrypt-proxy 127.0.2.1:53, а тот по https отправляет на opendns сервер с поддержкой DNSCrypt. Все работает. Но есть еще VPN. Откуда по DHCP передаются также и DNS сервера конторы. NetworkManager добавляет их по dbus в dnsmasq (192.168.0.3) в соответствии с описанным выше, а resolveconf рефрешит /etc/resolv.conf. simoncat@l01:~$ cat /etc/resolv.conf nameserver 127.0.1.1 search mydomain.local И тогда получается ситуация. Пока VPN не включен DNS запросы идут как надо на OpenDNS сервера 127.0.1.1->127.0.2.1->https->opendns.com Когда VPN включен 127.0.1.1->192.168.0.3 Можно ли как-то сделать, чтобы ломилось всегда на 127.0.1.1(dnsmasq)->127.0.2.1, а если не получилось разрешить имя то 127.0.1.1(dnsmasq)->192.168.0.3, как бы задать в dnsmasq чтобы приоритет отдавал 127.0.2.1, а только потом 192.168.0.3? | |
1
- 16.07.2015 - 20:41
| Прописать насильно в свойствах VPN-подключения: первым DNS - 127.0.2.1, вторым - 192.168.0.3? | |
2
- 16.07.2015 - 21:00
|
DNS1 - 127.0.2.1 DNS2 - 192.168.0.3 при таком раскладе, после установления, идет на 127.0.2.1 но nslookup myserver НЕ НАХОДИТ сервер а если прописать DNS1 - 127.0.2.1 DNS2 - 192.168.0.3 DOMAIN SEARCH mydomain.local при таком раскладе, nslookup myserver НАХОДИТ сервер но DNS запросы идут на 192.168.0.3 | |
3
- 16.07.2015 - 21:03
|
при таком раскладе, nslookup myserver НАХОДИТ сервер но ВООБЩЕ ВСЕ DNS запросы идут на 192.168.0.3 | |
4
- 16.07.2015 - 21:04
|
Курю статейку. Пока не знаю поможет ли http://blog.nixpanic.net/2013/03/use...s-queries.html Если есть мысли - буду благодарен. | |
6
- 16.07.2015 - 22:10
| 5-droidman > большое вам спасибо. очень похоже на то. завтра man'ы подробнее почитаю и потестирую. отпишусь. | |
7
- 17.07.2015 - 00:05
|
5-droidman > большое спасибо вам, ссылка очень помогла. 1) поставил всем соединениям настройки DHCP в address only, а для VPN соединения address only + прописал DOMAIN SEARCH mydomain.local 2) для dnsmasq прописал в simoncat@l01:~$ cat /etc/NetworkManager/dnsmasq.d/server server=127.0.2.1 server=/mydomain.local/192.168.0.3 server=/mydomain.local/192.168.0.4 2) и все заработало как хотел 3) после (2) столкнулся с проблемой описанной здесь http://www.lowlevelmanager.com/2011/...ith-local.html применил оттуда решение и все теперь работает как и задумывал :) корпоративные сервера резолвятся через их домены интернеты резолвятся через dnscryptproxy/opendns | |
| Интернет-форум Краснодарского края и Краснодара |