অভ্যন্তরীণ অ্যাপ্লিকেশনগুলির জন্য সেরা টিসিপি পোর্ট নম্বর পরিসর [বন্ধ]


97

আমি এমন জায়গায় কাজ করি যেখানে আমাদের প্রতিটি অভ্যন্তরীণ অ্যাপ্লিকেশন পৃথক টমক্যাট উদাহরণে চলে এবং একটি নির্দিষ্ট টিসিপি বন্দর ব্যবহার করে। সার্ভারে অন্য কোনও প্রক্রিয়ার সাথে পোর্ট নম্বর সংঘর্ষ এড়াতে এই অ্যাপ্লিকেশনগুলির জন্য ব্যবহার করার জন্য সেরা আইএএনএ বন্দর পরিসরটি কী হবে?

Http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml এর উপর ভিত্তি করে , আমি বর্তমানে তাদের দেখতে যেমন এই বিকল্পগুলি:

  1. সিস্টেম পোর্টস (0-1023): আমি এই বন্দরগুলির কোনওটিই ব্যবহার করতে চাই না কারণ সার্ভারটি এই ব্যাপ্তির স্ট্যান্ডার্ড পোর্টগুলিতে পরিষেবা চালাচ্ছে may
  2. ইউজার পোর্টস (1024-49151): অ্যাপ্লিকেশনগুলি অভ্যন্তরীণ বলে দেওয়া হয় আমি আমাদের অ্যাপ্লিকেশনগুলির জন্য কোনও নম্বর সংরক্ষণের জন্য আইএএনএ-র অনুরোধ করার ইচ্ছা করি না। তবে, আমি একই পোর্টের অন্য একটি প্রক্রিয়া দ্বারা ব্যবহৃত হওয়ার সম্ভাবনা হ্রাস করতে চাই, উদাহরণস্বরূপ, 1521 এ ওরাকল নেট শ্রোতা।
  3. গতিশীল এবং / বা ব্যক্তিগত পোর্ট (49152-65535): এই পরিসরটি কাস্টম পোর্ট সংখ্যার জন্য আদর্শ। আমার একমাত্র উদ্বেগ হ'ল যদি এটি ঘটে থাকে:

    ক। আমি এক্স অ্যাপ্লিকেশন ব্যবহার করতে আমার অ্যাপ্লিকেশনগুলির মধ্যে একটি কনফিগার করি
    । অ্যাপ্লিকেশনটি কয়েক মিনিট বা ঘন্টার জন্য (অ্যাপের প্রকৃতির উপর নির্ভর করে) বন্ধ হয়ে যায়, বন্দরটি কিছু সময়ের জন্য অব্যবহৃত রেখে দেয়,
    সি। অপারেটিং সিস্টেমটি পোর্ট নম্বর এক্সকে অন্য কোনও প্রক্রিয়ায় বরাদ্দ করে, উদাহরণস্বরূপ, যখন সেই প্রক্রিয়াটি ক্লায়েন্ট হিসাবে কাজ করে অন্য সার্ভারের সাথে টিসিপি সংযোগের প্রয়োজন হয়। এটি সাফল্য পেয়েছে যে এটি গতিশীল পরিসরের মধ্যে পড়ে এবং এক্স অপারেটিং সিস্টেম সম্পর্কিত যতটা অব্যবহৃত রয়েছে, এবং
    ডি। অ্যাপ্লিকেশনটি শুরু করতে ব্যর্থ হয়েছে কারণ পোর্ট এক্স ইতিমধ্যে ব্যবহৃত in


4
আমি এখানে একটি অনুরূপ প্রশ্নের উত্তর দিয়েছি stackoverflow.com/a/38141340/3333759 যা আপনাকে সহায়ক মনে করতে পারে।
অ্যাড্রিয়ানওয়াদে

উত্তর:


35

আপনি কেন যত্ন করবেন তা আমি দেখতে পাচ্ছি না। সুবিধার নিয়ম "1024 এর নীচে পোর্ট ব্যবহার করবেন না" ব্যতীত আপনার কোনও বন্দর ব্যবহার করতে সক্ষম হওয়া উচিত কারণ আপনার ক্লায়েন্টদের কোনও আইপি ঠিকানা এবং পোর্টের সাথে কথা বলতে কনফিগার করা উচিত!

যদি তারা না হয়, তবে সেগুলি খুব ভালভাবে করা হয়নি। ফিরে যান এবং এগুলি সঠিকভাবে করুন :-)

অন্য কথায়, আইপি ঠিকানা Xএবং পোর্টে সার্ভারটি চালনা করুন এবং Yক্লায়েন্টদের সেই তথ্য দিয়ে কনফিগার করুন। তারপরে, যদি আপনি খুঁজে পান যে আপনার নিজের সাথে এই বিবাদগুলিতে অন্য একটি সার্ভার চালানো উচিত , কেবল একটি নতুন বন্দর ব্যবহার করার জন্য আপনার সার্ভার এবং ক্লায়েন্টদের পুনরায় কনফিগার করুন। আপনার ক্লায়েন্টরা কোড কিনা বা ব্রাউজারে লোকেরা ইউআরএল টাইপ করে কিনা তা সত্য।XY

