Mac rẹ gba ìwé ìlànà kan, lẹ́yìn náà ó béèrè lọ́wọ́ ìwé náà irú alárinà tí ìbéèrè yẹ kí ó lò, nígbà tí ọ̀nà-ìmẹ́mìí kan náà ń pinnu bí a ṣe dé ìgbesẹ̀ tí a yàn. Àwọn ìdáhùn méjèèjì ń parí sí sọ́kẹ́tì kan náà, nítorí náà ìbéèrè tí ó kùnà lẹ́yìn tí méjèèjì ti yọrísí ń dàbí àṣìṣe kan nígbà tí ó jẹ́ méjì. Yíya ìgbàsílẹ̀ kúrò nínú yíyàn, àti yíyàn kúrò nínú ipa-ọ̀nà, ni ọ̀pọ̀ iṣẹ́ nínú àwọn tíkẹ́ẹ̀tì wọ̀nyí. Ìtẹ̀lẹ́ntẹ̀lẹ́ tí ó wà nísàlẹ̀ ń tẹ̀lé ohun tí macOS ń ṣe ní ti gidi, pẹ̀lú àwọn àyẹ̀wò tí ó mú kí gbogbo ìpele hàn.

Ibi tí àdírẹ́sì PAC àti aṣojú ti yà

Àdírẹ́sì bíi https://config.corp.example/proxy.pac ń dárúkọ ìwé kan tí a ó gbà sílẹ̀, ìwé yẹn sì ń dárúkọ sáfà kan tí a ó gba ọ̀nà ìsọfúnni kọjá. Lífa URL sínú pápá olùgbàlejò aṣojú béèrè lọ́wọ́ ẹ̀rọ ìbánisọ̀rọ̀ pé kí ó ṣí ìsopọ̀ aṣojú sí sáfà fáìlì tí kò gbọ́ irú rẹ̀ rí. Nínú fáìlì náà ni ìṣe kan tí ẹ̀rọ náà ń pè fún gbogbo ìbéèrè, àti iye tí ó ń dá padà ni ìgbesẹ̀ tó kàn fún ibi kan náà. Ìsọ̀nà àìtààrà yìí ń ṣàlàyé ìdí tí ẹ̀rọ méjì lórí iṣẹ́ nẹ́tíwọ́kì kan ṣe lè hùwà yàtọ̀ bí ó tilẹ̀ jẹ́ pé méjèèjì ní URL tí ó tọ́. Ó tún ṣàlàyé ìdí tí ìyípadà ìlànà fi ń gba ipò láìsí ẹnikẹ́ni tí ó fi ọwọ́ kan aṣojú náà.

Ka ìwé náà kí o tó ṣàlàyé ohunkóhun nísàlẹ̀, nítorí àwọn òfin tí ó wà nínú rẹ̀ ń gba àwọn ìyàtọ̀ àjọ náà àti ìtẹ̀lẹ́ntẹ̀lẹ́ tí a ń lò wọ́n. Ìbòmí àkọ́kọ́ tí ó gbòòrò lè ṣíji bo àfikún inú tí ó wá lẹ́yìn, àti olùgbàlejò tí ó yẹ kí ó forí kọjá aṣojú ń tẹ̀síwájú sí lílò ó. Nígbà tí ẹnìkan bá tẹnumọ́ pé ìlànà náà kò tọ́, ìwé náà ni ibi kan ṣoṣo tí a ti ń pinnu ọ̀rọ̀ yẹn.

A gbọ́dọ̀ gba ìwé náà kí ó tó pinnu ohunkóhun

Gbígbà ìlànà sílẹ̀ nílò orúkọ tí a ti yanjú àti ipa-ọ̀nà sí ohun tí ń pèsè fáìlì náà, ọ̀nà-ìmẹ́mìí tí ó so pọ̀ kò sì ṣe àtakò èyíkéyìí. Bí a bá ń yanjú olùgbàlejò nípasẹ̀ DNS aládàáni nìkan, ẹ̀rọ tí ń yanjú tí a ń lò ní àkókò yẹn ni yóò pinnu bóyá ìgbàsílẹ̀ lè bẹ̀rẹ̀. Bí olùgbàlejò bá wà nínú ìwọ̀n aládàáni, ipa-ọ̀nà gbọ́dọ̀ wà láti ẹ̀rọ yìí, kì í ṣe láti kọ̀mpútà àgbá ẹlẹgbẹ́. Ẹ̀dà tí a fi pamọ́ nínú kásẹ̀ ní ìpàdé àtẹ̀yìn ń fi gbogbo èyí pamọ́ títí kásẹ̀ yóò fi parí tàbí ẹ̀rọ yóò tún bẹ̀rẹ̀.

