পোর্ট 0 নেটওয়ার্ক প্রোগ্রামিং-এ বিশেষ তাৎপর্য বহন করে, বিশেষ করে ইউনিক্স ওএস-এ যখন সকেট প্রোগ্রামিংয়ের কথা আসে যেখানে সিস্টেম-বরাদ্দ, গতিশীল পোর্টের অনুরোধ করতে পোর্ট ব্যবহার করা হয়। পোর্ট 0 হল একটি ওয়াইল্ডকার্ড পোর্ট যা সিস্টেমকে একটি উপযুক্ত পোর্ট নম্বর খুঁজতে বলে৷
অধিকাংশ পোর্ট নম্বরের বিপরীতে, পোর্ট 0 টিসিপি/আইপি নেটওয়ার্কিং-এ একটি সংরক্ষিত পোর্ট, যার অর্থ এটি টিসিপি বা ইউডিপি বার্তাগুলিতে ব্যবহার করা উচিত নয়। TCP এবং UDP-এ নেটওয়ার্ক পোর্টের রেঞ্জ শূন্য নম্বর থেকে 65535 পর্যন্ত। শূন্য থেকে 1023-এর মধ্যে থাকা পোর্ট নম্বরগুলিকে নন-ফাইমেরাল পোর্ট, সিস্টেম পোর্ট বা সুপরিচিত পোর্ট হিসাবে সংজ্ঞায়িত করা হয়। ইন্টারনেট অ্যাসাইনড নম্বর অথরিটি (IANA) ইন্টারনেটে এই পোর্ট নম্বরগুলির উদ্দেশ্যমূলক ব্যবহারের একটি অফিসিয়াল তালিকা বজায় রাখে এবং সিস্টেম পোর্ট 0 ব্যবহার করা হয় না।
কিভাবে TCP/UDP পোর্ট 0 নেটওয়ার্ক প্রোগ্রামিং এ কাজ করে
একটি নতুন নেটওয়ার্ক সকেট সংযোগ কনফিগার করার জন্য উৎস এবং গন্তব্য উভয় দিকেই একটি পোর্ট নম্বর বরাদ্দ করা প্রয়োজন৷ প্রবর্তক (উৎস) দ্বারা পাঠানো TCP বা UDP বার্তাগুলিতে উভয় পোর্ট নম্বর থাকে যাতে বার্তা প্রাপক (গন্তব্য) সঠিক প্রোটোকল এন্ডপয়েন্টে প্রতিক্রিয়া বার্তা জারি করতে পারে৷
IANA বেসিক ইন্টারনেট অ্যাপ্লিকেশন যেমন ওয়েব সার্ভার (পোর্ট 80) এর জন্য নির্ধারিত সিস্টেম পোর্ট আগে থেকে বরাদ্দ করেছে, কিন্তু অনেক TCP এবং UDP নেটওয়ার্ক অ্যাপ্লিকেশনের নিজস্ব সিস্টেম পোর্ট নেই এবং প্রতিবার চালানোর সময় তাদের ডিভাইসের অপারেটিং সিস্টেম থেকে একটি পেতে হবে.
এর সোর্স পোর্ট নম্বর বরাদ্দ করতে, অ্যাপ্লিকেশনগুলি টিসিপি/আইপি নেটওয়ার্ক ফাংশনকে কল করে যেমন bind() একটি অনুরোধ করতে। যদি তারা একটি নির্দিষ্ট নম্বরের অনুরোধ করতে পছন্দ করে তবে অ্যাপ্লিকেশনটি একটি নির্দিষ্ট (হার্ড-কোডেড) নম্বর সরবরাহ করতে পারে, তবে এই ধরনের অনুরোধ ব্যর্থ হতে পারে কারণ সিস্টেমে চলমান অন্য অ্যাপ্লিকেশন বর্তমানে এটি ব্যবহার করছে।
বিকল্পভাবে, এটি সংযোগের পরামিতি হিসাবে আবদ্ধ() পোর্ট 0 প্রদান করতে পারে। এটি অপারেটিং সিস্টেমকে স্বয়ংক্রিয়ভাবে TCP/IP ডায়নামিক পোর্ট নম্বর পরিসরে একটি উপযুক্ত উপলব্ধ পোর্ট অনুসন্ধান করতে এবং ফেরত দিতে ট্রিগার করে৷
অ্যাপ্লিকেশনটি পোর্ট 0 মঞ্জুর করা হয় না বরং অন্য কিছু গতিশীল পোর্ট। এই প্রোগ্রামিং কনভেনশনের সুবিধা হল দক্ষতা। একাধিক পোর্ট ব্যবহার করার জন্য প্রতিটি অ্যাপ্লিকেশান কার্যকরী এবং চালানোর পরিবর্তে একটি বৈধ পোর্ট না পাওয়া পর্যন্ত, অ্যাপগুলি অপারেটিং সিস্টেমের উপর নির্ভর করে৷
ইউনিক্স, উইন্ডোজ এবং অন্যান্য অপারেটিং সিস্টেম পোর্ট 0 পরিচালনার ক্ষেত্রে পরিবর্তিত হয়, তবে একই সাধারণ নিয়ম প্রযোজ্য।
পোর্ট 0 এবং নেটওয়ার্ক নিরাপত্তা
নেটওয়ার্ক ট্রাফিক পোর্ট 0-এ শোনা হোস্টদের কাছে ইন্টারনেট জুড়ে পাঠানো নেটওয়ার্ক আক্রমণকারীদের থেকে বা ঘটনাক্রমে ভুলভাবে প্রোগ্রাম করা অ্যাপ্লিকেশনগুলির দ্বারা তৈরি হতে পারে। পোর্ট 0 ট্র্যাফিকের প্রতিক্রিয়া হিসাবে হোস্ট যে প্রতিক্রিয়া বার্তাগুলি তৈরি করে আক্রমণকারীদের সেই ডিভাইসগুলির আচরণ এবং সম্ভাব্য নেটওয়ার্ক দুর্বলতাগুলি শিখতে সহায়তা করে৷
অনেক ইন্টারনেট সার্ভিস প্রোভাইডার (ISPs) পোর্ট 0-এ ট্র্যাফিক ব্লক করে, ইনকামিং এবং আউটগোয়িং বার্তা উভয়ই এইসব অপব্যবহার থেকে রক্ষা পেতে।
FAQ
পোর্ট নম্বর কি?
TCP/IP নেটওয়ার্ক সংযোগের জন্য ব্যবহৃত পোর্ট নম্বরগুলি ঠিকানা তথ্য হিসাবে কাজ করে, একটি বার্তার প্রেরক এবং গ্রহণকারীদের সনাক্ত করে। পোর্ট নম্বরগুলি একই নেটওয়ার্কে বিভিন্ন অ্যাপ্লিকেশনকে একই সময়ে সম্পদ ভাগ করতে দেয়৷
আমি কিভাবে পোর্ট নম্বর খুঁজে পাব?
একটি নির্দিষ্ট আইপি ঠিকানার পোর্ট নম্বর খুঁজতে, কমান্ড প্রম্পটে যান, টাইপ করুন netstat -a, তারপর Enter চাপুন। আপনি একটি কোলন দ্বারা পৃথক করা IP ঠিকানা এবং পোর্ট নম্বর সহ সক্রিয় TCP সংযোগগুলির একটি তালিকা দেখতে পাবেন৷
আমি কি পোর্ট 0 এর সাথে সংযোগ করতে পারি?
না। আনুষ্ঠানিকভাবে, পোর্ট 0 বিদ্যমান নেই এবং আপনি এটির সাথে সংযোগ করতে পারবেন না, কারণ এটি একটি অবৈধ পোর্ট নম্বর। যাইহোক, আপনি অন্য পোর্ট নম্বরের মতো পোর্ট 0-এ এবং থেকে একটি ইন্টারনেট প্যাকেট পাঠাতে পারেন।