После начальной загрузки Ubuntu 18.10 я не могу разрешить доменные имена и мой /etc/resolv.conf
файл похож на это:
# Generated by NetworkManager
nameserver 127.0.0.53
$ nslookup google.com - 127.0.0.53
команда ничего не возвращает также.
Это стало проблемой после установки этого сценария для поддержки DNS в OpenVPN: https://github.com/masterkorp/openvpn-update-resolv-conf
Я думаю, что установил openresolv
пакет, но я не уверен, как настроить все для сотрудничества.
Прямо сейчас я просто должен вручную обновить /etc/resolv.conf
с серверами Google DNS каждый раз после начальной загрузки. Однако VPN хорошо работает, таким образом, похоже, что это обновляет DNS для этого.
Что могло быть сделано, чтобы заставить его работать после перезагрузки ПК и после установления туннеля VPN с OpenVPN?
Любые предложения будут высоко цениться.
Команды требует @heynnema:
Я выполнил их сразу после перезагрузки, прежде, чем соединиться с VPN.
$ cat /etc/issue
Ubuntu 18.10
$ uname -a
Linux destiny 4.18.0-13-generic #14-Ubuntu SMP Wed Dec 5 09:04:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
$ ls -al /etc/resolv.conf
-rw-r--r-- 1 root root 52 янв 21 21:20 /etc/resolv.conf
$ ps auxc | grep -i dns
$ host 8.8.8.8
;; connection timed out; no servers could be reached
$ host www.ebay.com
;; connection timed out; no servers could be reached
$ ps auxc | grep -i resolv
$ cat /run/resolvconf/resolv.conf
cat: /run/resolvconf/resolv.conf: No such file or directory
$ cat /run/systemd/resolve/resolv.conf
cat: /run/systemd/resolve/resolv.conf: No such file or directory
$ ls -al /etc/openvpn
total 36
drwxr-xr-x 5 root root 4096 янв 15 14:54 .
drwxr-xr-x 139 root root 12288 янв 21 23:43 ..
drwxr-xr-x 2 root root 4096 сен 3 11:57 client
drwxr-xr-x 2 root root 4096 янв 15 14:25 scripts
drwxr-xr-x 2 root root 4096 сен 3 11:57 server
-rwxr-xr-x 1 root root 1468 сен 3 11:57 update-resolv-conf
-rwxr-xr-x 1 root root 2152 янв 15 14:54 update-resolv-conf.sh
# openvpn --version
OpenVPN 2.4.6 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Sep 3 2018
library versions: OpenSSL 1.1.1 11 Sep 2018, LZO 2.10
Originally developed by James Yonan
Copyright (C) 2002-2018 OpenVPN Inc <sales@openvpn.net>
Compile time defines: enable_async_push=no enable_comp_stub=no enable_crypto=yes enable_crypto_ofb_cfb=yes enable_debug=yes enable_def_auth=yes enable_dependency_tracking=no enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown enable_fast_install=needless enable_fragment=yes enable_iproute2=yes enable_libtool_lock=yes enable_lz4=yes enable_lzo=yes enable_maintainer_mode=no enable_management=yes enable_multihome=yes enable_pam_dlopen=no enable_pedantic=no enable_pf=yes enable_pkcs11=yes enable_plugin_auth_pam=yes enable_plugin_down_root=yes enable_plugins=yes enable_port_share=yes enable_selinux=no enable_server=yes enable_shared=yes enable_shared_with_static_runtimes=no enable_silent_rules=no enable_small=no enable_static=yes enable_strict=no enable_strict_options=no enable_systemd=yes enable_werror=no enable_win32_dll=yes enable_x509_alt_username=yes with_aix_soname=aix with_crypto_library=openssl with_gnu_ld=yes with_mem_check=no with_sysroot=no
$ systemctl status | head -n 6
● destiny
State: running
Jobs: 0 queued
Failed: 0 units
Since: Tue 2019-01-22 17:33:01 MSK; 1min 29s ago
CGroup: /
$ systemctl status systemd-resolved
● systemd-resolved.service - Network Name Resolution
Loaded: loaded (/lib/systemd/system/systemd-resolved.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:systemd-resolved.service(8)
https://www.freedesktop.org/wiki/Software/systemd/resolved
https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients
Примечание: DNS прерван 18.xx, с/без VPN.
Проблемы...
/etc/resolv.conf
зашитый файл и должна быть символьная ссылка/run/resolvconf/resolv.conf
и /run/systemd/resolve/resolv.conf
не становятся заполненнымиopenresolv
systemd-resolved
отключен и не выполнениеnetwork-manager
пакетыТак... только для запуска...
openresolv
удалите все модификации на основе ссылки GitHub
повторно включите и перезапустите systemd-resolved
sudo systemctl enable systemd-resolved
# повторно включите systemd-разрешенный
sudo systemctl start systemd-resolved
# запустите systemd-разрешенный
sudo systemctl status systemd-resolved
# проверьте состояние
/etc/resolv.conf
символьная ссылкаsudo rm -i /etc/resolv.conf
# удалите зашитый файл
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
# воссоздайте символьную ссылку
sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf
# воссоздайте символьную ссылку
reboot
# перезагрузите систему
после перезагрузки...
cat /etc/resolv.conf
# проверьте содержание/etc/resolv.conf
и подтвердите, что это содержит что-то как 192.168.x.1 или IP-адрес восходящего сервера DNS.
Мы изменим Ваши .ovpn сценарии, импортируем их в NetworkManager и протестируем VPN позже. Одной вещью отметить является то использование sudo openvpn script_name.ovpn
может привести к различным результатам, чем импорт .ovpn файла в NetworkManager.
Для Ваших .ovpn файлов...
Добавьте следующее в конце файла (попробуйте это только одним из Ваших .ovpn файлов).
script-security 2
up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf
затем попробуйте...
sudo openvpn script_name.ovpn
# подключение через cli
cat /etc/resolv.conf
# перепроверьте содержание и подтвердите изменения
resolvectl
# проверьте, что серверы DNS становятся присвоенными tap0
Проверьте на утечки DNS по http://dnsleak.com
Обновление № 1:
Я передумал (по крайней мере временно) и решил измениться, символьная ссылка на шаге "воссоздают /etc/resolv.conf
символьная ссылка"...
/etc/resolv.conf
символьная ссылкаsudo rm -i /etc/resolv.conf
# удалите символьную ссылку
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
# воссоздайте символьную ссылку
sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf
# воссоздайте символьную ссылку
resolvectl
может не показать ожидаемый результат для устройства tap0 с VPNОбновление № 2:
Теперь мы импортируем измененный .ovpn файл в NetworkManager.
Network
панель настроекImport from file
проверьте на утечки DNS по http://dnsleak.com
resolvectl
должен показать ожидаемый результат для устройства tap0 с VPN
Обновление № 3:
network-manager-openvpn
network-manager-openvpn-gnome
network-manager-vpnc
dpkg -l *resolv* | grep ii
)...resolvconf
libnss-resolve
Обновление № 4:
Вот является снимок экрана "Проводного соединения" сценарием NM, о котором я говорю... можно установить DNS там (не забудьте устанавливать DNS, АВТОМАТИЧЕСКИЙ на ПРОЧЬ и затем вводить разделенные от запятой IP-адреса DNS)... или редактирование /etc/systemd/resolved.conf
и редактирование #DNS=
строка... однако любой из них мог бы переопределить автоматическую обработку DNS с VPN, что мы пытаемся достигнуть 100%.
Помните то использование sudo openvpn client.ovpn
приводит к немного отличающимся результатам, чем инициирование соединение VPN от NetworkManager с импортированным .ovpn сценарием. В любом случае Вы захотите контролировать два resolv.conf, к которым у нас есть symlinked /etc/resolv.conf
и посмотрите, какой соответственно показывает серверы DNS или от Вашей локальной сети или от сети VPN, но обычно не оба... затем корректируют символьную ссылку при необходимости. (отметьте: нам, вероятно, придется также отредактировать /etc/nsswitch.conf
... больше на этом позже).
Помните, что я сказал, что DNS довольно странен в 18.xx :-) Я наконец получил горные выработки вполне прилично, но они заняли время.
Обновление № 5:
Что-то для попытки... Я не играл с этим сам..., так сообщите со своими результатами.
Править /etc/nsswitch.conf
и временно прокомментируйте:
hosts: files myhostname mdns4_minimal [NOTFOUND=return] dns
и положенный это на его место:
hosts: files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns myhostname
Обновление № 6:
Если это сбивает с толку... помнят, что я сказал, что это могло бы быть...
Вот тест для Вас для выполнения... делают тщательные заметки, поскольку легко понять его превратно из памяти... Я знаю, что сделал...
Давайте просто просто посмотрим на вывод resolvectl
. Существует 3 различных места, которые мы должны надеяться видеть, работает ли это на самом деле правильно.
Global
LLMNR setting: no
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
Current DNS Server: 10.200.0.1 <--note
DNS Servers: 10.200.0.1 <--note
и...
Link 5 (tun0)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
Current DNS Server: 10.200.0.1 <--note
DNS Servers: 10.200.0.1 <--note
DNS Domain: ~.
и...
Link 2 (eth0)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
Current DNS Server: 192.168.0.1 <--note
DNS Servers: 192.168.0.1 <--note
DNS Domain: ~
Запустите два отдельных теста...
Тест № 1...
sudo openvpn client.ovpn
http://dnsleak.com
и проверьте на IP VPN и на утечки DNSТест № 2...
http://dnsleak.com
и проверьте на IP VPN и на утечки DNS