Ṣe àwọn àyẹ̀wò mẹ́ta tí ó wà nísàlẹ̀ lẹ́sẹẹsẹ kí o sì dúró ní ìkùnà àkọ́kọ́, nítorí àwọn ìpele kò ní ìdí kan. Papọ̀ wọ́n ń fi hàn bóyá ìlànà náà ti ṣètò, bóyá a lè dé ọ̀dọ̀ rẹ̀, àti ohun tí ó ń dá padà.

scutil --proxy
networksetup -getautoproxyurl "Wi-Fi"
curl -sS -o /dev/null -w "%{http_code}\n" https://config.corp.example/proxy.pac

Àkọ́kọ́ pàṣẹ ń tẹ̀wé ìwé ìtumọ̀ aṣojú fún iṣẹ́ tí ń ṣiṣẹ́, pẹ̀lú URL ìṣètò aládàádáa èyíkéyìí tí ẹ̀rọ náà ń dá dúró. Èkejì ń ṣàlàyé URL tí ó so mọ́ iṣẹ́ kan tí a dárúkọ, èyí tí ó ṣe pàtàkì lórí kọ̀mpútà àgbá tí ń gbéra láàárín Wi-Fi àti Ethernet. Ẹ̀kẹta ń gbà fáìlì náà láìṣe àfihàn rẹ̀, nítorí náà 404, àkókò píparí àti ìkùnà ẹ̀rọ yanjú ń wà ní ìyàtọ̀. Bí pàṣẹ ìkẹyìn yẹn bá dá ìwé náà padà nígbà tí àwọn ohun èlò ṣì ń kùnà, ìṣòro náà ti kọjá gbígbà.

Ohun tí ìdáhùn DIRECT ń forí kọjá ní ti gidi

Ìlànà PAC ń fún ẹ̀rọ náà ní ìwé ọ̀rọ̀ kékeré, DIRECT sì jẹ́ ọ̀kan nínú àwọn ọ̀rọ̀ rẹ̀. Ọ̀rọ̀ yẹn ń sọ fún ẹ̀rọ náà pé kí ó forí kọjá aṣojú fún ìbéèrè yẹn, kò sì sọ ohunkóhun nípa irú ojú-ọ̀nà tí sọ́kẹ́tì yóò lò lẹ́yìn náà. Sọ́kẹ́tì tààrà lórí ọ̀nà-ìmẹ́mìí kíkún ṣì ń jáde nípasẹ̀ VPN, ó sì ṣì ń fi àdírẹ́sì ìjáde ọ̀nà-ìmẹ́mìí náà hàn fún ibi.

Kíkà DIRECT gẹ́gẹ́ bí ohun tí ó wà ní òde VPN ni àṣìṣe tí ń rán àwọn ènìyàn sí pánẹ́ẹ̀lì ètò tí kò tọ́. Àwòrán àwòjìnnà kan náà wọ́pọ̀ pẹ̀lú, nítorí a lè dé aṣojú aládàáni nípasẹ̀ ipa-ọ̀nà pípín nígbà tí ẹ̀rọ tó kù wà ní òde ọ̀nà-ìmẹ́mìí. Ohun tí ibi náà ń ṣàlàyé ní àkókò yẹn jẹ́ ti ìjáde aṣojú fúnra rẹ̀, tí ó lè wà ní orílẹ̀-èdè mìíràn. Kíkọ ìfojúsọ́nà fún olùgbàlejò inú kan àti olùgbàlejò gbangba kan ń ṣí èyí payá kíákíá, nítorí ìwé náà sábà ń dá àwọn méjèèjì lóhùn yàtọ̀. Ní kété tí o bá mọ ìgbesẹ̀ tó dá àdírẹ́sì náà, ìròyìn náà kò ṣe àdììtú mọ́.

