Ètò Windows méjì dàbí ẹnìkan nínú Àwọn Ètò àti wọn kò ṣe bí ẹnìkan rárá. Ọ̀kan jẹ́ profáìlì VPN tí wọ́n dà sí ẹ̀dà pẹ̀lú olùtọ́ka app, nítorí náà bíbẹ̀rẹ̀ fáìlì kan tí ó ń ṣiṣẹ́ ń gbé tunnel sókè. Èkejì jẹ́ profáìlì tunnel pínpín tí àkójọ ọ̀nà rẹ̀ ń bo ohun tí app yẹn ń bá sọ̀rọ̀ ní ààrà. Ẹ̀kọ́kàn dáhùn ìgbà tí tunnel wà. Ẹ̀kejì dáhùn àwọn pákẹ́tì tí ó ń wọ̀ inú rẹ̀, àti pé ẹ̀kejì nìkan ló ń fi ìyókù ẹ̀rọ náà sórí ìsopọ̀ ti ara nígbà tí app náà ṣì wà ní ìsopọ̀.

Olùtọ́ka jẹ́ ìlànà ìgbésí-ayé, kì í ṣe ìlànà ọ̀nà

Add-VpnConnectionTriggerApplication so ọ̀nà fáìlì tí ó ń ṣiṣẹ́ mọ́ orúkọ profáìlì. Nígbà tí ìlànà yẹn bẹ̀rẹ̀, Olùdarí Ìsopọ̀ Ìwọlé Ètò Jínjìn pe profáìlì náà, àti nígbà tí ipò olùtọ́ka bá parí, ìsopọ̀ lè já. Kò sí ohun tí ó ń yẹ̀wò àwọn socket nínú ìpààrọ̀ yẹn. Cmdlet nílò shell tí a gbé sókè, ọ̀nà kíkún sí binary, àti -Force nígbà tí o bá rọ́pò àkọsílẹ̀ tí ó wà. Jẹ́rìí sí i pé ìsopọ̀ náà kò kú pẹ̀lú Get-VpnConnectionTrigger dípò gbígbẹ́kẹ̀lé ìtọ́ni; ìtọ́kasí Add-VpnConnectionTriggerApplication ṣe àkójọ àwọn párámítà àti àwọn àpẹẹrẹ.

Ìdíwọ́ méjì ń ṣàlàyé ọ̀pọ̀ àwọn ìròyìn pé „olùtọ́ka kò ṣe ohunkóhun”. A kọ́ àwọn olùtọ́ka yí ká àwọn profáìlì fún gbogbo olùmúlò, nítorí náà ìwọ̀n profáìlì ni ohun àkọ́kọ́ tí a gbọ́dọ̀ yanjú, ọ̀nà app sì gbọ́dọ̀ bá binary tí ó ń ṣiṣẹ́ gan-an mu, kì í ṣe ọ̀nà kúkúrú tàbí ẹ̀rọ ìbẹ̀rẹ̀ tí ó ń dá ìlànà kejì. Ìdíwọ́ kejì jẹ́ àmọ̀ọ́mọ̀: lórí nẹ́tíwọ́kì tí Windows pín sí ẹni tí a gbẹ́kẹ̀lé, olùtọ́ka dúró jẹ́ẹ́, nítorí pé profáìlì náà wà fún ṣíṣe ní òde ọ́fíìsì.

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

Tunnel pínpín ń pinnu ohun tí ó ń kọjá tunnel

Nígbà tí tunnel pínpín wà ní òkùnkùn, Windows fi ọ̀nà àkọ́kọ́ tí ó dá lórí kíláàsì pẹ̀lú metric kékèké sórí interface VPN. Gbogbo socket ń tẹ̀lé e, pẹ̀lú browser àti iṣẹ́ ìmúdójúìwọ̀n, nítorí náà olùtọ́ka nínú ìtòlẹ́sẹẹsẹ yẹn ń gbé gbogbo ẹ̀rọ nígbà tí profáìlì wà ní ìsopọ̀. Olùtọ́ka ṣì jẹ́ ìlànà ìgbésí-ayé nìkan; ìwọ̀n ìpalára wá láti ọ̀nà náà.