আমি, আপনার মতো, আইএএনএ দ্বারা নির্ধারিত নম্বরগুলি পাওয়ার চেষ্টা করব না যেহেতু এটি পরিষেবাগুলির জন্য এত সাধারণ যে অনুমান করা যায় যে অনেকগুলি, অনেক পরিবেশ তাদের ব্যবহার করবে (এসএসএইচ বা এফটিপি বা টেলনেট ভাবেন)।

আপনার নেটওয়ার্কটি আপনার নেটওয়ার্ক এবং আপনি যদি 1234 পোর্টে আপনার সার্ভারগুলি চান (বা এমনকি এটির জন্য টেলনেট বা এফটিপি বন্দর), এটি আপনার ব্যবসা। ঘটনাচক্রে, আমাদের মেইনফ্রেম ডেভলপমেন্ট এরিয়ায়, পোর্ট 23 টি 3270 টার্মিনাল সার্ভারের জন্য ব্যবহৃত হয় যা টেলনেটের ক্ষেত্রে একেবারে আলাদা জন্তু। আপনি যদি মেইনফ্রেমের ইউনিক্স দিকে টেলনেট করতে চান তবে আপনি পোর্ট 1023 ব্যবহার করেন। টেলনেট ক্লায়েন্টের বাইরে এবং এটি সঠিকভাবে করুন:

telnet big_honking_mainframe_box.com 1023

আপনি যদি সত্যই ক্লায়েন্টের পক্ষটিকে কনফিগার করতে সক্ষম না করতে পারেন তবে 48042 এর মতো দ্বিতীয় পরিসরে একটি বেছে নিন এবং কেবল এটি ব্যবহার করে ঘোষণা করুন যে সেই বাক্সগুলিতে (ভবিষ্যতে যুক্ত হওয়া সহ) কোনও অন্য সফ্টওয়্যার আপনার পথ থেকে দূরে থাকবে has ।


ধন্যবাদ আপনার উত্তরটি পড়ার পরে এবং আরও কিছুটা চিন্তাভাবনা করার পরে আমি সিদ্ধান্ত নিয়েছি দ্বিতীয় ব্যাপ্তির মধ্যে পোর্ট ব্যবহারের বিকল্পটি নিয়ে যাব। আমরা 46xxx বাছাই করা যেমন IANA বর্তমানে খুব কম এই subrange নির্ধারিত পোর্ট আছে লিংক । আমি বর্ণিত তাত্ত্বিকভাবে সম্ভাব্য (যদিও অত্যন্ত সম্ভাবনা নেই) তৃতীয় পরিসরটি বেছে নিই।
জুয়ানাল

119

আমি IANA থেকে নির্ধারিত বন্দর নম্বরগুলি ডাউনলোড করার, ব্যবহৃত পোর্টগুলি ফিল্টার করে বের করার এবং প্রতিটি "নিযুক্ত" রেঞ্জটি সর্বাধিক বন্দরগুলির ক্রম অনুসারে বাছাই করার সিদ্ধান্ত নিয়েছি desce এটি কার্যকর হয়নি, যেহেতু সিএসভি ফাইলটি "অপসাইন্ডড" হিসাবে চিহ্নিত রেঞ্জগুলি অন্যান্য পোর্ট নম্বর রিজার্ভেশনকে ওভারল্যাপ করে। আমি নির্ধারিত বন্দর নম্বরগুলির ব্যাপ্তিটি ম্যানুয়ালি প্রসারিত করেছি , আমাকে সমস্ত নির্ধারিত পোর্ট নম্বরের একটি তালিকা রেখে। তারপরে আমি সেই তালিকাটি বাছাই করেছি এবং আমার নিজের তালিকা ছাড়াই বিহীন রেঞ্জগুলি তৈরি করেছি।

যেহেতু এই স্ট্যাকওভারফ্লো ডটকম পৃষ্ঠাটি বিষয়টি সম্পর্কে আমার অনুসন্ধানে খুব উচ্চ স্থান পেয়েছে, আমি অনুভব করেছি যে আমি আগ্রহী যে কারও জন্য এখানে বৃহত্তম রেঞ্জগুলি পোস্ট করব। এটি টিসিপি এবং ইউডিপি উভয়ের জন্য যেখানে পরিসরে পোর্টগুলির সংখ্যা কমপক্ষে 500।

Total   Start   End
829     29170   29998
815     38866   39680
710     41798   42507
681     43442   44122
661     46337   46997
643     35358   36000
609     36866   37474
596     38204   38799
592     33657   34248
571     30261   30831
563     41231   41793
542     21011   21552
528     28590   29117
521     14415   14935
510     26490   26999

উত্স (সিএসভি ডাউনলোড বোতামের মাধ্যমে):

http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml


"এটি টিসিপি এবং ইউডিপি উভয়ই" - আমি এই সমস্ত বন্দরটি খুলতে পারি বলে 44100-44199মনে করি সহজে মনে হয় কারণ অডিও 44100 ইউডিপি এবং টিসিপি উভয়ই সুরক্ষিতভাবে নমুনা দেয়? Udp 44100-44199 এবং tcp 44100-44199 উভয়ই ফ্রি?
Lapsio

4
দুর্ভাগ্যক্রমে না. আমি পোস্ট করার পর থেকে অতিরিক্ত সংরক্ষণ রয়েছে। আপনার পরিসীমা এখন একটি বন্দর আছে। "জেড-ওয়েভ-টানেল 44123 টিসিপি জেড-ওয়েভ সুরক্ষিত টানেল"
ডেভিড ভেরেব

ভাগ্যক্রমে আমি মনে করি না আমি জেড-ওয়েভ স্মার্ট হোম সিকিউরিটি সিস্টেমটি ডেভলপমেন্ট সার্ভারে লল করতে যাচ্ছি। পূর্বে ব্যবহৃত পোর্ট রেঞ্জগুলি কিছু ভিএমওয়্যার সরঞ্জাম সহ অনেকগুলি গুরুত্বপূর্ণ স্টাফ coveredেকেছিল তাই এটি আরও খারাপ ছিল। যদি তাই এখন তাহলে শুধু সংঘর্ষের আমি যে ধন্যবাদের সহিত :) শীতল আছি
Lapsio

4
সুতরাং আমি আরও নতুন ডেটা উপর ভিত্তি করে একটি নতুন সেট রেঞ্জ নিয়ে আসতে আবার তালিকা চালানোর সিদ্ধান্ত নিয়েছে। দেখা যাচ্ছে যে "স্বাক্ষরিত" রেঞ্জগুলি যথাযথভাবে নাম্বারযুক্ত বলে মনে হচ্ছে না। উদাহরণস্বরূপ, 43124-44320 আনসাইন করা হিসাবে চিহ্নিত হয়েছে, তবুও 44123, যা এই সীমার মধ্যে রয়েছে, তার উপরে নির্ধারিত হিসাবে নির্ধারিত হয়েছে। দেখে মনে হচ্ছে যে আমি স্বাক্ষরবিহীন রেঞ্জগুলিকে ভুলভাবে গণনা করা হচ্ছে বলে ম্যানুয়ালি নিয়ে আসতে হবে।
ডেভিড Vereb

6

সংক্ষিপ্ত উত্তর: একটি অ-নিযুক্ত ব্যবহারকারী পোর্ট ব্যবহার করুন

অর্জনকারীর উত্তরের উত্তর - একটি সংস্থান অনুসন্ধান সমাধান নির্বাচন করুন এবং মোতায়েন করুন। সার্ভারকে গতিশীলভাবে একটি ব্যক্তিগত পোর্ট নির্বাচন করতে দিন। ক্লায়েন্টদের রিসোর্স আবিষ্কার ব্যবহার করুন।

যে সার্ভারটি যে পোর্টটি শুনতে চায় সেটি যে পোর্টটি শুনতে চায় তা উপলব্ধ না হওয়ার কারণে এটি ঝুঁকিপূর্ণ; কমপক্ষে আমার সাথে এটি ঘটেছে। অন্য পরিষেবা বা ক্লায়েন্ট প্রথমে সেখানে যেতে পারে।

প্রাইভেট বন্দরগুলি যা ক্লায়েন্টিকভাবে ক্লায়েন্টদের হাতে দেওয়া হয় তা এড়িয়ে আপনি কোনও ক্লায়েন্টের কাছ থেকে ঝুঁকি প্রায় সম্পূর্ণ হ্রাস করতে পারেন।

অন্য কোনও পরিষেবা থেকে ঝুঁকিটি হ'ল ন্যূনতম যদি আপনি কোনও ব্যবহারকারীর বন্দর ব্যবহার করেন। একটি অ-স্বাক্ষরিত বন্দরের ঝুঁকি কেবলমাত্র এমন যে অন্য কোনও পরিষেবাটি কনফিগার করা হয়েছে (বা ছদ্মবেশী) সেই পোর্টটি ব্যবহার করে। তবে কমপক্ষে এটি সম্ভবত আপনার নিয়ন্ত্রণে।

ইউজার পোর্ট সহ সমস্ত বন্দর অ্যাসাইনমেন্ট সহ বিশাল ডকটি এখানে: http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt অন-স্বাক্ষরিত টোকেনটির সন্ধান করুন ।


4
এমন কোনও প্রোটোকলের জন্য একটি নির্ধারিত বন্দর ব্যবহার করা ভাল যা আপনার নেটওয়ার্কে কখনও ব্যবহার করা হবে না? একটি অচিহ্নিত পোর্ট যে কোনও সময় বরাদ্দ হতে পারে এবং আপনাকে সমস্যা দিতে পারে।
আদ্রিয়ানওয়াদে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.