فهرست محتوا
پورت در شبکههای کامپیوتری به یک شماره مشخص اشاره دارد که برای شناسایی سرویسها و برنامههای در حال اجرا در دستگاهها استفاده میشود. هر پورت به یک برنامه و خدمت خاص اختصاص داده میشود و با استفاده از آن، دستگاهها میتوانند با یکدیگر ارتباط برقرار کنند و اطلاعات را از طریق شبکه منتقل کنند. مثالهایی از پورتها شامل پورت HTTP برای انتقال اطلاعات وب، پورت FTP برای انتقال فایلها و پورت SSH برای اتصال امن به راه دور هستند.
پورت چیست؟
در اصطلاح شبکه، Port نوعی نقطه اتصال الکترونیکی است که از طریق آن دادهها وارد کامپیوتر شما شده و یا از آن خارج میشوند. به صورت تخصصیتر، پورت به نقطه مجازی میگویند که در آن اتصالات یک شبکه شروع و پایان مییابد. پورتها مبتنی بر نرمافزار بوده و توسط سیستمعامل کامپیوتر مدیریت میشوند و هر یک نیز با فرآیند یا سرویس خاصی مرتبط هستند. پورتها این امکان را به کامپیوترها میدهند تا میان انواع ترافیک ورودی و خروجی یک شبکه تفاوت قائل شوند و آنها را دستهبندی کنند. برای نمونه، ایمیلها و صفحات وب حتی اگر از طریق اتصال اینترنتی یکسانی به کامپیوتر شما ارسال شوند، باز هم به سمت پورتمخصوص خود میروند. البته پورت در دنیای کامپیوتر معانی مختلفی دارد. به عنوان مثال، هر Port در شبکه دارای عددی تعریفشده بوده و مرتبط با پروتکلی خاص مانند TCP میباشد. به عنوان مثال پورتهای ۲۰ و ۲۱ مربوط به FTP هستند. از لحاظ سختافزاری نیز، پورت به جک یا سوکتی میگویند که دستگاههای الکترونیکی جانبی به آن متصل میشوند (مانند پورت USB). پورتها بسیار مهم هستند و بدون وجود آنها عملا استفاده از اینترنت ممکن نیست. شاید تا حدی درک مفهوم و کارکرد پورتها برای افراد مبتدی دشوار باشد و این موضوع کاملا طبیعی است. ما در این مقاله قصد داریم تا در رابطه با مفهوم و شماره Port و پروتکلهای مرتبط با پورتها صحبت و شما را با مهمترین پورتهای شبکه آشنا کنیم. پس تا انتهای مقاله با ما همراه بمانید.
شماره پورت (Port Number) چیست؟
پورتها در تمام دستگاههای متصل به شبکه دارای یک عدد اختصاصی هستند. به عنوان مثال همه درخواستهای آدرس IP چیست. آدرسهای IP در واقع این امکان را به درخواستهای اینترنتی میدهند تا تنها میان دستگاههای مشخصی رد و بدل شوند اما درخواستها با کمک شماره پورت میتوانند با سرویسها یا برنامههای خاصی درون یک دستگاه ارتباط برقرار کنند. میتوان IP را به ساختمان یک شرکت تشبیه کرد که شما قصد ارتباط با آن را دارید. اگر بخواهید با شخص خاصی در این شرکت تماس بگیرید، داخلی تلفن او را وارد میکنید. شماره داخلی همان پورت است. پورتها در شبکه دارای عددی میان ۰ تا ۶۵۵۳۵ بوده و سازمانی به نام IANA نیز مسئولیت نگهداری از آنها و پروتکلهای مرتبط با شبکه را بر عهده دارد. هر پورتی معمولا از یکی از دو پروتکل UDP و TCP و یا هر دوی آنها استفاده میکند. به عنوان مثال پورت شماره ۳۳۰۶ (پورت MySQL) از دو پروتکل TCP و UDP استفاده میکند. پروتکلهای UDP و TCP به لایه چهارم مدل OSI مرتبط هستند. روزانه میلیاردها دستگاه از طریق اینترنت با یکدیگر ارتباط برقرار میکنند و به لطف شمارهگذاری پورتها، میتوانیم به صورت همزمان از خدمات و پروتکلهای مختلفی (HTTP، FTP، SMTP، …) بهرهمند شویم. اگر پورتها شمارهگذاری نمیشدند، در این صورت درخواستهایی که به صورت همزمان با دستگاه متصل به اینترنت شما اتصال برقرار میکردند، به مقصدی اشتباه میرفتند، به عنوان مثال درخواست FTP به اشتباه با پورت مربوط به HTTP ارتباط برقرار میکرد.
به Port شماره ۸۰ میروند. شاید شما از خودتان بپرسید فرق میان Port ومهمترین پورتهای شبکه کدامند؟
شماره پورت | نوع پروتکل | نام سرویس | توضیحات |
۷ | 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 به کامپیوتر دیگری ارسال کند. اما آیا کامپیوتر مقصد میتواند بفهمد که دادههای دریافتی را باید به کدام برنامه منتقل کند؟ جواب منفی است و کامپیوترها برای دانستن آن نیاز به شماره پورت دارند. فرض کنید شما عکسی را از طریق 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) تایپ کنید.
۲. سپس رابط کاربری مبتنی بر خط فرمان «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
سلام ممنون عالی بود و مختصر
سلام حسن عزیز
خوشحالیم که محتوای مقاله برای شما بوده است.
ممنون خوب بود
سلام شهرزاد گرامی
خوشحالیم که محتوای مقاله برای شما مفید واقع شده است.