Mae eich Mac yn lawrlwytho sgript polisi ac yna'n gofyn i'r sgript honno pa gyfryngwr y dylai cais ei ddefnyddio, tra mai dim ond sut y cyrhaeddir y naid a ddewiswyd y mae'r twnnel yn ei benderfynu. Mae'r ddau ateb yn glanio ar yr un soced, felly mae cais sy'n methu ar ôl i'r ddau lwyddo yn edrych fel un nam pan fo dau. Gwahanu'r lawrlwytho oddi wrth y dewis, a'r dewis oddi wrth y llwybr, yw rhan fwyaf y gwaith yn y tocynnau hyn. Mae'r drefn isod yn dilyn yr hyn y mae macOS yn ei wneud mewn gwirionedd, gyda'r gwiriadau sy'n gwneud pob cam yn weladwy.

Lle mae'r cyfeiriad PAC a'r dirprwy yn gwahanu

Mae cyfeiriad fel https://config.corp.example/proxy.pac yn enwi dogfen i'w lawrlwytho, ac mae'r ddogfen honno'n enwi gweinydd i anfon traffig drwyddo. Mae gludo'r URL i faes gwesteiwr dirprwy yn gofyn i'r cleient agor cysylltiad dirprwy â gweinydd ffeil nad yw byth yn gwrando am un. Y tu mewn i'r ffeil mae ffwythiant y mae'r cleient yn ei alw ar gyfer pob cais, a'i werth dychwelyd yw'r naid nesaf ar gyfer y gyrchfan unigol honno. Mae'r anuniongyrchedd hwn yn esbonio pam y gall dau beiriant ar yr un gwasanaeth rhwydwaith ymddwyn yn wahanol er bod y ddau'n dal yr URL cywir. Mae hefyd yn esbonio pam y daw newid polisi i rym heb i neb gyffwrdd â'r dirprwy ei hun.

Darllenwch y sgript cyn dehongli unrhyw beth i lawr yr afon, oherwydd bod y rheolau ynddi yn cario eithriadau'r sefydliad a'r drefn y cânt eu cymhwyso. Gall ystod eang gynnar gysgodi ôl-ddodiad mewnol diweddarach, ac mae gwesteiwr y dylai'n amlwg osgoi'r dirprwy yn dal i'w ddefnyddio. Pan fydd rhywun yn mynnu bod y polisi'n anghywir, y sgript yw'r unig le y caiff y gosodiad hwnnw ei setlo.

Rhaid cael y sgript cyn iddi benderfynu unrhyw beth

Mae lawrlwytho'r polisi angen enw wedi'i ddatrys a llwybr at beth bynnag sy'n gwasanaethu'r ffeil, ac nid yw twnnel cysylltiedig yn awgrymu'r naill na'r llall. Os mai dim ond trwy DNS preifat y mae'r gwesteiwr yn datrys, y datryswr sy'n cael ei ddefnyddio ar y pryd sy'n penderfynu a all y lawrlwytho ddechrau. Os yw'r gwesteiwr ar ystod breifat, rhaid i'r llwybr fodoli o'r peiriant hwn yn hytrach nag o liniadur cydweithiwr. Mae copi a storiwyd yn ystod sesiwn gynharach yn cuddio hyn i gyd nes bod y storfa'n dod i ben neu'r peiriant yn ailgychwyn.

Rhedwch y tri gwiriad isod mewn trefn a stopiwch ar y methiant cyntaf, oherwydd nid yw'r camau'n rhannu un achos. Gyda'i gilydd maent yn dangos a yw'r polisi wedi'i ffurfweddu, a ellir ei gyrraedd, a beth mae'n ei ddychwelyd.

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

Mae'r gorchymyn cyntaf yn argraffu geiriadur dirprwy'r gwasanaeth gweithredol, gan gynnwys unrhyw URL hunanffurfweddu y mae'r system yn ei ddal. Mae'r ail yn adrodd yr URL sy'n gysylltiedig ag un gwasanaeth a enwir, sy'n bwysig ar liniadur sy'n symud rhwng Wi-Fi ac Ethernet. Mae'r trydydd yn nôl y ffeil heb ei rendro, felly mae 404, terfyn amser a methiant datryswr yn parhau'n wahanol. Os yw'r gorchymyn olaf hwnnw'n dychwelyd y sgript tra bod rhaglenni'n dal i fethu, mae'r broblem eisoes wedi mynd heibio'r nôl.

