कई समवर्ती एफ़टीपी सत्रों के संबंध में एक स्पष्ट और तकनीकी व्याख्या जब केवल एक पोर्ट पर डेटा पोर्ट को लॉक किया जाता है, तो मुझे गहराई से जानने में सबसे अधिक दिलचस्पी है। यह कब काम कर सकता है, कब नहीं चलेगा, इसकी सिफारिश क्यों नहीं की जा सकती आदि।
यह एक जंगली अनुमान होगा, जैसा कि मैंने इसे परीक्षण नहीं किया है, आपको इसे अपने लिए आज़माना चाहिए और देखना चाहिए कि क्या कुछ अन्य समस्याएं हैं जो मुझे याद हो सकती हैं।
मुझे लगता है आप निष्क्रिय पोर्ट रेंज को एक सिंगल पोर्ट तक सीमित कर सकते हैं । वास्तव में आप इस प्रश्न में देख सकते हैं कि छोटे बंदरगाह रेंज का उपयोग अभ्यास में किया जाता है । सैद्धांतिक रूप से, कई समवर्ती कनेक्शनों का समर्थन करने के लिए आपको केवल 4 मानों की आवश्यकता होती है: स्थानीय आईपी, स्थानीय पोर्ट, रिमोट आईपी, अद्वितीय होने के लिए रिमोट पोर्ट । यह है कि आप विभिन्न कनेक्शनों के बीच कैसे विचार-विमर्श करते हैं।
यदि आप अपने सर्वर पर पोर्ट को एक सिंगल वैल्यू पर लॉक करते हैं, तो केवल वैरिएबल क्लाइंट द्वारा उपयोग किया जाने वाला पोर्ट है। यह एक समस्या नहीं है, जब तक कि ग्राहक के पास चुनने के लिए नि: शुल्क पंचांग बंदरगाहों का एक बड़ा पर्याप्त पूल है। जब तक यह कुछ भारी NAT कर रहा है, आपको इस बारे में चिंता करने की ज़रूरत नहीं है। अब, चेतावनी दें कि यह विशुद्ध रूप से सैद्धांतिक सामान होगा : यदि आपने अपने सर्वर पर कई पोर्ट का उपयोग किया है, तो आप सक्षम करके समवर्ती समवर्ती कनेक्शन की संख्या को गुणा कर सकते हैंnumber of ports in range
एक पोर्ट क्लाइंट-साइड प्रति कनेक्शन। लेकिन यह व्यवहार में नहीं होगा, क्योंकि मुझे संदेह है कि एफ़टीपी क्लाइंट का कोई कार्यान्वयन है जो इस का समर्थन करेगा (क्योंकि यह बहुत समझ में नहीं आता है)। इसके अलावा अगर ग्राहक को अपने अल्पकालिक बंदरगाहों को इस तरह से साझा करना है और सिर्फ एक नया नहीं खोल सकता है, तो उससे निपटने के लिए और अधिक गंभीर समस्याएं हैं। तो, इस दृष्टिकोण से आपको एकल पोर्ट का उपयोग करके पूरी तरह से सुरक्षित होना चाहिए।
चलो सोचते है कि एकल पोर्ट पर्याप्त क्यों नहीं हो सकता है ।
सबसे पहले, मैं एक ऐसी स्थिति के साथ आ सकता हूं जहां वास्तव में छोटी गाड़ी एफ़टीपी सर्वर कार्यान्वयन क्लाइंट डेटा ट्रांसफर की पहचान करने के तरीके के रूप में पूरी तरह से स्थानीय पोर्ट नंबर का उपयोग करता है। एक बार फिर, मुझे नहीं लगता कि कोई भी सभ्य एफ़टीपी ऐसा करेगा।
वास्तविक समस्या ( हाँ, आप एक प्रमुख विषयांतर ;-)) के रूप में ऊपर की उपेक्षा कर सकते हैं निष्क्रिय बंदरगाह रेंज एक गैर-विशेषाधिकारित श्रेणी में है ।
इसका मतलब यह है कि आपका चयनित पोर्ट नंबर प्रति se आरक्षित नहीं है , और वास्तव में किसी भी उपयोगकर्ता प्रक्रिया ( रूट की आवश्यकता नहीं है) विशेषाधिकारों की ) इसे आपके एफ़टीपी करने से पहले पकड़ सकती है। यदि आपके पास चुनने के लिए बंदरगाहों का एक प्रचुर मात्रा में पूल है, तो आप बस एक यादृच्छिक मुक्त हड़पते हैं। यदि आप केवल एक का उपयोग करने के लिए बाध्य हैं और यह पहले से ही उपयोग किया जाता है, तो आप हस्तांतरण को ठीक से नहीं संभाल पाएंगे।
क्षमा करें, यदि उत्तर थोड़ा सा भी अटपटा लगता है। ईमानदार होने के लिए, मैंने एक कारण खोजने की कड़ी कोशिश की कि आपको एक भी बंदरगाह का उपयोग क्यों नहीं करना चाहिए और, पिछले बिट के अलावा, मैं इसके खिलाफ कोई भी कठोर सबूत नहीं सोच सकता। फिर भी, एक दिलचस्प और चुनौतीपूर्ण सवाल जिसे आप करते हैं।