Екі Windows конфигурациясы Параметрлерде бірдей көрінеді және мүлдем басқаша әрекет етеді. Біреуі қолданба триггері бар көшірілген VPN профилі, сондықтан бір орындалатын файлды іске қосу туннельді көтереді. Екіншісі бөлінген туннель профилі, оның маршруттар тізімі кездейсоқ сол қолданба сөйлесетін нәрсені қамтиды. Біріншісі туннель қашан бар екеніне жауап береді. Екіншісі қандай пакеттердің кіретініне жауап береді, және тек екіншісі машинаның қалғанын физикалық байланыста қалдырады, қолданба қосылған күйде қалады.

Триггер — өмірлік цикл ережесі, маршруттау ережесі емес

Add-VpnConnectionTriggerApplication орындалатын файл жолын профиль атауына байланыстырады. Бұл процесс басталғанда, Қашықтан қатынау қосылыстарының менеджері профильді шақырады, және триггер шарты аяқталғанда, қосылым үзілуі мүмкін. Бұл алмасуда ештеңе сокеттерді тексермейді. Командаға көтерілген shell, бинарлық файлға толық жол және -Force бар жазбаны ауыстырғанда қажет. Байланыс сақталғанын мынамен растаңыз: Get-VpnConnectionTrigger сұрауға сенудің орнына; Microsoft-тың Add-VpnConnectionTriggerApplication анықтамасы параметрлер мен мысалдарды тізіп береді.

Екі шектеу „триггер ештеңе істемейді“ деген хабарламалардың көбін түсіндіреді. Триггерлер барлық пайдаланушыларға арналған профильдердің айналасында құрылған, сондықтан профиль ауқымы бірінші шешілетін мәселе, ал қолданба жолы нақты іске қосылатын бинарлық файлға сәйкес болуы керек, таңбалауышқа немесе екінші процесті жасайтын іске қосқышқа емес. Екінші шектеу әдейі: Windows сенімді деп жіктейтін желіде триггер әрекетсіз қалады, өйткені профиль кеңседен тыс жұмыс істеуге арналған.

Add-VpnConnectionTriggerApplication -Name "APP_VPN" -ApplicationID "C:\Program Files\Vendor\app.exe" -Force
Get-VpnConnectionTrigger -Name "APP_VPN" | Format-List *
Get-VpnConnection -Name "APP_VPN" | Format-List Name,ConnectionStatus,SplitTunneling,AllUserConnection

Бөлінген туннель туннельден недің өтетінін шешеді

Бөлінген туннель өшірілгенде, Windows VPN интерфейсіне төмен метрлі класқа негізделген әдепкі маршрутты орнатады. Әрбір сокет оған ереді, браузер мен жаңарту қызметі де, сондықтан бұл конфигурациядағы триггер профиль қосылған кезде бүкіл машинаны жылжытады. Триггер әлі де тек өмірлік цикл ережесі; әсер радиусы маршруттан келді.

Бөлінген туннель қосылғанда, профиль тек шлюз итеретін немесе VPN интерфейсіне қосатын префикстерді тасымалдайды. Қалғанының бәрі физикалық әдепкі маршрутты пайдаланады. Бұл адамдар әдетте „бір қолданба бөлек шығыс арқылы“ дегенде түсінетін реттеу, және бұл басынан аяғына дейін маршруттау шешімі.

Set-VpnConnection -Name "APP_VPN" -SplitTunneling $true
Get-VpnConnection -Name "APP_VPN" | Select-Object SplitTunneling
Get-NetRoute -InterfaceAlias "APP_VPN" | Sort-Object DestinationPrefix

Маршрутталған бөлу қолданбаңызды оқшаулауды қай жерде тоқтатады

Жиі кездесетін ақау — туннельдің маршруттар тізімінде ешқашан көрінбейтін межелі орын. Бір мекенжайға кіріп, кейін CDN-тен ағындайтын немесе ондаған айналатын соңғы нүктені шешетін қолданба кейбір қосылымдарды VPN интерфейсіне, қалғанын Wi-Fi-ға қояды. IPv6 — жеке кесте, сондықтан тек IPv4 префикстерін итеретін профиль дұрыс көрінуі мүмкін, ал қолданбаның IPv6 трафигі жергілікті болып қалады.

