Я настроил VPN с разделенным туннелем для подключения домашнего компьютера к корпоративной сети. Я могу одновременно пинговать интернет-хосты (по имени) и корпоративные серверы (но только по адресу, а не по имени). tracepath
подтверждает, что трафик также использует соответствующий интерфейс. Но я не могу разрешить хосты в сети корпорации по DNS. Однако я могу пропинговать DNS-сервер корпоративной сети (например, на 192.168.0.253), и nslookup sample.corp.local 192.168.0.253
решает:
Server: 192.168.0.253
Address: 192.168.0.253#53
Name: sample.corp.local
Address: 192.168.0.228
Копаясь в этом, я вижу, что разрешение имени сети не меняется, когда Я активирую VPN-соединение, хотя канал PPP получает имена DNS-серверов корпоративной сети (и IP-адрес из корпоративной сети) (см. Ниже).
Это, по-видимому, уже известная проблема с пакетом network-manager.
Я попробовал обходной путь, описанный в теме установки dnscrypt-proxy
, но это не работает для меня, и я не знаю, как даже начать его отладку. Предложения по этому вопросу будут оценены.
В ветке также упоминалась возможность уничтожения процесса dnsmasq
и повторного запуска, но я не вижу ни одного такого процесса, запущенного 19.04.
Я также пытался жестко кодировать информацию DNS в файле .network, но это нарушало разрешение DNS на обеих ссылках. Буду признателен за советы о том, что я сделал неправильно.
file: /etc/systemd/network/50-vpn-corp.network
[Match]
Name=ppp*
[Network]
Description=VPN to corp net
DNS=192.168.0.254
Domains=corp.local
В идеале, я хотел бы, чтобы имена в домене corp.local разрешались DNS-серверами corp net, а имена в интернет-доменах устанавливались на интернет-ссылку и решались напрямую. глобальными DNS-серверами, но я согласен на отправку всех запросов к корпоративным сетевым DNS-серверам. Это не сценарий цензуры.
Я запускаю Ubuntu 19.04, network-manager-l2tp-gnome
из репозитория Canonical и подключаюсь к VPN-клиенту Cisco Meraki, используя эту рекомендованную конфигурацию VPN .
Когда VPN активен на PPP0, $ resolvectl status
показывает:
Global
LLMNR setting: no
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNSSEC NTA: 10.in-addr.arpa
16.172.in-addr.arpa
168.192.in-addr.arpa
17.172.in-addr.arpa
18.172.in-addr.arpa
19.172.in-addr.arpa
20.172.in-addr.arpa
21.172.in-addr.arpa
22.172.in-addr.arpa
23.172.in-addr.arpa
24.172.in-addr.arpa
25.172.in-addr.arpa
26.172.in-addr.arpa
27.172.in-addr.arpa
28.172.in-addr.arpa
29.172.in-addr.arpa
30.172.in-addr.arpa
31.172.in-addr.arpa
corp
d.f.ip6.arpa
home
internal
intranet
lan
local
private
test
Link 6 (ppp0)
Current Scopes: none
DefaultRoute setting: no
LLMNR setting: yes
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
Link 2 (enp30s0)
Current Scopes: DNS
DefaultRoute setting: yes
LLMNR setting: yes
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
Current DNS Server: 2600:1700:2d61:ca0::1
DNS Servers: 127.0.0.2
2600:1700:2d61:ca0::1
DNS Domain: ~.
attlocal.net
И $ cat /etc/ppp/resolv.conf
показывает:
nameserver 192.168.0.253
nameserver 192.168.1.253