Доступ к внутренним ресурсам при активном VPN-соединении должен работать только при активном Split Tunneling.
Раздельное туннелирование - это концепция компьютерных сетей, которая позволяет мобильному пользователю получить доступ к различным доменам безопасности, таким как публичная сеть. пользователю получить доступ к различным доменам безопасности, таким как публичная сеть (например, Интернет) и локальной сети LAN или WAN одновременно, используя одно и то же или разные сетевые соединения.
При раздельном туннелировании все зависит от того, что сервер DNS-заказа имеет DNS VPN в верхней части и ваши обычные DNS-серверы в конце. В соответствии с обычной внутренней работой DNS, верхние серверы, не выполнившие запрос, передадут его нижним.
Похоже, что у вас уже активно раздельное туннелирование, согласно нашей отладке, так что в качестве быстрого решения, это вопрос добавления вашего DNS в /etc/ppp/resolv.conf
.
Что касается более общего подхода, на этой странице говорится об использовании dnsmasq.
DNS-маршрутизация после PPTP-соединения
Решением может быть запуск локального DNS-сервера, который может перенаправлять запросы к другим DNS-серверам на основе субдомена/домена.
В сетевом менеджере Ubuntu уже запущен локальный DNS-сервер (dnsmasq-base), однако необходимые опции недоступны, поэтому отключите его, затем установите и настройте полный пакет dnsmasq следующим образом
1) Закомментируйте dns=dnsmasq из /etc/NetworkManager/NetworkManager.conf
2) Перезапустите network-manager: sudo service network-manager restart
3) Установите пакет dnsmasq: sudo apt-get install dnsmasq
4) Отредактируйте /etc/dnsmasq.conf и добавьте: address=/.mywork/VPN_DNS_IP address=/#/INTERNET_DNS_IP
5) Перезапустите dnsmaq: sudo service dnsmasq restart
Я также оставлю здесь ссылку, касающуюся безопасности при использовании VPN протоколов.
Реализация PPTP от Microsoft имеет серьезные уязвимости в безопасности. уязвимости. MSCHAP-v2 уязвим для атаки по словарю, а алгоритм алгоритм RC4 подвержен атаке с перестановкой битов. Microsoft настоятельно рекомендует перейти на IPSec, когда речь идет о конфиденциальности.
Прочитать каждую строку из файла groups. Разделите члены запятой, отсортируйте их, снова соедините вместе. Распечатайте строку с другими нетронутыми компонентами.
while IFS=: read u x g members
do
members=$(tr ',' '\n' <<<"$members" | sort | xargs | tr ' ' ',')
printf "%s:%s:%d:%s\n" "$u" "$x" $g "$members"
done </etc/group
Вы можете использовать Awk или Perl:
gawk -F: '
$4 != "" {
n = split($4,a,/,/);
asort(a);
for (i=1;i<n;i++) printf "%s,", a[i];
print a[n]
}
' /etc/group
или
perl -F: -lne '
print join ",", sort split /,/, $F[3] if $F[3] =~ /\S/
' /etc/group
Обе пропускают группы с пустыми списками участников; вы можете опустить этот тест и / или повторно -написать другие поля, если хотите, например.
$ perl -F: -lne 'print join ":", @F[0..2], join ",", sort split /,/, $F[3]' /etc/group > group.sorted
$
$ diff /etc/group group.sorted
5c5
< adm:x:4:syslog,steeldriver
---
> adm:x:4:steeldriver,syslog