AWS EC2 Public IP vs Private IP vs Elastic IP
AWS EC2 Public IP vs Private IP vs Elastic IP
في هذا الجزء سنتعلم الفرق بين Public IP و Private IP و Elastic IP داخل خدمة Amazon Web Services EC2، وكيفية التعامل معها عمليًا.
المصدر:
أولًا: لماذا يعمل Public IP ولا يعمل Private IP؟
عند إنشاء EC2 Instance نجد أن لديها:
- Public IPv4 (عنوان عام)
- Private IPv4 (عنوان خاص)
يمكننا الاتصال بالسيرفر عبر SSH باستخدام الـ Public IP لأنه متصل بالإنترنت.
أما إذا حاولنا استخدام الـ Private IP مباشرة من جهازنا الشخصي فلن ينجح الاتصال.
السبب
الـ Private IP موجود داخل شبكة AWS الداخلية فقط.
جهازك الشخصي ليس جزءًا من هذه الشبكة الخاصة، لذلك لا يستطيع الوصول إليه مباشرة.
قاعدة مهمة
✅ Public IP → يمكن الوصول إليه من الإنترنت.
❌ Private IP → يمكن الوصول إليه فقط من داخل شبكة AWS أو عبر VPN/Direct Connect.
ثانيًا: ماذا يحدث عند إيقاف وتشغيل EC2؟
هناك فرق بين:
- Reboot (إعادة تشغيل)
- Stop ثم Start (إيقاف ثم تشغيل)
Reboot
- لا يتغير Public IP غالبًا.
- لا يتغير Private IP.
Stop ثم Start
عند إيقاف المثيل ثم تشغيله مرة أخرى:
- يتغير Public IPv4
- يبقى Private IPv4 كما هو
مثال
قبل الإيقاف:
Public IP = 54.x.x.x
Private IP = 172.31.x.x
بعد التشغيل:
Public IP = 3.x.x.x
Private IP = 172.31.x.x
نلاحظ أن:
- Public IP تغير.
- Private IP ثابت.
المشكلة
إذا كنت تستخدم Public IP للاتصال بالسيرفر:
ssh [email protected]
ثم قمت بإيقاف وتشغيل السيرفر،
سيصبح عنوان الـ Public IP مختلفًا، وبالتالي سيتوقف الأمر السابق عن العمل.
الحل: Elastic IP
تقدم AWS خدمة تسمى:
Elastic IP (EIP)
وهي عنوان IPv4 عام ثابت (Static Public IP).
يمكن ربطه بمثيل EC2 وسيظل ثابتًا حتى لو:
- أوقفت المثيل.
- شغلته مرة أخرى.
خطوات استخدام Elastic IP
1. تخصيص Elastic IP
من:
EC2 → Elastic IP Addresses
ثم:
Allocate Elastic IP Address
2. ربطه بالمثيل
Actions
→ Associate Elastic IP Address
ثم اختيار:
- Instance
- EC2 المطلوب
3. النتيجة
يصبح:
Public IPv4 = Elastic IP
وبالتالي سيظل نفس العنوان دائمًا.
فائدة Elastic IP
بدلًا من أن يتغير عنوان السيرفر كل مرة:
54.x.x.x
ثم
3.x.x.x
ثم
18.x.x.x
يصبح لديك:
44.x.x.x
ويبقى ثابتًا طوال فترة استخدامك له.
اختبار عملي
بعد ربط Elastic IP:
ssh ec2-user@Elastic-IP
إذا:
- أوقفت المثيل.
- أعدت تشغيله.
سيظل نفس الأمر يعمل لأن عنوان الـ IP لم يتغير.
ملاحظات مهمة عن التكلفة
AWS تفرض رسومًا على عناوين IPv4 العامة (Public IPv4) بما في ذلك Elastic IP.
لذلك:
- احذف المثيلات غير المستخدمة.
- حرر (Release) أي Elastic IP غير مستخدم.
- لا تترك موارد غير ضرورية تعمل.
إزالة Elastic IP
إذا انتهيت من استخدامه:
أولًا
Disassociate Elastic IP
لفصل العنوان عن المثيل.
ثانيًا
Release Elastic IP
لحذفه نهائيًا وتجنب الرسوم.
ملخص سريع
| النوع | ثابت؟ | يمكن الوصول إليه من الإنترنت؟ |
|---|---|---|
| Private IP | ✅ غالبًا ثابت | ❌ لا |
| Public IP | ❌ يتغير بعد Stop/Start | ✅ نعم |
| Elastic IP | ✅ ثابت | ✅ نعم |
احفظ القاعدة
- Private IP → اتصال داخلي داخل AWS.
- Public IP → اتصال من الإنترنت لكنه قد يتغير.
- Elastic IP → Public IP ثابت لا يتغير بعد Stop/Start. 🚀
