Таны Mac бодлогын скриптийг татаж аваад, дараа нь тухайн скриптээс хүсэлт ямар зуучлагчийг ашиглах ёстойг асуудаг бол туннель нь сонгосон хопт хэрхэн хүрэхийг л шийддэг. Хоёр хариулт нэг сокет дээр буудаг тул хоёулаа амжилттай болсны дараа бүтэлгүйтсэн хүсэлт хоёр байхад нэг эвдрэл мэт харагдана. Татан авалтыг сонголтоос, сонголтыг маршрутаас салгах нь эдгээр тасалбарын ажлын ихэнх хэсэг юм. Доорх дараалал нь macOS-ийн үнэхээр хийдэг зүйлийг дагаж, үе шат бүрийг харагдуулах шалгалтуудыг агуулна.

PAC хаяг болон прокси хаана салдаг

https://config.corp.example/proxy.pac шиг хаяг нь татах баримт бичгийг нэрлэдэг бөгөөд тэр баримт бичиг нь урсгалыг дамжуулах серверийг нэрлэдэг. URL-ийг прокси хост талбарт наах нь клиентээс хэзээ ч ийм холболт сонсдоггүй файлын сервер рүү прокси холболт нээхийг шаарддаг. Файлын дотор клиент хүсэлт бүрт дууддаг функц байдаг бөгөөд түүний буцаах утга нь тухайн нэг очих газарт хүрэх дараагийн хоп юм. Энэ шууд бус байдал нь нэг сүлжээний үйлчилгээний хоёр машин хоёулаа зөв URL-тай байсан ч яагаад өөрөөр ажиллаж болохыг тайлбарладаг. Мөн бодлогын өөрчлөлт проксид хэн ч хүрэхгүйгээр хэрхэн хүчин төгөлдөр болохыг тайлбарладаг.

Доорх зүйлийг тайлбарлахаас өмнө скриптийг уншина уу, учир нь доторх дүрмүүд байгууллагын үл хамаарах зүйлс болон тэдгээрийн хэрэглэх дарааллыг агуулдаг. Эрт өргөн хүрээ нь дараагийн дотоод дагаварыг сүүдэрлэж болох бөгөөд проксиг тодорхой тойрох ёстой хост үүнийг үргэлжлүүлэн ашигладаг. Бодлого буруу гэж хэн нэгэн шаардвал скрипт нь тэр мэдэгдлийг шийдвэрлэх цорын ганц газар юм.

Скриптийг ямар нэгэн зүйл шийдэхээс өмнө татаж авах ёстой

Бодлогыг татахад шийдэгдсэн нэр болон файлыг үйлчилдэг зүйл рүү хүрэх маршрут хэрэгтэй бөгөөд холбогдсон туннель хоёрыг ч баталгаажуулдаггүй. Хэрэв хост зөвхөн хувийн DNS-ээр шийдэгддэг бол тэр мөчид ашиглагдаж буй шийдэгч татан авалт эхэлж болох эсэхийг шийддэг. Хэрэв хост хувийн хүрээнд байвал маршрут энэ машинаас байх ёстой, хамт олны зөөврийн компьютерээс биш. Өмнөх сессэд кэшлэгдсэн хуулбар нь кэш дуусах эсвэл машин дахин ачаалагдах хүртэл энэ бүгдийг нуудаг.

Доорх гурван шалгалтыг дараалан хийж, эхний бүтэлгүйтэл дээр зогсоно уу, учир нь үе шатууд нийтлэг шалтгаангүй. Тэд хамтдаа бодлого тохируулагдсан эсэх, хүрч болох эсэх, юу буцааж байгааг харуулна.

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

Эхний команд нь идэвхтэй үйлчилгээний прокси толь бичгийг хэвлэдэг, системд байгаа аливаа автомат тохиргооны URL-ыг оруулаад. Хоёр дахь нь нэг нэрлэсэн үйлчилгээнд хавсаргасан URL-ыг мэдээлдэг бөгөөд энэ нь Wi-Fi болон Ethernet хооронд шилждэг зөөврийн компьютерт чухал. Гурав дахь нь файлыг дүрслэхгүйгээр авчирдаг тул 404, хугацаа дуусах, шийдэгчийн алдаа ялгаатай хэвээр байна. Хэрэв тэр сүүлчийн команд скриптийг буцааж, програмууд ажиллахгүй хэвээр байвал асуудал аль хэдийн авчрахаас давсан байна.

DIRECT хариулт үнэндээ юуг алгасдаг вэ