Nígbà tí tunnel pínpín wà ní ìmọ́lẹ̀, profáìlì ń gbé àwọn àkọ́sílẹ̀ tí gateway ń tì tàbí tí o fi kún interface VPN. Gbogbo ohun mìíràn ń bá a lọ ní lílo ọ̀nà àkọ́kọ́ ti ara. Ìyẹn ni ètò tí àwọn ènìyàn máa ń ní lọ́kàn pẹ̀lú „app kan nípasẹ̀ ojú-ìjáde ọ̀tọ̀”, ó sì jẹ́ ìpinnu ọ̀nà láti ìbẹ̀rẹ̀ dé òpin.

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

Níbi tí pínpín pẹ̀lú ọ̀nà ti dá dúró láti ya app rẹ sọ́tọ̀

Ìkùnà tí ó wọ́pọ̀ ni ibi-àfojúsùn tí kò fi ara hàn nínú àkójọ ọ̀nà tunnel rárá. App tí ó ń wọlé sí àdírẹ́sì kan tí ó sì ń gbé ìṣàn jáde láti CDN, tàbí tí ó ń yanjú mẹ́wàá ibi-ìparí tí ó ń yí, yóò fi àwọn ìsopọ̀ kan sórí interface VPN àti ìyókù sórí Wi-Fi. IPv6 jẹ́ tábìlì ọ̀tọ̀, nítorí náà profáìlì tí ó ń tì àwọn prefix IPv4 nìkan lè dàbí ẹni tí ó tọ́ nígbà tí ìṣàn IPv6 ti app náà wà níbílẹ̀.

Àwọn ìpa kékeré méjì náà ṣe pàtàkì bákan náà. Ìbámu prefix tí ó gùn jùlọ ni ó ń borí, nítorí náà ọ̀nà on-link tí ó ṣe pàtó, /32 tí a tì fún ẹ̀rọ ìṣàkóso tàbí subnet adapter kejì lè borí tunnel fún àdírẹ́sì tí o kàyéfì nípa rẹ̀ gan-an. Ìyọ́nú orúkọ náà tún ṣẹlẹ̀ ṣáájú ọ̀nà: bí àwọn server DNS profáìlì tàbí ìlànà NRPT kò bá bo orúkọ náà, app lè yọ́nú nípasẹ̀ adapter ti ara kí ó sì pe àdírẹ́sì tí kò wà nínú àwọn prefix tí a fi sínú tunnel rí.

Àwọn ẹ̀yà mẹ́ta, àti ohun tí ẹ̀kọ̀ọ̀kan ń rà

Tábìlì ni apá tí èmi ìbá fi lẹ̀ mọ́ odi, nítorí pé ìpinnu náà jẹ́ nípa ìwọ̀n ìpalára kì í ṣe àwọn ẹ̀yà. Bí àwọn ibi-àfojúsùn app bá jẹ́ àwọn prefix tí ó dúró ṣinṣin tí o lè kójọ, pínpín pẹ̀lú ọ̀nà ń fúnni ní ìyàsọ́tọ̀ pẹ̀lú àmì ẹsẹ̀ tí ó kéré jùlọ. Bí kò bá rí bẹ́ẹ̀, profáìlì ọ̀nà àkọ́kọ́ lẹ́yìn VM tàbí ẹ̀rọ kejì ń pa ìpínyà mọ́ ní òtítọ́ ní iye owó gbígbé ohun tí ó ju ìlànà kan lọ.

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

Ohun tí kò sí nínú ọ̀kan nínú àwọn wọ̀nyí ni ìdè ní ìpele socket lórí ẹ̀rọ. Kíláìẹ́ntì VPN àtijọ́ ti Windows kò ní ìlànà tí ó sọ pé ìlànà yìí gbọ́dọ̀ lo adapter yẹn; àwọn olùtọ́ka àti àwọn àlẹ̀mọ́ ọ̀nà ń gbé ní àwọn ìpele ọ̀tọ̀ọ̀tọ̀, ìpele tí ó yan interface sì ni tábìlì ọ̀nà. Bí ìtọ́sọ́nà bá ṣèlérí ìmúṣẹ fún app kọ̀ọ̀kan láti profáìlì tí a dà nìkan, béèrè ọ̀nà wo tàbí àlẹ̀mọ́ wo ni ó ń ṣe iṣẹ́ náà.

