Socket .NET jeħtieġ handshake SOCKS
Jispjega x'għandu jagħmel socket TCP .NET mhux ipproċessat qabel ma l-bytes tal-applikazzjoni jistgħu jivvjaġġaw permezz ta' proxy SOCKS.
Id-direzzjoni ta' Socket.Connect() lejn server SOCKS tiftaħ konnessjoni TCP ma' dak is-server. Il-bytes li jmissu għadhom iridu jitkellmu SOCKS. Li tibgħat il-protokoll tal-applikazzjoni tiegħek immedjatament iħalli s-server jistenna konversazzjoni oħra.
B'SOCKS5, it-twaqqif tal-konnessjoni jinkludi n-negozjati tal-metodu, kwalunkwe skambju ta' awtentikazzjoni magħżul, u talba li ssemmi d-destinazzjoni. Biss tweġiba b'suċċess tiftaħ it-triq għall-bytes tal-applikazzjoni. Dawn l-istadji huma definiti f'RFC 1928.
Żomm in-negozjati fis-saff tal-konnessjoni
Applikazzjoni bil-protokoll TCP tagħha tista' tuża konnettur li jifhem il-proxy u li jirritorna stream stabbilit. Il-bqija tal-applikazzjoni mbagħad taqra u tikteb permezz ta' dak l-istream. Konnettur għandu jikkunsidra qari parzjali, indirizzi ta' tul varjabbli, fallimenti tal-awtentikazzjoni u skadenza għan-negozjati.
Implimentazzjoni miktuba bl-idejn li taqra buffer wieħed ta' daqs fiss u tassumi suċċess hija fraġli. TCP ma jżommx il-konfini tal-messaġġi SOCKS. Aqra t-tweġiba kompleta deskritta mit-tip tal-indirizz tagħha qabel ma tibda l-protokoll tal-applikazzjoni. Qarrej tat-tweġiba CONNECT ta' .NET 7+ juri dak il-pass.
Jekk librerija miżmuma diġà tipprovdi dan is-saff tal-konnessjoni, iċċekkja l-verżjonijiet SOCKS appoġġjati tagħha, il-metodi tal-awtentikazzjoni u l-framework fil-mira. Link tal-forum ta' għaxar snin huwa punt tat-tluq għall-investigazzjoni, mhux prova ta' kompatibilità attwali.
Il-konfigurazzjoni tal-klijent HTTP għandha ambitu separat
Is-setting tal-proxy tal-klijent HTTP tikkonfigura dak il-klijent HTTP. Ma tibdilx kull socket mhux ipproċessat fil-proċess. L-API Socket taċċetta endpoint tan-netwerk u tħalli n-negozjati ta' livell ogħla lill-sejħiet.
Għal protokoll tal-applikazzjoni kriptat, wettaq il-handshake TLS tiegħu wara li t-tunnel tal-proxy jiġi stabbilit. Ivvalida l-identità tad-destinazzjoni maħsuba f'dak l-istadju. L-awtentikazzjoni tal-proxy u l-awtentikazzjoni tad-destinazzjoni jibqgħu separati għalkemm jużaw l-istess stream bażiku.