Що таке порт (комп’ютерний) і навіщо він потрібен?

Оскільки різні комп’ютерні програми можуть використовувати різні процеси та/або служби, для їх розрізнення операційна система ПК на програмному рівні створює своєрідні віртуальні точки для мережевих з’єднань. Ці віртуальні точки і є портами, і вони допомагають зробити мережеві підключення ефективнішими. Оскільки через одне мережеве з’єднання з/на комп’ютер відбувається обмін різними типами даних, з допомогою порту комп’ютер краще розуміє, що робити з цими даними. Порт дозволяє машині легко розрізнити різні типи трафіку: наприклад, електронну пошту, роботу веб-браузера, сервер бази даних, обмін по FTP і тому подібне. Також, з допомогою порта, можна блокувати трафік від певних програм/служб брандмауером.

В цьому плані порт має схожість із концепцією IP адреси: IP-адреса ідентифікує комп’ютер в інтернет-мережі, а з допомогою номеру порту відбувається ідентифікація певної програми в локальній системі. На сьогоднішній день існує більше 65 тисяч номерів портів, які певним чином класифіковані Інтернет-корпорацію з присвоєння імен і номерів або ж Адміністрацією адресного простору Інтернету (IANA — Internet Assigned Numbers Authority).

Формат запису номера порту: {IP-адреса}:{номер порту}. Наприклад, для локального веб-серверу Apache номер порту може мати значення 127.0.0.1:80 або ж localhost:80. Тут 80 — це номер порту, який закріплений не лише за локальним веб-сервером, а й загалом за протоколом HTTP та WWW. Комбінацію IP-адреси та номера порту також називають адресою сокета (Socket Address).

 

Основні типи портів

Усі програмні порти можна поділити на три загальні категорії:

  1. Добре відомий порт (загальний; обмежений). Знаходиться в діапазоні від 0 до 1023, і зарезервований для стандартних сервісів, протоколів та служб (наприклад, HTTP, FTP, DNS, SSH тощо).
  2. Зареєстрований порт. Знаходиться в діапазоні від 1024 до 49151, використовується програмами або службами організацій, які зареєстрували його в IANA. Тут, в основному, представлені порти розробників програмного забезпечення. Якщо вам потрібен порт з цього діапазону — подайте заявку на реєстрацію в IANA.
  3. Динамічний порт (також Ефемерний або Приватний порт). Знаходиться в діапазоні від 49152 до 65535; застосовується для тимчасових або короткочасних з’єднань. Він не зареєстрований і не зарезервований і може використовуватися будь-яким процесом.

 

Приклади популярних номерів портів

Ось деякі із відомих і популярних номерів портів, які найчастіше використовуються сервісами/службами в програмуванні.

Номер порту Порт використовується наступною службою/сервісом
20/21 FTP (File Transfer Protocol). FTP використовується для передачі файлів між клієнтом і сервером.
22 SSH (Secure Shell Access). Один із протоколів тунелювання, який використовується для створення безпечних мережевих з’єднань. Дозволяє вам підключатися до сервера і вносити на ньому зміни.
25 SMTP(Simple Mail Transfer Protocol) зазвичай використовується для електронної пошти.
ДОДАТКОВО: безпечний SMTP з шифруванням по SSL протоколу, використовує порти 465 та 587.
53 DNS (Domain Name System). Система доменних імен зіставляє зрозумілі людині доменні імена з IP-адресами, які більш до вподоби машині.
80 HTTP (Hyper Text Transfer Protocol), World Wide Web HTTP. Локальний сервер. Сервер APACHE, Internet Information Services (IIS) тощо.
ДОДАТКОВО:  порт 8080. Також використовується для веб-серверів
110 POP3 (Post Office Protocol version 3). Протокол визначає сервер електронної пошти та спосіб отримання пошти з нього.
ДОДАТКОВО: POP3 по SSL протоколу використовує порт 995.
143 IMAP (Internet Messaging Access Protocol). Наприклад, використовується для пошти GMAIL.
ДОДАТКОВО: IMAP3 використовує порт 220. IMAP по TLS протоколу використовує порт 993.
443 HTTPS (Hyper Text Transfer Protocol Secure). HTTP-Secure Sockets Layer (SSL). Безпечне HTTP з’єднання.
1433 Microsoft SQL Server. Сервер бази даних Microsoft SQL
3306 MySQL. Сервер бази даних MySQL
5222 XMPP Client (Extensible Messaging and Presence Protocol). Мережевий протокол для швидкого обміну повідомленнями. Порт також використовується месенджерами, типу Telegram, WhatsApp тощо
5432 PostgreSQL. Сервер бази даних PostgreSQL
27017 MongoDB. Сервер бази даних MongoDB

 

