پورت (Port)

مقدمه:

پورت (Port) یکی از مفاهیم پایه و کلیدی در دنیای شبکه و ارتباطات اینترنتی است که نقش مهمی در برقراری ارتباط بین دستگاه‌ها و برنامه‌های مختلف ایفا می‌کند. زمانی که یک دستگاه به شبکه متصل می‌شود، تنها داشتن آدرس IP کافی نیست؛ بلکه پورت‌ها به‌عنوان درگاه‌های مجازی، امکان شناسایی دقیق سرویس‌ها و برنامه‌هایی را که روی آن دستگاه فعال هستند، فراهم می‌کنند. از ارسال ایمیل گرفته تا مشاهده یک صفحه وب، همه این فعالیت‌ها از طریق پورت‌های مشخصی انجام می‌شوند.
در این مقاله، به زبان ساده بررسی خواهیم کرد که پورت چیست، چه کاربردی در شبکه دارد، انواع آن کدام‌اند و چگونه در امنیت و عملکرد سیستم‌ها نقش دارد.

پورت (Port) چیست؟

در اصطلاح شبکه، پورت (Port) نوعی نقطه اتصال الکترونیکی است که از طریق آن داده‌ها وارد کامپیوتر شما شده و یا از آن خارج می‌شوند. به صورت تخصصی‌تر، پورت به نقطه مجازی می‌گویند که در آن اتصالات یک شبکه شروع و پایان می‌یابد. پورت‌ها مبتنی بر نرم‌افزار بوده و توسط سیستم‌عامل کامپیوتر مدیریت می‌شوند و هر یک نیز با فرآیند یا سرویس خاصی مرتبط هستند. پورت (Port) این امکان را به کامپیوترها می‌دهند تا میان انواع ترافیک ورودی و خروجی یک شبکه تفاوت قائل شوند و آن‌ها را دسته‌بندی کنند. برای نمونه، ایمیل‌ها و صفحات وب حتی اگر از طریق اتصال اینترنتی یکسانی به کامپیوتر شما ارسال شوند، باز هم به سمت پورت‌مخصوص خود می‌روند. البته پورت در دنیای کامپیوتر معانی مختلفی دارد. به عنوان مثال، هر پورت (Port) در شبکه دارای عددی تعریف‌شده بوده و مرتبط با پروتکلی خاص مانند TCP می‌باشد. به عنوان مثال پورت (Port) ۲۰ و ۲۱ مربوط به FTP هستند. از لحاظ سخت‌افزاری نیز، پورت به جک یا سوکتی می‌گویند که دستگاه‌های الکترونیکی جانبی به آن متصل می‌شوند (مانند پورت USB). پورت‌ها بسیار مهم هستند و بدون وجود آنها عملا استفاده از اینترنت ممکن نیست. شاید تا حدی درک مفهوم و کارکرد پورت (Port) برای افراد مبتدی دشوار باشد و این موضوع کاملا طبیعی است. ما در این مقاله قصد داریم تا در رابطه با مفهوم و شماره Port و پروتکل‌های مرتبط با پورت‌ها صحبت و شما را با مهم‌ترین پورت‌های شبکه آشنا کنیم. پس تا انتهای مقاله با ما همراه بمانید.

شماره پورت (Port Number) چیست؟

شماره پورت

 

پورت‌ها در تمام دستگاه‌های متصل به شبکه دارای یک عدد اختصاصی هستند. به عنوان مثال همه درخواست‌های HTTP به Port شماره ۸۰ می‌روند. شاید شما از خودتان بپرسید فرق میان پورت (Port) و آدرس IP چیست. آدرس‌های IP در واقع این امکان را به درخواست‌های اینترنتی می‌دهند تا تنها میان دستگاه‌های مشخصی رد و بدل شوند اما درخواست‌ها با کمک شماره پورت می‌توانند با سرویس‌ها یا برنامه‌های خاصی درون یک دستگاه‌ ارتباط برقرار کنند. می‌توان IP را به ساختمان یک شرکت تشبیه کرد که شما قصد ارتباط با آن را دارید. اگر بخواهید با شخص خاصی در این شرکت تماس بگیرید، داخلی تلفن او را وارد می‌کنید. شماره داخلی همان پورت است. پورت‌ها‌ در شبکه دارای عددی میان ۰ تا ۶۵۵۳۵ بوده و سازمانی به نام IANA نیز مسئولیت نگهداری از آنها و پروتکل‌های مرتبط با شبکه را بر عهده دارد. هر پورتی معمولا از یکی از دو پروتکل UDP و TCP و یا هر دوی آنها استفاده می‌کند. به عنوان مثال پورت شماره ۳۳۰۶ (پورت MySQL) از دو پروتکل TCP و UDP استفاده می‌کند. پروتکل‌های UDP و TCP به لایه چهارم مدل OSI مرتبط هستند. روزانه میلیاردها دستگاه از طریق اینترنت با یکدیگر ارتباط برقرار می‌کنند و به لطف شماره‌گذاری پورت‌ها، می‌توانیم به صورت همزمان از خدمات و پروتکل‌های مختلفی (HTTP، FTP، SMTP، …) بهره‌مند شویم. اگر پورت‌ها شماره‌گذاری نمی‌شدند، در این صورت درخواست‌هایی که به صورت همزمان با دستگاه متصل به اینترنت شما اتصال برقرار می‌کردند، به مقصدی اشتباه می‌رفتند، به عنوان مثال درخواست FTP به اشتباه با پورت مربوط به HTTP ارتباط برقرار می‌کرد.