Тағы екі шағын әсер де сондай маңызды. Ең ұзын префикс сәйкестігі жеңеді, сондықтан нақтырақ on-link маршрут, басқару хосты үшін итерілген /32 немесе екінші адаптердің ішкі желісі туннельді дәл сізге керек мекенжай бойынша жеңуі мүмкін. Атауларды шешу де маршруттауға дейін болады: профильдің DNS серверлері немесе NRPT ережесі атауды қамтымаса, қолданба физикалық адаптер арқылы шешіп, кейін туннельделген префикстердің ішінде болмаған мекенжайды шақыруы мүмкін.

Үш пішін және әрқайсысы не береді

Кесте — қабырғаға жапсыратын бөлігім, өйткені шешім функциялар туралы емес, әсер радиусы туралы. Егер қолданбаның межелі орындары тізіп шығуға болатын тұрақты префикстер болса, маршрутталған бөлу ең кіші ізбен оқшаулау береді. Олай болмаса, VM немесе екінші құрылғы артындағы әдепкі маршрут профилі бірнеше процесті жылжыту есебінен бөлуді адал ұстайды.

ShapeWhat starts the tunnelWhat enters itPick it when
Trigger plus routed splitProcess startOnly pushed or added prefixesThe app's endpoints are stable prefixes and the host should stay direct
Trigger plus default routeProcess startEverything, machine-wideYou need one exit for all traffic and accept the wider scope
Separate VM or deviceGuest boot or loginEverything inside that guestThe app's destinations rotate, or the host must keep its own public address

Бұлардың ешқайсысы хостта сокет деңгейіндегі байланыстыруды бермейді. Классикалық Windows VPN клиентінде бұл процесс сол адаптерді пайдалануы керек деген ереже жоқ; триггерлер мен маршрут сүзгілері әртүрлі қабаттарда өмір сүреді, ал интерфейсті таңдайтын қабат — маршруттар кестесі. Егер нұсқаулық тек көшірілген профильден қолданба бойынша мәжбүрлеуді уәде етсе, қай маршрут немесе қай сүзгі жұмысты атқарып жатқанын сұраңыз.

Жұпты бір жүріспен тексеріңіз

Өмірлік цикл мен маршруттауды бөлек тексеріңіз, осы ретпен. Қолданбаны жабыңыз, профиль Disconnected деп хабарлайтынын растаңыз, содан кейін қолданбаны іске қосып, күй өзгергенін тексеріңіз. Туннель көтерілгеннен кейін ғана нақты межелі орынның қайда баратынын сұрау керек, және болжамның орнына қолданба шынымен шақыратын мекенжайды пайдалану керек.

$app = Get-Process app | Select-Object -First 1
Get-VpnConnection -Name "APP_VPN" | Select-Object ConnectionStatus
Get-NetTCPConnection -OwningProcess $app.Id -State Established | Select-Object RemoteAddress,RemotePort
Find-NetRoute -RemoteIPAddress 203.0.113.10

Find-NetRoute интерфейс пен сол межелі орынды таситын келесі секірісті атайды. Ондағы физикалық бүркеншік ат туннельдің көтерілгенін және бұл ағын үшін маңызсыз екенін білдіреді: итерілген префикстерді, содан кейін нақтырақ маршруттарды, содан кейін IPv6-ны тексеріңіз. Егер күй мүлдем өзгермесе, триггер іске қосылмады, ал орындалатын файл жолы, профиль ауқымы және VPN клиентінің операциялық журналы — қарайтын үш орын.

Келесі тест адал болуы үшін таза тазалаңыз

Құрғаныңызға кері ретпен алып тастаңыз: әуелі қолданба триггері, содан кейін профиль. Триггер қалғанда профильді жою келесі әрекетті шатастыратын ілулі байланыс қалдырады, және Remove-VpnConnection -Force командалардан тыс жасалған телефон кітабының жазбасын әрдайым тазалай бермейді.

Пайдаланушы бойынша жазбалар пайдаланушының rasphone.pbk файлында, Roaming профилінің астында орналасқан; барлық пайдаланушыларға арналған жазбалар ProgramData астында. Профиль ауқымына сәйкес қойманы тексеріңіз, сақтаған профиліңізді қайта қосыңыз және оның маршруттары мен DNS әлі жұмыс істейтінін растаңыз, кейінгі тест қалған күйді емес, сіз жасаған өзгерісті өлшеуі үшін.

  • Туннель процесс басталғанда көтеріледі, жүйеге кіру кезінде емес.
  • VPN интерфейсінде тек жоспарланған префикстер көрінеді.
  • Қолданбаның нақты қашықтағы мекенжайы VPN бүркеншік атына шешіледі.
  • Профиль жойылғаннан кейін ілулі триггер қалмайды.

Қатысты мақалалар