PAC үзүүлэлт клиентэд жижиг үгсийн сан өгдөг бөгөөд DIRECT түүний нэг үг юм. Тэр үг нь клиентэд тухайн хүсэлтийн хувьд проксиг алгасахыг хэлдэг бөгөөд дараа нь сокет ямар интерфейс ашиглах талаар юу ч хэлдэггүй. Бүрэн туннель дээрх шууд сокет нь VPN-ээр гарсаар байх бөгөөд очих газарт туннелийн гарах хаягийг харуулсаар байна.

DIRECT-ыг VPN-ээс гадуур гэж унших нь хүмүүсийг буруу тохиргооны самбар руу илгээдэг алдаа юм. Толин тусгал дүрс нь мөн адил түгээмэл, учир нь хувийн проксид хуваагдсан маршрутаар хүрч болох бөгөөд машины бусад хэсэг туннелийн гадна үлддэг. Тэгэхэд очих газар мэдээлж буй зүйл нь проксийн өөрийн гаралтад хамаарах бөгөөд тэр нь өөр улсад байж болно. Нэг дотоод хост, нэг нийтийн хостод хүлээлгээ бичих нь үүнийг хурдан илчилнэ, учир нь скрипт хоёрт нь ихэвчлэн өөрөөр хариулдаг. Аль хоп хаягийг үүсгэснийг мэдсэний дараа тайлан нууцлаг байхаа болино.

Нэг алдааны хуудас болж харагддаг гурван бүтэлгүйтэл

Бодлого татагдахгүй байж болно, сонгосон проксид хүрэхгүй байж болно, үйлчилгээнд хүрсэн хүсэлт тэндээ хориглогдож болно. Гурвуулаа хугацаа дуусах эсвэл ерөнхий алдааны хуудас хэлбэрээр ирдэг бөгөөд аль нь ч эвдэрсэн үе шатыг нэрлэдэггүй. Алдааны хажууд шийдвэрийг тэмдэглэх нь тэдгээрийг ялгадаг. Доорх хоёр туршилт нь скриптийн сонгосон хопыг шалгадаг бөгөөд буцааж болох салбар бүрт нэг байна.

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

Прокситой дууссан холболт нь асуултыг баталгаажуулалт эсвэл проксийн өөрийн бодлого руу шилжүүлдэг бөгөөд түүнд өөр эзэн бий. Замд проксигүй дотоод хосттой дууссан холболт маршрутыг үгүйсгэж, бодлогыг заана. Хоёр команд хоёулаа macOS-ийн прокси толь бичгийг үл тоомсорлодог, хэрэв бүрхүүл прокси хувьсагчдыг экспортлохгүй бол, тиймээс эхлээд тэдгээрийг цэвэрлэ. Аль ч туршилт нөгөөгөө батлахгүй, тиймээс нэг алдааны хуудас ийм удаан төөрөгдүүлдэг.

Тасалбартай хамт юу шилжүүлэх вэ

Идэвхтэй сүлжээний үйлчилгээ, PAC URL, бүтэлгүйтэж буй хостод хийсэн үнэлгээний үр дүн, алдаа гарсан үе шатыг илгээнэ үү. Эдгээр дөрөв нь дараагийн хүнд аль давхарга оролцсоныг таамаглахын оронд шийдвэрийг дахин үүсгэх боломж олгоно. Туршилтын мөчийн туннелийн төлөвийг нэмнэ үү, учир нь дахин холбогдохоос өмнө авсан үр дүн хуучирсан. Скриптийн хувилбарыг ч хадгалаарай, учир нь бодлогын файл мэдэгдэлгүй өөрчлөгдөж, өчигдрийн хариулт хүчинтэй байхгүй байж болно.

Скриптийг авч чадахгүй үед клиент хэрхэн ажиллахыг тэмдэглээрэй, учир нь хэрэгжүүлэлтүүд ялгаатай бөгөөд проксийн шийдвэр нь бүх төхөөрөмжийн унтраалга биш. Зарим нь шууд холболт руу буцаж, зарим нь хаалттайгаар бүтэлгүйтдэг бөгөөд энэ ялгаа нь эвдрэл эвдэрсэн прокси мэт эсвэл ажиллаж буй бодлого мэт харагдахыг өөрчилдөг. Осолын үеэр түүнд найдахаас өмнө яг клиент болон хувилбарын хувьд зан төлөвийг баталгаажуулаарай.

Холбоотой нийтлэлүүд