Beth mae ateb DIRECT yn ei hepgor mewn gwirionedd

Manyleb PAC yn rhoi geirfa fach i'r cleient, ac mae DIRECT yn un gair ohoni. Mae'r gair yn dweud wrth y cleient i hepgor y dirprwy ar gyfer y cais hwnnw ac nid yw'n dweud dim am ba ryngwyneb y bydd y soced yn ei ddefnyddio wedyn. Mae soced uniongyrchol ar dwnnel llawn yn dal i adael trwy'r VPN ac yn dal i ddangos cyfeiriad allan y twnnel i'r gyrchfan.

Mae darllen DIRECT fel rhywbeth y tu allan i'r VPN yn gam sy'n gyrru pobl i'r panel gosodiadau anghywir. Mae'r ddelwedd wrthdro yr un mor gyffredin, oherwydd gellir cyrraedd dirprwy preifat dros lwybr hollt tra bo gweddill y peiriant yn aros oddi ar y twnnel. Yna mae'r hyn y mae'r gyrchfan yn ei adrodd yn perthyn i allanfa'r dirprwy ei hun, a allai fod mewn gwlad arall. Mae ysgrifennu'r disgwyliad ar gyfer un gwesteiwr mewnol ac un gwesteiwr cyhoeddus yn datgelu hyn yn gyflym, gan fod y sgript yn aml yn ateb y ddau'n wahanol. Unwaith y byddwch yn gwybod pa naid a gynhyrchodd y cyfeiriad, mae'r adroddiad yn peidio â bod yn ddirgel.

Tri methiant sy'n ymddangos fel un dudalen gwall

Gall y polisi fethu â lawrlwytho, gall y dirprwy a ddewiswyd fod yn anghyrraeddadwy, a gall cais sy'n cyrraedd y gwasanaeth gael ei wrthod yno o hyd. Mae'r tri yn cyrraedd fel terfyn amser neu dudalen gwall gyffredinol, ac nid oes yr un ohonynt yn enwi'r cam a dorrwyd. Cofnodi'r penderfyniad wrth ymyl y gwall yw'r hyn sy'n eu gwahanu. Mae'r ddau brofion isod yn profi'r naid a ddewiswyd gan y sgript, un ar gyfer pob cangen y gall ei dychwelyd.

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

Mae cysylltiad cyflawn â'r dirprwy yn symud y cwestiwn i ddilysu neu i bolisi'r dirprwy ei hun, sydd â pherchennog gwahanol. Mae cysylltiad cyflawn â'r gwesteiwr mewnol heb ddirprwy ar y llwybr yn diystyru'r llwybr ac yn pwyntio at y polisi. Mae'r ddau orchymyn yn anwybyddu geiriadur dirprwy macOS oni bai bod y plisgyn yn allforio newidynnau dirprwy, felly cliriwch y rheini yn gyntaf. Nid yw'r naill brof yn profi'r llall, a dyna pam mae un dudalen gwall yn camarwain cyhyd.

Beth i'w drosglwyddo gyda'r tocyn

Anfonwch y gwasanaeth rhwydwaith gweithredol, URL y PAC, canlyniad gwerthuso'r gwesteiwr sy'n methu, a'r cam lle gwelwyd y gwall. Mae'r pedwar hyn yn gadael i'r person nesaf atgynhyrchu'r penderfyniad yn hytrach na dyfalu pa haen oedd yn gysylltiedig. Ychwanegwch gyflwr y twnnel ar foment y prawf, oherwydd mae canlyniad a gofnodwyd cyn ailgysylltu yn hen. Cadwch y diwygiad sgript hefyd, gan fod y ffeil polisi'n newid heb rybudd ac efallai nad yw ateb ddoe yn gyfredol mwyach.

Cofnodwch sut mae'r cleient yn ymddwyn pan na ellir nôl y sgript, oherwydd mae gweithrediadau'n wahanol ac nid yw'r penderfyniad dirprwy yn switsh stopio ar draws y ddyfais. Mae rhai'n dychwelyd at gysylltiad uniongyrchol ac eraill yn methu ar gau, ac mae'r gwahaniaeth hwnnw'n newid a yw ymchwydd yn edrych fel dirprwy wedi torri neu fel polisi sy'n gweithio. Cadarnhewch yr ymddygiad ar gyfer yr union gleient a'r fersiwn cyn dibynnu arno yn ystod digwyddiad.

Erthyglau cysylltiedig