مهم‌ترین پورت‌‌های شبکه کدامند؟

شماره پورت نوع پروتکل نام سرویس توضیحات
۷ TCP Echo Echo
۲۰ TCP, UDP, SCTP FTP-data File Transfer
۲۱ TCP, UDP, SCTP FTP File Transfer Protocol
۲۲ TCP, UDP, SCTP SSH  Secure Shell
۲۳ TCP, UDP Telnet Telnet service
۲۵ TCP, UDP SMTP Simple Mail Transfer
۳۷ TCP, UDP Time Machine-readable time protocol
۴۲ TCP, UDP Name Host Name Server
۴۳ TCP, UDP Nicname WHOIS directory service
۵۳ TCP, UDP Domain Domain Name Server
۶۷ TCP, UDP bootps Bootstrap Protocol Server
۶۹ TCP, UDP TFTP Trivial file transfer protocol
۷۹ TCP, UDP Finger Finger
۸۰ TCP, UDP, SCTP HTTP Hypertext Transfer Protocol 
۱۰۱ TCP, UDP Hostname NIC Host Name Server
۱۱۰ TCP, UDP Pop3 Post Office Protocol – Version 3
۱۱۵ TCP, UDP SFTP Simple File Transfer Protocol
۱۱۹ TCP, UDP NNTP Network News Transfer Protocol
۱۲۳ TCP, UDP NTP Network Time Protocol
۱۴۳ TCP, UDP IMAP Internet Message Access Protocol
۱۶۱ TCP, UDP SNMP Simple network management protocol
۱۷۹ TCP, UDP, SCTP BGP Border Gateway Protocol
۱۹۴ TCP, UDP IRC Internet Relay Chat Protocol
۳۴۹ TCP, UDP MFTP  Managed File Transfer Protocol 
۴۴۳ TCP, UDP, SCTP HTTPS Hypertext Transfer Protocol Secure
۴۴۴ TCP, UDP SNPP Simple Network Paging Protocol
۵۰۰ TCP, UDP Isakmp Internet Security Association and Key Management Protocol
۵۸۷ TCP, UDP MSA Message submission agent
۹۹۰ TCP, UDP FTPS (File Transfer Protocol over SSL/TLS) 
۹۹۵ TCP, UDP Pop3s POP3 over SSL/TLS
۱۰۸۰ TCP, UDP Socks SOCKS proxy
۱۱۹۴ TCP, UDP OpenVPN OpenVPN
۲۰۴۹ TCP, UDP NFS Network file system
۳۳۰۶ TCP, UDP MySQL MySQL database service
۵۴۳۲ TCP, UDP postgresql PostgreSQL Database
۲۷۰۱۷ TCP, UDP MongoDB Mongo database system

برای مشاهده سایر شماره پورت‌ها به وب‌سایت IANA مراجعه کنید.

پورت‌ها چگونه باعث بهبود عملکرد شبکه می‌شوند؟