Jẹ́rìí sí bára náà ní ìgbà kan

Dán ìgbésí-ayé àti ọ̀nà wò lọ́tọ̀ọ̀tọ̀, ní ìtòlẹ́sẹẹsẹ yẹn. Pa app náà, jẹ́rìí sí i pé profáìlì sọ Disconnected, lẹ́yìn náà bẹ̀rẹ̀ app náà kí o sì yẹ̀wò bóyá ipò ti yí padà. Lẹ́yìn tí tunnel bá ti gbé sókè nìkan ni o gbọ́dọ̀ béèrè ibi tí ibi-àfojúsùn pàtó ń lọ, kí o sì lo àdírẹ́sì tí app ń pè gan-an dípò àròsọ.

$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 ń dárúkọ interface àti ìgbésẹ̀ tí ó tẹ̀lé tí yóò gbé ibi-àfojúsùn yẹn. Alias ti ara níbẹ̀ túmọ̀ sí pé tunnel gbé sókè àti pé kò ṣe pàtàkì fún ìṣàn yẹn: yẹ̀wò àwọn prefix tí a tì, lẹ́yìn náà àwọn ọ̀nà tí ó ṣe pàtó, lẹ́yìn náà IPv6. Bí ipò kò bá yí padà rárá, olùtọ́ka kò tọ́ka, ọ̀nà fáìlì tí ó ń ṣiṣẹ́, ìwọ̀n profáìlì àti àkọsílẹ̀ iṣẹ́ kíláìẹ́ntì VPN ni àwọn ibi mẹ́ta láti wo.

Mọ́ kí ó tọ́ kí ìdánwò tí ó tẹ̀lé lè jẹ́ òtítọ́

Yọ kúrò ní ìtòlẹ́sẹẹsẹ ìdíkejì sí bí o ṣe kọ́ ọ: kọ́kọ́ olùtọ́ka app, lẹ́yìn náà profáìlì. Pípa profáìlì nù nígbà tí olùtọ́ka ṣì wà ń fi ìsopọ̀ tí ó ń kọ́ sórí tí ó ń mú ìgbìyànjú tí ó tẹ̀lé rúpẹ́rú, àti Remove-VpnConnection -Force kì í sábà nu àkọsílẹ̀ ìwé tẹlifóònù tí a ṣe ní òde àwọn cmdlet.

Àwọn àkọsílẹ̀ fún olùmúlò kọ̀ọ̀kan wà nínú rasphone.pbk olùmúlò lábẹ́ profáìlì Roaming; àwọn àkọsílẹ̀ fún gbogbo olùmúlò wà lábẹ́ ProgramData. Yẹ̀wò ibi-ìpamọ́ tí ó bá ìwọ̀n profáìlì mu, tún interface VPN pọ̀ mọ́ profáìlì tí o pa mọ́, kí o sì jẹ́rìí sí i pé àwọn ọ̀nà rẹ̀ àti DNS ṣì ń hùwà bó ṣe yẹ, kí ìdánwò tí ó tẹ̀lé lè wọn ìyípadà tí o ṣe àti kì í ṣe ipò tí ó kù.

  • Tunnel bẹ̀rẹ̀ nígbà tí ìlànà bẹ̀rẹ̀, kì í ṣe nígbà ìwọlé.
  • Àwọn prefix tí a ní lọ́kàn nìkan ni ó ń farahàn lórí interface VPN.
  • Àdírẹ́sì jínjìn gidi ti app ń yọ́nú sí alias VPN.
  • Kò sí olùtọ́ka tí ó ń kọ́ tí ó kù lẹ́yìn pípa profáìlì nù.

Àwọn àpilẹ̀kọ tó jọra