Зашто се RDP замрзне када се удаљени рачунар повеже на VPN
VPN успева, а радна површина се замрзне: тунел је променио повратни пут ваше сесије. Најпре забележите адресу партнера, руту и профил заштитног зида.
Налазите се у RDP прозору, радна површина је на екрану и притискате Connect у VPN клијенту који ради на том удаљеном рачунару. Неколико секунди касније прозор се замрзне и затим се затвори. Тунел се подигао, што је управо оно што ће VPN дневник пријавити, и то је најмање корисна чињеница у целом инциденту. Сесија је прекинута јер је рачунар са којим сте разговарали променио начин на који вам одговара, зато проверите повратни пут пре него што дирнете тунел.
Забележите крајњу тачку коју ваша сесија заиста користи
Адреса уписана у ваш RDP клијент није нужно адреса на коју удаљени рачунар одговара. NAT, RD Gateway или балансер оптерећења испред хоста могу је преписати, а повратни пут дефинише изворна адреса коју удаљени рачунар види на успостављеној вези. Ако то погрешите, тражићете руту која никада није била укључена.
На удаљеном рачунару, пре него што је VPN повезан, излистајте успостављене сесије и прочитајте адресу партнера из табеле. Затим је запишите негде изван тог рачунара, јер је нећете моћи прочитати након што сесија падне.
Get-NetTCPConnection -LocalPort 3389 -State Established | Select-Object LocalAddress, RemoteAddress, RemotePort
Третирајте ту адресу као оно што мора остати доступно. Ако је то приватна адреса на управљачком VLAN-у, тунел мора оставити тај пут на миру. Ако је јавна адреса, одговор мора изаћи кроз исти интерфејс који је довео захтев унутра.
Прочитајте руту која одговара тој крајњој тачки
Windows бира интерфејс за свако одредиште, а Find-NetRoute показује одлуку коју би сада донео. Покрените га на адреси партнера пре повезивања, затим поново са подигнутим тунелом, и упоредите индекс интерфејса и следећи скок у два одговора. Промена интерфејса је цела грешка у једном реду излаза.
Find-NetRoute -RemoteIPAddress 203.0.113.24 Get-NetRoute -DestinationPrefix 0.0.0.0/0 | Sort-Object RouteMetric Get-VpnConnection -Name "Work VPN" | Select-Object SplitTunneling, Routes
Профил пуног тунела инсталира подразумевану руту кроз тунел, како описује Windows водич за VPN рутирање, па сваки одговор сада излази кроз VPN и зависи од тога да ли супротна страна рутира назад ка вашем клијенту. Профил подељеног тунела је подразумевано безбеднији, али није имун, јер специфична рута која покрива адресу партнера и даље може победити физичку подразумевану руту. У сваком случају питање је исто: након што се тунел подигне, да ли се адреса партнера још увек разрешава на интерфејс који је довео сесију унутра?
Ако не, исправка припада профилу или експлицитној изузетној рути коју одобри власник VPN политике. Ручно уређивање табеле рутирања на продукционом хосту током инцидента је начин на који привремено решење постаје недокументована конфигурација.
Пратите промену профила заштитног зида
Нови интерфејс се класификује када се појави, а класификација одлучује према ком профилу заштитног зида се оцењује његов саобраћај. Тунелски адаптер који заврши у категорији Public може тихо зауставити долазни RDP иако табела рутирања изгледа савршено. То је други начин отказа и даје другачији симптом: рута је исправна, пакети стижу, а хост одбија везу.
Get-NetConnectionProfile Get-NetFirewallProfile | Select-Object Name, Enabled Get-NetFirewallRule -DisplayGroup "Remote Desktop" | Select-Object Name, Enabled, Profile
Упоредите профил везан за тунелски интерфејс са профилима на које су усмерена правила Remote Desktop. Правило омогућено само за Domain и Private не чини ништа за интерфејс класификован као Public, и никаква корекција руте то не мења. Неки VPN клијенти такође дизајном ограничавају приступ локалној подмрежи, што производи исти облик отказа из другог механизма.
Тестирајте прелаз са места са којег можете да се опоравите
Изведите цео низ са ванпојасне конзоле или другог управљачког пута, овим редом: потврдите постојећу сесију, повежите VPN, отворите нову сесију, затим прекините VPN и отворите још једну. Сваки корак тестира други прелаз, а први који не успе каже вам који је механизам одговоран.
Закажите враћање пре почетка, на пример заказани задатак који извршава rasdial "Work VPN" /disconnect након задатог интервала. То претвара изгубљену сесију у петоминутни прекид уместо посете локацији, и то је најјефтиније осигурање у целом поступку.
Вратите се унутра када је сесија већ нестала
Ако је хост већ недоступан, престаните да испробавате нове RDP везе са истог клијента и употребите канал за опоравак који окружење већ има: RD Gateway, конзолу хипервизора или ванпојасни управљачки интерфејс. Замолите особу са приступом конзоли да покрене исте команде Find-NetRoute и Get-NetConnectionProfile, како би докази преживели опоравак.
Затим одлучите трајни распоред, а не најбржи. Или је управљачки пут изричито сачуван VPN профилом, или се управљање сели на канал који не зависи од подразумеване руте хоста. Оба су одржива; рута до хоста са нагађаним гејтвејем није. Запишите који сте изабрали и забележите адресу партнера која је морала да преживи.