Àwọn ìkùnà mẹ́ta tí ó farahàn gẹ́gẹ́ bí ojú-ìwé àṣìṣe kan

Ìlànà náà lè kùnà ní gbígbà, aṣojú tí a yàn lè máà dé, àti ìbéèrè tí ó dé iṣẹ́ náà lè ṣì kùnà níbẹ̀. Àwọn mẹ́tẹ̀ẹ̀ta ń dé gẹ́gẹ́ bí àkókò píparí tàbí ojú-ìwé àṣìṣe gbogbogbò, kò sì sí èyíkéyìí tí ó dárúkọ ìpele tí ó já. Mímú ìpinnu náà dúró lẹ́gbẹ̀ẹ́ àṣìṣe náà ni ó yà wọ́n. Àwọn àyẹ̀wò méjì tí ó wà nísàlẹ̀ ń dán ìgbesẹ̀ tí ìwé náà yàn wò, ọ̀kan fún gbogbo ẹ̀ka tí ó lè dá padà.

curl -v --max-time 8 http://proxy.corp.example:8080/
curl -v --max-time 8 https://intranet.corp.example/

Ìsopọ̀ tí ó parí sí aṣojú ń gbé ìbéèrè náà lọ sí ìjẹ́rìí tàbí sí ìlànà aṣojú fúnra rẹ̀, tí ó ní olówó mìíràn. Ìsopọ̀ tí ó parí sí olùgbàlejò inú láìsí aṣojú lórí ipa-ọ̀nà ń yọ ipa-ọ̀nà kúrò, ó sì ń tọ́ka sí ìlànà náà. Àwọn pàṣẹ méjèèjì ń fojú fo ìwé ìtumọ̀ aṣojú macOS àyàfi bí shell bá gbé àwọn àfikún aṣojú jáde, nítorí náà kọ́kọ́ nu wọ́n. Kò sí àyẹ̀wò tí ó fi èkejì hàn, ìdí nìyẹn tí ojú-ìwé àṣìṣe kan fi ń ṣìnà fún ìgbà pípẹ́.

Ohun tí a ó fi lọ́wọ́ pẹ̀lú tíkẹ́ẹ̀tì

Fi iṣẹ́ nẹ́tíwọ́kì tí ń ṣiṣẹ́, URL PAC, èsì ìgbéléwọ̀n fún olùgbàlejò tí ń kùnà, àti ìpele tí àṣìṣe náà farahàn ránṣẹ́. Àwọn mẹ́rin yìí ń jẹ́ kí ẹni tí ó tẹ̀lé lè tún ìpinnu náà ṣe dípò kí ó máa fojú sọ́ irú ìpele tí ó kópa. Fi ipò ọ̀nà-ìmẹ́mìí náà kún ní àkókò ìdánwò, nítorí èsì tí a gbà kí a tó tún so pọ̀ ti di ìgbà àtijọ́. Tún pa àtúnyẹ̀wò ìwé náà mọ́, nítorí fáìlì ìlànà ń yí padà láìsí ìkìlọ̀, ìdáhùn àná sì lè máà wúlò mọ́.

Ṣàkọsílẹ̀ bí ẹ̀rọ náà ṣe ń hùwà nígbà tí a kò lè gba ìwé náà, nítorí àwọn ìmúṣẹ yàtọ̀ àti ìpinnu aṣojú kì í ṣe pátákó ìparí fún gbogbo ẹ̀rọ. Àwọn kan ń padà sí ìsopọ̀ tààrà àwọn mìíràn sì ń kùnà ní ìdí; ìyàtọ̀ yẹn ń yí padà bóyá ìdàrúdàpọ̀ yóò dàbí aṣojú tí ó já tàbí ìlànà tí ń ṣiṣẹ́. Jẹ́rìí ìhùwàsí náà fún ẹ̀rọ àti ẹ̀yà tí ó péye kí o tó gbẹ́kẹ̀ lé e nígbà ìṣẹ̀lẹ̀.

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