ஒரு ப்ராக்ஸி போர்ட் HTTP மற்றும் SOCKS இரண்டையும் எவ்வாறு ஏற்க முடியும்
வேண்டுமென்றே கலந்த ஒரு லிசனர் HTTP-ஐயும் SOCKS-ஐயும் எவ்வாறு வேறுபடுத்த முடியும், சாதாரண ஒற்றை-நெறிமுறை லிசனரால் அதைச் செய்ய முடியாது என்பதை விளக்குகிறது.
கலந்த ப்ராக்ஸி லிசனர் ஒரே TCP போர்ட்டில் HTTP-ஐயும் SOCKS-ஐயும் ஏற்க முடியும், ஏனெனில் சேவையகம் தொடக்க நெறிமுறை பைட்டுகளை ஆய்வு செய்கிறது. போர்ட் எண் அந்த அடையாளத்தைச் செய்யாது.
HTTP ப்ராக்ஸி கோரிக்கை GET அல்லது CONNECT போன்ற HTTP முறையுடன் தொடங்குகிறது. SOCKS வாழ்த்து இரும நெறிமுறை புலங்களுடன் தொடங்குகிறது. இந்த உள்ளீடுகளுக்காக வடிவமைக்கப்பட்ட மென்பொருள் இணைப்பைப் பொருத்தமான கையாளுபவருக்கு அனுப்ப முடியும்.
இது வெளிப்படையான செயலாக்கப் பண்பு. சாதாரண Squid HTTP லிசனர் தனது போர்ட்டை 1080 ஆக மாற்றியதால் கலந்ததாக மாறாது, மேலும் SOCKS மட்டும் கொண்ட லிசனர் உலாவி அமைப்பிலிருந்து HTTP-ஐக் கற்றுக்கொள்ளாது.
TLS மற்றொரு எல்லையைச் சேர்க்கிறது: மறையாக்கப்பட்ட ப்ராக்ஸி இணைப்பு தெரியும் HTTP முறையுடன் அல்ல, TLS-உடன் தொடங்குகிறது. அதே முனைப்புள்ளியில் அதை ஆதரிக்க கூடுதல் வேண்டுமென்றே கையாளுதல் தேவை; வெற்று உரை HTTP-ஐயும் SOCKS-ஐயும் அடையாளம் காண்பது அந்த திறனை நிறுவாது.
முனைப்புள்ளிக்கு ஆவணப்படுத்தப்பட்ட கிளையண்ட் நெறிமுறையைப் பயன்படுத்துங்கள். இரண்டும் வேலை செய்தால், அது அந்த சேவையகத்தின் கலந்த லிசனர் பற்றிய சான்று, ஒவ்வொரு கிளையண்டிலும் நெறிமுறையைக் குறிப்பிடாமல் விடுவதற்கான காரணம் அல்ல.
Glider-இன் கலந்த லிசனர் ஒரு குறிப்பிட்ட எடுத்துக்காட்டைத் தருகிறது: அது ஒரு பைட்டை நுகராமல் அதைப் பார்க்கிறது, 0x05-ஐ தனது SOCKS5 கையாளுபவருக்கு அனுப்புகிறது, இல்லையெனில் தனது HTTP பார்சரை அழைக்கிறது. அந்த பார்சர் வரும் கோரிக்கையை இன்னும் சரிபார்க்கிறது; அனுப்பும் தேர்வு தன்னிச்சையான உள்ளீட்டை செல்லுபடியாகும் HTTP ஆக்காது.
TCP லிசனரைப் பகிர்வது SOCKS5 UDP தொடர்பைத் தானாக வழங்காது. Glider தனது UDP லிசனரைத் தனியாகத் தொடங்குகிறது. TCP நெறிமுறை தேர்வும் பிந்தைய டேட்டாகிராம் ரிலேயும் தனித்தனி திறன்கள்.