Ruby Net::FTP sa pamamagitan ng SOCKS: gumagana ang login, nag-hang ang mga download
Subaybayan ang control at data na koneksyon ng Ruby FTP sa parehong inilaan na ruta ng proxy.
Gumagamit ng control connection ang login sa FTP. Pagkatapos, kailangan ng listahan ng folder o download ang isang data connection, na maaaring mabigo kahit nagtagumpay ang login sa SOCKS.
Alamin muna ang passive o active mode. Sa passive mode, nagbubukas ang kliyente ng bagong koneksyon sa address at port na ibinibigay ng FTP server. Kailangan din ng koneksyong iyon ang inilaang ruta ng proxy.
Integrasyon ng socket sa Ruby
Dinodokumento ng Net::FTP API ng Ruby ang pag-uugali ng koneksyon at passive mode. Dapat saklawin ng integrasyon ng SOCKS ang paglikha ng socket na ginagamit ng parehong control at data path; hindi ito kino-configure ng setting ng proxy ng HTTP client sa ibang lugar.
Kung binabago ng integrasyon ang pag-uugali ng socket nang pandaigdigan, suriin ang saklaw nito sa mga thread. Hindi maihihiwalay ng isang block sa paligid ng isang transfer ang ibang thread mula sa mga pagbabago sa pinagsasaluhang estado.
Maaaring mag-alok ang provider ng static na endpoint, ngunit iyon ay katangian ng serbisyo at hindi pangkalahatang pangangailangan ng SOCKS. Kung saan maaaring gumamit ng magkaibang labasan ang magkahiwalay na koneksyon, tingnan kung paano iniuugnay ng FTP server ang data connection nito sa na-authenticate na control connection.
Itala ang naabot na yugto, mode at data endpoint, na tinanggal ang mga kredensyal. Ihinihiwalay nito ang naharang na data path mula sa bigong login sa proxy.