داده‌های مختلفی از طریق اتصالات شبکه ردوبدل می‌شوند و ممکن است با خودتان فکر کنید که یک کامپیوتر می‌تواند آنها را تنها از طریق آدرس IP به کامپیوتر دیگری ارسال کند. اما آیا کامپیوتر مقصد می‌تواند بفهمد که داده‌های دریافتی را باید به کدام برنامه منتقل کند؟ جواب منفی است و کامپیوترها برای دانستن آن نیاز به شماره پورت (Port) دارند. فرض کنید شما عکسی را از طریق FTP به کامپیوتر دوست خود ارسال می‌کنید. اگر کامپیوتر دوست شما فایل عکس را به برنامه ایمیل (Email Application) خود منتقل کند، برنامه ایمیلی قطعا قادر به خواندن و تفسیر کردن آن نخواهد بود. اما در واقعیت چنین اتفاقی نخواهد افتاد، زیرا برای FTP پورت شماره ۲۱ تعریف شده و کامپیوتر دوست شما با وجود آن می‌تواند عکس ارسالی شما را به درستی دریافت و در جای مناسب خود ذخیره کند. بنابراین کامپیوترها همیشه برای انتقال داده‌ها نیاز به آدرس IP و شماره Port دارند.

TCP چیست؟

پروتکل کنترل انتقال یا TCP (مخفف Transmission Control Protocol)، استانداردی است که توسط سازمان IETF (کارگروه مهندسی اینترنت) تدوین شده و نحوه برقراری و حفظ مکالمات یک شبکه‌ که برنامه‌ها از طریق آن با یکدیگر تبادل اطلاعات می‌کنند را تعریف می‌کند. TCP یکی از مهم‌ترین پروتکل‌های شبکه‌ بوده و با هدف ارسال بسته‌های داده در اینترنت و اطمینان از تحویل موفقیت‌آمیز آنها طراحی شده است. TCP یکی از پروتکل‌های لایه انتقال می‌باشد و با پروتکل اینترنت (IP) که نحوه ارسال بسته‌های داده توسط کامپیوترها به یکدیگر را تعریف می‌کند، کار می‌کند. پروتکل‌های انتقال داده‌مانند FTP، SSH، Telnet و SMTP برای انجام وظایف خود از TCP استفاده می‌کنند.

UDP چیست؟

پروتکل UDP (مخفف User Datagram Protocol) نوعی پروتکل ارتباطی استاندارد است که به منظور افزایش سرعت انتقال داده‌ها و انجام فرایندهایی که باید در زمان اندکی انجام شوند (مانند بررسی درخواست‌های مرتبط با DNS)، طراحی شده است. UDP با اینکه سرعت را بسیار افزایش می‌دهد اما گاهی اوقات همین سرعت زیاد می‌تواند باعث گم شدن بسته‌های داده شود. نحوه عملکرد UDP بسیار ساده است و بدون هیچ بررسی فوراً داده‌ها را به سمت مقصد مورد نظر ارسال می‌کند. پروتکل UDP نیز مانند TCP یکی از پروتکل‌های لایه انتقال می‌باشد اما بر خلاف آن قبل از انتقال داده‌ها هیچ گونه ارتباطی با کامپیوتر مقصد برقرار نمی‌کند. ما برای انجام کارهایی مانند بازی‌های کامپیوتری آنلاین، برقراری ارتباطات صوتی یا تصویری و کنفرانس‌های زنده و هر نوع فعالیت دیگری که سرعت در آن حرف اول را می‌زند، نیاز به UDP داریم.

SCTP چیست؟

SCTP یا پروتکل انتقال کنترل جریان (مخفف Stream Control Transmission Protocol) نوعی پروتکل اتصال‌گرا (Connection-Oriented) در شبکه می‌باشد که با استفاده از آن می‌توان میان دو کامپیوتر یک ارتباط دوطرفه کامل را فراهم کرد و گاهی‌اوقات نیز از آن به عنوان نسل بعدی فناوری TCP نیز نام برده می‌شود. پروتکل SCTP نیز توسط کارگروه مهندسی اینترنت توسعه یافته و مانند UDP و TCP یکی از پروتکل‌های لایه انتقال است. SCTP پروتکلی جدید می‌باشد و می‌توان آن را ترکیبی از UDP و TCP در نظر گرفت. SCTP پروتکلی قابل اعتماد بوده و قادر به شناسایی داده‌های گم شده، تکراری و سازماندهی نشده است. SCTP در مجموع انتقال مطمئن و منظم بسته‌های داده را تضمین می‌کند.

مقایسه TCP ،UDP و SCTP

ویژگی TCP UDP SCTP
نوع اتصال اتصال‌گرا بدون اتصال اتصال‌گرا
نوع انتقال بایت‌گرا پیام‌گرا پیام‌گرا
نحوه تحویل داده بسیار نظام‌مند بدون نظم تقریبا نظام‌مند
قابلیت تحمل خطا ندارد ندارد دارد
قابلیت اطمینان بالا پایین بالا

