Veri portunu tek bir porta kilitlerken eşzamanlı çoklu FTP oturumları ile ilgili net ve teknik bir açıklama, derinlemesine bilmekle en çok ilgilendiğim şeydir. Ne zaman işe yarayabilir, ne zaman çalışmayacak, neden önerilmeyeceği vs.
Bu, test etmediğim için vahşi bir tahmin olacak, kendiniz denemelisiniz ve gözden kaçırmış olabileceğim başka sorunlar olup olmadığını görmelisiniz.
Sanırım pasif port aralığını tek bir portla sınırlandırabilirsin . Aslında sen görebileceğiniz bu soruya o küçük liman aralıkları pratikte kullanılmaktadır . Teorik olarak, birden fazla eşzamanlı bağlantıyı desteklemek için sadece 4 değere ihtiyacınız var: yerel IP, yerel port, uzak IP, uzak port benzersiz. Farklı bağlantılar arasında nasıl ayırt edersiniz.
Sunucunuzdaki bağlantı noktasını tek bir değere kilitlerseniz, geriye kalan tek değişken istemci tarafından kullanılan bağlantı noktasıdır. Müşteri, aralarından seçim yapabileceği kadar geniş, geçici , geçici limanlar havuzuna sahip olduğu sürece, bu bir sorun değildir . Biraz ağır NAT yapmıyorsa, bu konuda endişelenmenize gerek yok. Şimdi, bu tamamen teorik şeyler olacağı konusunda uyarılırsınız : eğer sunucunuzda birden fazla port kullanıyorsanız, etkin hale getirerek varsayımsal eşzamanlı bağlantı sayısını çoğaltabilirsiniz.number of ports in range
İstemci tarafında bir port başına bağlantı. Ancak, bunu destekleyecek bir FTP istemcisi uygulaması olduğundan şüphelendiğimden (pratikte pek bir anlam ifade etmeyeceğinden) pratikte olmayacak. Ayrıca, müşteri geçici portlarını bu şekilde paylaşmak zorunda kalırsa ve yeni bir tane açamıyorsa, başa çıkması gereken çok daha ciddi sorunları var demektir. Bu nedenle, bu açıdan tek bir bağlantı noktası kullanarak tamamen güvende olmalısınız.
Tek bir portun neden yeterli olmadığını düşünelim .
Her şeyden önce, gerçekten çok çalışan bir FTP sunucusu uygulamasının, istemci veri aktarımını tanımlamanın bir yolu olarak sadece yerel port numarasını kullandığı bir durumla karşılaştım. Bir kez daha, düzgün bir FTP'nin bunu yapacağını sanmıyorum.
Asıl sorun ( evet, hepsini yukarıda sayılan büyük bir sayı olarak göz ardı edebilirsiniz ;-)) pasif port aralığının imtiyazsız bir aralıkta olması .
Bu, seçtiğiniz port numarasının kendi başına ayrılmadığı anlamına gelir ve aslında herhangi bir kullanıcı işlemi ( kök ayrıcalıklarına gerek duymaz ) FTP sunucunuzdan önce alabilir. Aralarından seçim yapabileceğiniz çok sayıda bağlantı noktası havuzunuz varsa, rasgele bir tane seçebilirsiniz. Yalnızca birini kullanmaya mecbursanız ve zaten kullanılıyorsa, transferleri doğru bir şekilde yapamazsınız.
Üzgünüm, cevap biraz spekülatif görünüyorsa. Dürüst olmak gerekirse, tek bir bağlantı noktasını kullanmamanız için bir neden bulmaya çalıştım ve son parça dışında, buna karşı sert bir kanıt düşünemedim. Bununla birlikte, ilginç ve zorlu bir soru sormak.