SOCKS ৰ মাজেৰে Ruby Net::FTP: লগইন কাম কৰে, ডাউনলোড ওলমি থাকে
Ruby FTP ৰ control আৰু data সংযোগসমূহ একেটা উদ্দেশ্যিত proxy পথেৰে অনুসৰণ কৰক।
FTP লগইনে control সংযোগ ব্যৱহাৰ কৰে। তাৰ পিছত directory listing বা ডাউনলোডৰ বাবে data সংযোগ লাগে, যিটো SOCKS ৰ মাজেৰে লগইন সফল হ'লেও ব্যৰ্থ হ'ব পাৰে।
প্ৰথমে passive বা active ম’ড চিনাক্ত কৰক। passive ম’ডত client এ FTP server এ দিয়া ঠিকনা আৰু প’ৰ্টলৈ এটা নতুন সংযোগ খোলে। সেই সংযোগেও উদ্দেশ্যিত proxy পথ লাগে।
Ruby socket সংযোগ
Ruby ৰ Net::FTP API এ ইয়াৰ সংযোগ আৰু passive ম’ডৰ আচৰণ নথিভুক্ত কৰে। SOCKS সংযোগে control আৰু data দুয়ো পথত ব্যৱহৃত socket সৃষ্টি সামৰি ল’ব লাগে; HTTP client ৰ আন ঠাইৰ proxy ছেটিঙে সেইবোৰ বিন্যাস নকৰে।
যদি সংযোগে socket ৰ আচৰণ গোলকীয়ভাৱে সলনি কৰে, তেন্তে ইয়াৰ concurrency পৰিসৰ পৰীক্ষা কৰক। এটা transfer ৰ চাৰিওফালে থকা block এ আন thread সমূহক shared state ৰ পৰিৱৰ্তনৰ পৰা পৃথক কৰিব নোৱাৰে।
এটা provider এ static endpoint আগবঢ়াব পাৰে, কিন্তু সেইটো service ৰ বৈশিষ্ট্য, SOCKS ৰ সাধাৰণ প্ৰয়োজন নহয়। য’ত পৃথক সংযোগে ভিন্ন exit ব্যৱহাৰ কৰিব পাৰে, তাত FTP server এ ইয়াৰ data সংযোগ প্ৰমাণিত control সংযোগৰ সৈতে কেনেকৈ সংযুক্ত কৰে সেয়া পৰীক্ষা কৰক।
পোৱা পৰ্যায়, ম’ড আৰু data endpoint ৰেকৰ্ড কৰক, credentials আঁতৰাই। ইয়াৰ দ্বাৰা অৱৰোধিত data পথ আৰু proxy লগইন ব্যৰ্থতাৰ পাৰ্থক্য হয়।