المنافذ (Ports):
إنت دلوقتي عرفت إن:
- جهازك بيبعت Request
- السيرفر بيرد Response
بس في سؤال مهم جدًا:
السيرفر يعرف إزاي الطلب ده رايح لأنهي برنامج؟
السيرفر مش بيشغل خدمة واحدة بس، ممكن يكون عليه:
- موقع ويب
- API
- SSH
- Mail Server
وهنا بييجي دور Ports.
يعني إيه Port؟
الـ Port هو رقم بيمثل باب منطقي على الجهاز.
📌
- الـ IP Address بيحدد الجهاز
- الـ Port بيحدد الخدمة اللي جوه الجهاز
مثال:
142.250.187.164:443
142.250.187.164→ السيرفر443→ خدمة HTTPS
فـ من غير الـ Ports:
السيرفر هيستقبل الطلب… بس مش هيعرف يوديه لمين جوه!
أنواع الـ Ports
الـ Ports أرقام من 0 لحد 65535
ومتقسمين 3 أنواع رئيسية:
1️⃣ Well-Known Ports (من 0 إلى 1023)
دي منافذ محجوزة لخدمات معروفة عالميًا.
| Port | Service | |
|---|---|---|
| 80 | HTTP | المواقع بدون حماية |
| 443 | HTTPS | للمواقع المشفرة |
| 21 | FTP | لنقل الملفات |
| 22 | SSH | للدخول الامن ع السيرفرات |
| 25 | SMTP | ارسال الايميلات |
| 53 | DNS | ترجمة اسماء الـ Domains |
2️⃣ Registered Ports (من 1024 إلى 49151)
منافذ مسجلة لتطبيقات أو Services معينة، بس مش أساسية زي اللي فوق.
أمثلة:
- 3306 → MySQL
- 5432 → PostgreSQL
- 8080 → HTTP Alternative
- Port 27017: MongoDB
📌 غالبًا بتستخدم في:
- Web Apps
- Databases
- Internal Services
3️⃣ Ephemeral Ports (من 49152 إلى 65535)
ودي أهم واحدة بتتلخبط 👇
يعني إيه Ephemeral؟
= مؤقتة
دي Ports:
- النظام بيختارها تلقائي
- بتستخدمها كـ Client
- بتتقفل أول ما الاتصال يخلص
مثال حقيقي:
Client: 192.168.1.5:54321
Server: 142.250.x.x:443
- 54321 → Ephemeral Port
- 443 → Well-Known Port –> HTTPS
📌
أنت عمرك ما بتحدد Ephemeral Port بإيدك.
الاتصال الكامل بيكون كالاتي
الاتصال بيتعرف بـ 5 حاجات اسمهم 5-Tuple:
(Source IP, Source Port,
Destination IP, Destination Port,
Protocol)
مثال:
192.168.1.5 : 54321 → 142.250.x.x : 443 (TCP)
وده اللي بيميز اتصال عن اتصال.
يعنى دي المنافذ اللي جهازك بيستخدمها مؤقتاً لما بيبعت طلب لسيرفر.
مثال توضيحي:
يعني لو بتفتح موقع https://facebook.com:
- DNS: جهازك بيسأل DNS عن IP الفيسبوك → يرد مثلاً 157.240.22.35
- اختيار المنفذ المؤقت: نظام التشغيل بيختار منفذ عشوائي ليك مثلاً 51204
- بناء الطلب:
Source: 192.168.1.10:51204 #جهازك
Destination: 157.240.22.35:443 #سيرفر فيسبوك
Protocol: TCP
- الرد:
Source: 157.240.22.35:443
Destination: 192.168.1.10:51204
- بعد ما تقفل التاب، المنفذ 51204 بيتقفل ويرجع متاح للاستخدام تاني
الخلاصة
- الـ Port هو اللي بيحدد الخدمة
- Well-Known → خدمات أساسية
- Registered → تطبيقات
- Ephemeral → Ports مؤقتة للـ Client
- أي اتصال بيتحدد بـ IP + Port + Protocol