Я не вірю, що існує спосіб запобігти цьому, крім статичного призначення DNS-серверів у VPN-з'єднанні.
Щоб змінити порядок запиту DNS-серверів, потрібно мати змогу змінити порядок прив'язки інтерфейсу відповідно до https://superuser.com/a/314379/120267 , але це, мабуть, не впливає на VPN-з'єднання в моє особисте тестування на Windows 7; Я підтвердив, що моє VPN-з'єднання послідовно додається у верхню частину HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Linkage\Bind
списку, незалежно від налаштувань порядку прив’язки інтерфейсу.
Однак ви можете скинути зміни DNS після встановлення з'єднання VPN.
Збір інформації
Відкрийте командний рядок ( Start
-> Run...
-> cmd
) і запустіть netsh interface ipv4 show dnsservers
. Ви побачите вихід, подібний до наступного:
Configuration for interface "My VPN"
Statically Configured DNS Servers: 11.22.33.44
55.66.77.88
...
Configuration for interface "Local Network Connection"
DNS servers configured through DHCP: 192.168.0.1
192.168.0.2
...
Вам потрібна назва інтерфейсу для VPN та, можливо, перший DNS-сервер вашого зв'язку, що не є VPN . У цьому прикладі вони є My VPN та 192.168.0.1 відповідно.
Налаштування все це
Варіант 1: Вимкнути VPN DNS
Якщо припустити, що DNS-сервери VPN вашого VPN взагалі не потрібні, ви можете просто запустити наступне в командному рядку:
netsh interface ipv4 delete dnsservers name="<Interface Name>" address=all validate=no
Eg: netsh interface ipv4 delete dnsservers name="My VPN" address=all validate=no
Якщо ви netsh interface ipv4 show dnsservers
знову запустите , ви побачите, що сервери DNS, пов’язані з VPN, видалено; DNS-сервери вашого не-VPN-з'єднання будуть використовуватися для вирішення імен хостів.
Варіант 2: Доповнення VPN DNS
Якщо вам потрібні сервери DNS вашого VPN для вирішення імен хостів внутрішньої мережі, у командному рядку можна виконати наступне:
netsh interface ipv4 add dnsservers name="<Interface Name>" address=<Non-VPN DNS server> index=1 validate=no
Eg: netsh interface ipv4 add dnsservers name="My VPN" address=192.168.0.1 index=1 validate=no
У цьому випадку netsh interface ipv4 show dnsservers
буде показано, що перший DNS-сервер вашого зв’язку, який не є VPN, додано до верхньої частини списку DNS-серверів вашого VPN. Він буде використаний для вирішення імен хостів спочатку, і якщо це не вдалося, перейдіть до використання звичайних серверів DNS вашого VPN.