কোন সকেটে কোন প্রক্রিয়াটি শুনছে তা জানতে চাইলে আমি নেটস্যাট / টিসিপিভিউ ব্যবহার করতে পারি এবং তা অবিলম্বে এটি দেখতে পাব। তবে কোনও কথা না শুনেই বাঁধাই সম্ভব। এটি সম্পন্ন হলে এটি নেটস্যাট / টিসিপিভিউতে প্রদর্শিত হবে না, তবে সকেটটি ব্লক করে।
পাইথনের উদাহরণ:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('0.0.0.0',12345))
পোর্টটি এখন আবদ্ধ, এবং দ্বিতীয়টি একই কোডটি কার্যকর করার চেষ্টা করা হচ্ছে যখন প্রথমটি এখনও চলছে তখন একটি ত্রুটির ফলস্বরূপ। যাইহোক, যদি না আপনি ব্যবহার করে সেই বন্দরে শুনতে শুরু করেন
s.listen(1)
পোর্টটি নেটস্যাট / টিসিপিভিউতে প্রদর্শিত হবে না।
প্রশ্নটি হ'ল: কী পোর্টগুলি আবদ্ধ (তবে শুনছে না), এবং কোন প্রক্রিয়া তাদের বাধ্য করছে?
এই পটভূমিতে যে আমি হয় আছে একটি ছিল 1976 পোর্ট যে আবদ্ধ করা যাবে না চলমান পরিসর , আর আমি জানি এই কি কারণ চাই। এরই মধ্যে, আমি পরীক্ষার মাধ্যমে এবং ত্রুটির মধ্য দিয়ে স্থির করেছিলাম যে ইন্টারনেট সংযোগ ভাগ করে নেওয়া those পোর্টগুলিকে অবরুদ্ধ করছে, তবে আমি এখনও এই প্রশ্নের উত্তর সম্পর্কে আগ্রহী।
সম্পাদনা: জনপ্রিয় অনুরোধের কারণে, এই পোর্টগুলি সন্ধান করার জন্য আমি এখানে কোডটি ব্যবহার করেছি:
import time
import socket
for i in range(0,65536):
try:
print "Listening on port", i, '...',
serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serversocket.bind(('0.0.0.0', i))
serversocket.listen(5)
#time.sleep(0.1)
serversocket.close()
print "ok"
except:
print "FAIL"
(আপনি আউটপুটটি গ্রেপ করতে পাইপ করতে এবং কেবল ব্যর্থতার জন্য ফিল্টার করতে চাইতে পারেন)