A DNS-feloldás VPN-en keresztül nem működik Windows 10 rendszeren
A VPN-kapcsolatokhoz konfigurált DNS-kiszolgálók és utótagok a Windows 10 rendszerben a nevek DNS-feloldására szolgálnak Force Tunneling módban ("Alapértelmezett átjáró használata távoli hálózaton" lehetőség engedélyezve), ha a VPN-kapcsolat aktív. Ebben az esetben nem tudja feloldani a DNS-neveket a helyi hálózaton, és nem férhet hozzá internethez a belső LAN-on keresztül.
Ezzel egyidejűleg megpingelheti a LAN bármely erőforrását (próbálja meg pingelni az átjárót, a szomszédos számítógépet vagy a nyomtató IP-címét). Csak IP-címek alapján érhetők el, gazdagépnevük alapján nem. A tény az, hogy a Windows 10 a VPN-kapcsolat beállításaiban megadott DNS-kiszolgálókon keresztül próbálja feloldani a helyi hálózat gazdagépneveit.
Találtam néhány javaslatot az IPv6 protokoll letiltására a helyi (LAN) interfészen, és ez segíthet, ha a Force-Tunneling módot szeretné használni.
Ha a Split Tunneling funkciót használja (az „Alapértelmezett átjáró használata távoli hálózaton” lehetőség nincs bejelölve) VPN-kapcsolatához, elérheti az internetet a helyi hálózatáról, de nem tudja feloldani a DNS-címeket a távoli VPN-hálózatban (az IPv6 letiltása itt nem segít).
Meg kell értenie, hogy a Windows DNS-lekérdezést küld a hálózati interfészről, amely a legmagasabb prioritású (az interfész metrikájának alacsonyabb értéke). Például a VPN-kapcsolata megosztott alagút módban működik (az Internetet a LAN-ról és a vállalati erőforrásokról szeretne elérni VPN-en keresztül).
Ellenőrizze az összes hálózati interfész-metrika értékét a PowerShellből:
Get-NetIPInterface | Sort-Object InterfacemetricA fenti képernyőképen látható, hogy a helyi Ethernet-kapcsolat mutatója alacsonyabb (25), mint a VPN-interfész (100). Tehát a DNS-forgalom az alacsonyabb mérőszámú felületen megy keresztül. Ez azt jelenti, hogy a DNS-kérelmeit a helyi DNS-kiszolgálókra küldi el a rendszer a VPN-kapcsolathoz szükséges DNS-kiszolgálók helyett. Ebben a konfigurációban nem tudja feloldani a neveket a csatlakoztatott külső VPN-hálózatban.
Emellett meg kell említeni a Windows 8.1 és Windows 10 rendszerekhez készült DNS-kliens egy új funkcióját. Az Smart Multi-Homed Name Resolution (SMHNR) funkciót adták hozzá ezekhez az operációs rendszer verziókhoz, hogy gyorsabban válaszolhasson a DNS-kérésekre. Alapértelmezés szerint az SMHNR egyidejű DNS-kérelmeket küld a rendszer által ismert összes DNS-kiszolgálónak, és az elsőként kapott választ használja (LLMNR- és NetBT-lekérdezéseket is küld). Nem biztonságos, mivel a külső DNS-kiszolgálók (amelyek a VPN-kapcsolathoz vannak megadva) potenciálisan láthatják a DNS-forgalmat (a DNS-kérelmek kiszivárgását). Az SMHNR-t a Windows 10 rendszerben a csoportházirend-objektumban tilthatja le: Számítógép konfigurációja -> Felügyeleti sablonok -> Hálózat -> DNS-ügyfél -> Az intelligens többlakásos névfeloldás kikapcsolása=Engedélyezve.
Vagy letilthatja az SMHNR-t a következő parancsokkal (Windows 8.1 rendszerben):
Set-ItemProperty -Path "HKLM:\Software\Policies\Microsoft\Windows NT\DNSClient" -Name DisableSmartNameResolution -Value 1 -Type DWord
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters" -Name DisableParallelAandAAAA -Value 1 -Type DWordA Windows 10 Creators Update (1709) és újabb verzióiban a DNS-kéréseket egyenként (nem párhuzamosan) küldi el az összes ismert DNS-kiszolgáló. Növelheti egy adott DNS prioritását, ha csökkenti a mutatóit.
Így az interfész metrikájának módosítása lehetővé teszi DNS-kérések küldését azon a kapcsolaton (LAN vagy VPN) keresztül, ahol a névfeloldás a legfontosabb az Ön számára.
Így minél alacsonyabb az interfész metrika értéke, annál magasabb a kapcsolat prioritása. A Windows automatikusan hozzárendeli az IPv4 interfészek metrikáit azok sebességétől és típusától függően. Például egy > 200 Mbit/s sebességű LAN-kapcsolat metrika értéke 10, egy 50-80 Mbit/s sebességű Wi-Fi kapcsolat pedig 50 (lásd a táblázatot https:/ /support.microsoft.com/en-us/help/299540/an-explanation-of-the-automatic-metric-feature-for-ipv4-routes).
Az interfész metrikáját a Windows grafikus felhasználói felületéről, a PowerShellről vagy a netsh paranccsal módosíthatja.
Például azt szeretné, hogy a DNS-kérelmeit a VPN-kapcsolaton keresztül küldjék el. Növelnie kell a LAN-kapcsolatok mérőszámát, hogy értékeik meghaladják a 100-at (az én példámban).
Lépjen a Vezérlőpult -> Hálózat és internet -> Hálózati kapcsolatok elemre, nyissa meg az Ethernet-kapcsolat tulajdonságait, válassza ki a TCP/IPv4 tulajdonságokat, és lépjen a Speciális TCP/IP-beállítások elemre. > fülre. Törölje az Automatikus metrika opció jelölését, és módosítsa az interfész mutatóját 120 értékre.
Ugyanezt megteheti a következő PowerShell paranccsal (használja a LAN-interfész indexét, amelyet a Get-NetIPInterface parancsmaggal érhet el):
Set-NetIPInterface -InterfaceIndex 11 -InterfaceMetric 120Vagy a netsh használatával (adja meg a LAN-kapcsolat nevét):
netsh int ip set interface interface="Ethernet0" metric=120Ugyanígy csökkentheti a metrika értékét a VPN-kapcsolat tulajdonságaiban.
A VPN-kapcsolat beállításait úgy is módosíthatja, hogy a módot Osztott alagútra állítja, és DNS-utótagot ad meg a PowerShell használatával való kapcsolathoz:
Get-VpnConnection
Set-VpnConnection -Name "VPN_work" -SplitTunneling $True
Set-VpnConnection -Name "VPN_work" -DnsSuffix yourdomainname.com