Як дізнатися використовувані порти (номери портів) на комп’ютері?

Найперше, — давайте дізнаємося свої IP адреси в системі. Якщо ви використовуєте локальний сервер, значить ваша IP-адреса 127.0.0.1 або ж localhost. Щоб дізнатися свою загальнодоступну IP-адресу маршрутизатора, — скористайтеся нашим безкоштовним онлайн сервісом отримання інформації по IP адресі, — який підкаже вам відповідь на питання «який мій IP?». Роутер (маршрутизатор) для виходу в мережу Інтернет зазвичай має свою IP-адресу: 192.168.0.0 або  192.168.0.1. Тож, у вас може бути принаймні 3 різні IP-адреси: локальна, роутера та загальнодоступна в мережі Інтернет.

Якщо у вас операційна система Windows, ви можете переглянути список всіх наявних IP-адрес через CLI, консоль (термінал, командний рядок). Відкрийте термінал: клік правою кнопки миші по значку Пуск → Термінал. Далі введіть наступну команду та натисніть Enter:

ipconfig

Це покаже вам налаштування IP в системі Windows. В Linux-системах аналогом є команда ifconfig.

Тепер давайте переглянемо доступні номери портів.

Якщо у вас Windows OS:

  • Відкрийте термінал.
  • Введіть команду netstat -a, щоб отримати список усіх номерів портів.

Якщо у вас macOS:

  • Перейдіть до системних налаштувань (System Preferences).
  • Далі перейдіть до Мережа → Додатково (Network → Advanced).
  • Перейдіть на вкладку «Сканування портів» (Port Scan) і введіть IP-адресу, яку хочете перевірити.
  • (в новіших версіях системи macOS сканування портів можливе лише через Spotlight).

 

Сподіваюся, що сьогоднішня інформація стала вам в нагоді. Дякую за увагу!

 

Recent Posts

Сервери VPS для побудови незалежних онлайн-систем

Коли проєкт залежить від чужих обмежень, зростають ризики простоїв, втрати доступу до даних і складнощів…

5 днів ago

Домен і хостинг: у чому різниця та чому вони працюють тільки разом

У тих, хто планує створення сайту вперше, майже завжди виникає питання: що таке домен і…

6 днів ago

Чим CRM для стоматології відрізняється від універсальних систем

Коли власник стоматологічної клініки вперше замислюється про автоматизацію, він нерідко іде найпростішим шляхом: гуглить "CRM…

2 тижні ago

Віддалена розробка з тропіків: Технічний бік, інфраструктура та організація робочого простору

Алоха! Останні кілька років остаточно закріпили тренд на віддалену роботу. Для веб-розробників, DevOps-інженерів та адміністраторів…

3 тижні ago

AI-пошук і SEO: які компанії вже використовують GEO стратегії?

Пошукові системи стрімко змінюються, і те, що працювало вчора, сьогодні може стати неактуальним. Грамотне geo…

3 тижні ago

Хміль, солод, дріжджі та вода: як створюється характер пива

Здається, пиво — простий напій: чотири інгредієнти, зрозуміла технологія. Але ті самі хміль, солод, дріжджі…

3 тижні ago