Yíyí Ìbéèrè SOCKS5 padà sí ọ̀nà Àbáwọlé HTTP
Parí ìpàrọwọ CONNECT pẹ̀lú òbí, dá ìdáhùn SOCKS padà sí aláràbáà, lẹ́yìn náà ni kí o tó gbé àwọn báìtì ohun èlò kọjá.
Ẹ̀ka iwájú SOCKS5 lè lo àpò HTTP gẹ́gẹ́ bí ọ̀nà ìgbékalẹ̀ tí ó tẹ̀lé. Ó ń ṣiṣẹ́ gẹ́gẹ́ bí olùpèsè SOCKS sí aláràbáà àti gẹ́gẹ́ bí aláràbáà HTTP CONNECT sí òbí. Ìpàrọwọ ìṣàkóso méjèèjì parí kí ìṣàn ohun èlò tó bẹ̀rẹ̀.
Ìbéèrè SOCKS CONNECT ti pèsè olùgbàléjò tàbí àdírẹ́sì ibi-àfẹ́sọ̀nà àti ibudo. Fún àpẹẹrẹ ìpàrọwọ HTTP/1.1 pẹ̀lú òbí:
client → adapter: SOCKS5 CONNECT service.example.net:443
adapter → parent:
CONNECT service.example.net:443 HTTP/1.1
Host: service.example.net:443
parent → adapter: HTTP/1.1 200 Connection Established
[end of headers]
adapter → client: SOCKS5 success reply
client ↔ adapter ↔ parent ↔ service: application bytes
Túmọ̀ àbájáde ní ẹ̀bá
Olùṣàtúnṣe náà parí ìjẹ́rìí èyíkéyìí tí òbí béèrè fún, ó sì dúró de àbájáde CONNECT. Ìdáhùn 2xx tí ó ṣàṣeyọrí fi ọ̀nà àbáwọlé òbí kalẹ̀. Lẹ́yìn náà ni kí ó tó dá ìdáhùn àṣeyọrí SOCKS tí ó bá a mu padà sí aláràbáà tí ó wà nísàlẹ̀.
Tí òbí bá kọ iṣẹ́ náà, fi ìdáhùn ìkùnà SOCKS tí a ti ṣàlàyé ránṣẹ́, lẹ́yìn náà pa ìsopọ̀ aláràbáà mọ́ lẹ́sẹ̀kẹsẹ̀. SOCKS5 béèrè pé kí ìpípadé yẹn wáyé ní ìṣẹ́jú-àáyá mẹ́wàá lẹ́yìn tí a ti rí ìkùnà náà. Fi ipò HTTP òbí pamọ́ gẹ́gẹ́ bí ìsọfúnni àyẹ̀wò fún olùṣàtúnṣe náà. Gbígbé ìlà ipò yẹn kọjá gẹ́gẹ́ bí dátà ohun èlò yóò fi ìfiránṣẹ́ ìṣàkóso HTTP sínú ìṣàn tí aláràbáà rẹ̀ ń retí ìkọ̀wé SOCKS.
Kí àbájáde CONNECT tó ṣàṣeyọrí, òbí ṣì ń sọ HTTP, pẹ̀lú ìkọ̀wé ìdáhùn ìpèníjà tàbí àṣìṣe èyíkéyìí. Lẹ́yìn ìpínyà àkọlé àbájáde tí ó ṣàṣeyọrí, ìsopọ̀ náà di ọ̀nà àbáwọlé; kò sí ara ìdáhùn HTTP kankan tí a ní láti jẹ níbẹ̀rẹ̀.
Dáàbò bo àwọn báìtì tí ó wà lẹ́yìn àwọn àkọlé
Kíkà kan lè ní òpin àwọn àkọlé òbí àti àwọn báìtì láti ibi-àfẹ́sọ̀nà papọ̀. Fi àwọn báìtì àfikún yẹn pamọ́ fún ohun èlò tí ó wà nísàlẹ̀. Àwọn ìlànà tí olùpèsè ń sọ níbẹ̀rẹ̀ lè kíni lẹ́sẹ̀kẹsẹ̀ tí ìsopọ̀ wọn bá ṣí.
Lẹ́yìn tí a ti fi ìdáhùn àṣeyọrí SOCKS ránṣẹ́, gbé ìṣàn ohun èlò kọjá ní ẹ̀gbẹ́ méjèèjì. Olùṣàtúnṣe kò nílò láti pààrọ̀ ìfiránṣẹ́ aláràbáà kan pẹ̀lú ìfiránṣẹ́ olùpèsè kan, bẹ́ẹ̀ ni kò nílò láti lóye àwọn àkọsílẹ̀ TLS kí ó tó gbé wọn kọjá. Iṣẹ́ ìlànà rẹ̀ ni láti dá àwọn ìjíròrò ọ̀nà àbáwọlé méjèèjì kalẹ̀ àti láti túmọ̀ wọn.