چرا فایروال‌ها برخی پورت ها را مسدود می‌کنند؟

فایروال سیستم امنیتی است که بر اساس مجموعه‌ای از قوانین امنیتی ترافیک شبکه را مسدود و یا به آن اجازه عبور می‌دهد. فایروال‌ها، شبکه‌ها را به دو دسته قابل اعتماد و غیرقابل اعتماد دسته‌بندی می‌کنند و معمولاً شبکه اینترنت را به عنوان شبکه‌ای غیر‌قابل‌اعتماد در نظر می‌گیرند زیرا هکرها به امید پیدا کردن پورت‌های باز، حجم زیادی از درخواست‌های مخرب را از طریق شبکه اینترنت به پورت‌های تصادفی ارسال می‌کنند. این درست مانند دزدی است که در خیابان راه می‌رود و تک تک درهای ماشین‌های پارک شده را امتحان می‌کند، به این امید که قفل یکی از آنها باز باشد. به همین دلیل است که باید فایروال خود‌را به گونه‌ای پیکربندی کنید که ترافیک هدایت شده به اکثر پورت‌های موجود را مسدود کند. در مجموع توصیه می‌شود، تنها یکسری Portهای ضروری مانند پورت‌های ۵۸۷ (SMTP) و ۸۰ (HTTP) و ۴۴۳ مربوط به HTTPS و چند مورد دیگر را باز بگذارید.

چگونه شماره پورت‌های باز و بسته سیستم عامل خودم را پیدا کنم؟

در سیستم عامل ویندوز

۱. عبارت «cmd» را در جعبه جستجوی ویندوز (Search Box) تایپ کنید.

پورت (Port) چیست؟ نحوه عملکرد پورت‌ها و انواع آن

۲. سپس رابط کاربری مبتنی بر خط فرمان «Command Prompt» را باز کنید.

۳. یک پنجره برای شما باز می‌شود. برای مشاهده Portهای باز سیستم خود دستور «netstat -a” را وارد و دکمه Enter را بزنید.

netstat -a

در macOS

۱. ترمینال را باز کنید.

ترمینال مک

۲. حال برای مشاهده‌ها پورت‌های باز سیستم، در پنجره باز شده دستور زیر را تایپ کنید و دکمه Enter را بزنید.

sudo lsof -i -P

سوالات متداول

پورت فورواردینگ (Port Forwarding) چیست؟

پورت فورواردینگ قابلیتی است که به کامپیوترها و خدمات موجود در یک شبکه خصوصی (Private Network) اجازه می‌دهد تا از طریق اینترنت با کامپیوتر‌های و یا سرویس‌های عمومی یا خصوصی سایر شبکه‌ها ارتباط برقرار کند. انجام این‌کار از طریق ایجاد ارتباطی به نام map میان آدرس IP ‌عمومی WAN و آدرس IP خصوصی شبکه محلی (LAN) روتر، در دستگاهی در شبکه خصوصی انجام می‌شود. پورت فورواردینگ کاربردهای متعددی دارد و می‌توان از آن برای نصب دوربین‌های امنیتی، انجام بازی‌های آنلاین، ارتباط از راه دور و بسیاری از موارد دیگر استفاده کرد.

اسکن پورت (Port Scan) چیست؟

اسکن پورت روشی است که با استفاده از آن می‌توان تعیین کرد که کدام پورت‌های یک IP در شبکه باز و یا بسته هستند. اسکن پورت به شناسایی آسیب‌پذیری‌های مرتبط با پورت‌های یک سیستم کمک بسیاری می‌کند. البته هکرها هم می‌توانند از این روش برای پیدا کردن Portهای باز یک کامپیوتر و ارسال ترافیک مخرب به آن استفاده کنند.

 

منابع: Cloudflare و Scaler

4 دیدگاه. Leave new

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Fill out this field
Fill out this field
لطفاً یک نشانی ایمیل معتبر بنویسید.
You need to agree with the terms to proceed

خرید سرور مجازی

🔥 پربازدیدترین مطالب

دسته‌بندی

جدید‌ترین‌ها

window.addEventListener("load", (event) => { let post_tag = document.getElementById("post_tag"); if (post_tag == null) { let post_tag_box = document.getElementById("post_tag_box"); if (post_tag_box != null) { post_tag_box.remove(); } else { console.warn("Element with ID 'post_tag_box' not found."); } } });