ស្ពាន SOCKS របស់ socat៖ រក្សាឈ្មោះម៉ាស៊ីន TLS របស់គេហទំព័រ
ប្រើឧបករណ៍ស្តាប់ TCP loopback សម្រាប់គោលដៅ SOCKS មួយ ខណៈរក្សាអត្តសញ្ញាណ HTTP និង TLS ក្នុងកម្មវិធី។
កម្មវិធីមួយគ្មានជម្រើស SOCKS ទេ ប៉ុន្តែវាអាចភ្ជាប់ទៅអាសយដ្ឋាន TCP ដែលបានជ្រើស។ អាដាប់ទ័រដែលមានគោលដៅថេរអាចផ្តល់ការសន្ទនា SOCKS សម្រាប់គោលដៅមួយ។ វាមិនចាំបាច់ក្លាយជាប្រូកស៊ីបញ្ជូនបន្តទូទៅមួយទៀតទេ។
សម្រាប់ការសាងសង់ socat ដែលផ្តល់ SOCKS4A ការរៀបចំជាឧទាហរណ៍គឺ៖
socat TCP4-LISTEN:9443,bind=127.0.0.1,reuseaddr,fork \
SOCKS4A:127.0.0.1:service.example.net:443,socksport=1080
ចំណុចបញ្ចប់ SOCKS គឺព័រមូលដ្ឋាន 1080។ អាដាប់ទ័រស្តាប់នៅព័រមូលដ្ឋាន 9443 ហើយស្នើសុំចំណុចបញ្ចប់នោះ service.example.net:443។ ទាំងនេះជាតម្លៃឧទាហរណ៍ មិនមែនការដាក់ពង្រាយសេវាពេញលេញទេ។
អាដាប់ទ័រមានគោលដៅថេរមួយ
រាល់ការតភ្ជាប់ TCP ដែលទទួលយកស្នើសុំសេវាដូចគ្នា។ កម្មវិធីដែលភ្ជាប់ទៅ 9443 ផ្តល់បៃពិធីការធម្មតារបស់វា; socat ផ្តល់ការចរចា SOCKS4A។ ការផ្ញើសំណើ HTTP CONNECT ថ្មីទៅ 9443 នឹងមិនជ្រើសគោលដៅផ្សេងទេ—វានឹងផ្ញើបៃទាំងនោះបន្តទៅសេវាថេរ។
SOCKS4A ផ្តល់ឈ្មោះម៉ាស៊ីនទៅចំណុចបញ្ចប់ SOCKS សម្រាប់ការដោះស្រាយពីចម្ងាយ។ នេះខុសពីទម្រង់ SOCKS4 ដែលប្រើអាសយដ្ឋានដែលជ្រើសដោយអតិថិជន។ លំហូរខាងលើដែលបានជ្រើស—រួមទាំងបេក្ខជនសាធារណៈពីបញ្ជីប្រូកស៊ី SOCKS4—ត្រូវតែគាំទ្រការគ្រប់គ្រងឈ្មោះម៉ាស៊ីន SOCKS4A និងការផ្ទៀងផ្ទាត់ដែលត្រូវការ; ឧទាហរណ៍នេះមិនមែនជារូបមន្តចូលដោយពាក្យសម្ងាត់ SOCKS5 ទេ។
ភ្ជាប់ក្នុងតំបន់ ស្គាល់សេវាពិត
ការប្តូរ URL HTTPS ទៅ https://127.0.0.1:9443/ ផ្លាស់ប្តូរឈ្មោះម៉ាស៊ីនដែលអតិថិជនអាចប្រើសម្រាប់ TLS និង HTTP។ វិញ្ញាបនបត្រសម្រាប់ service.example.net នឹងមិនក្លាយជាវិញ្ញាបនបត្រត្រឹមត្រូវសម្រាប់ loopback ទេ។
នៅកន្លែងដែលអតិថិជនគាំទ្រការបញ្ជូនផ្លូវតភ្ជាប់ដោយឡែក សូមរក្សាអត្តសញ្ញាណ URL ដើម។ Curl អាចបង្ហាញភាពខុសគ្នានេះ៖
curl --noproxy '*' \
--connect-to service.example.net:443:127.0.0.1:9443 \
https://service.example.net/
សុខៈទៅអាដាប់ទ័រមូលដ្ឋាន ខណៈការផ្ទៀងផ្ទាត់ TLS និងគោលដៅ HTTP នៅតែជា service.example.net។ កម្មវិធីផ្សេងទៀតត្រូវការការគ្រប់គ្រងស្មើគ្នាដែលគាំទ្រដោយខ្លួនឯង; មិនមែនអតិថិជនទាំងអស់ផ្តល់វាទេ។
ការចង loopback កំណត់ការបង្ហាញបណ្តាញ ប៉ុន្តែដំណើរការមូលដ្ឋានសមស្របផ្សេងទៀតនៅតែអាចទៅដល់វា។ រក្សាអាយុកាលសេវា និងអ្នកប្រើប្រាស់ឲ្យសមស្រប។ រក្សាការផ្ទៀងផ្ទាត់ TLS ជំនួសឱ្យការបង្ក្រាបកំហុសអត្តសញ្ញាណដែលបណ្តាលមកពី URL loopback។