الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مفهوم عناوين IP ... بحث مفصّل .

مغلق
بدأه محمد قطان في 25 أكتوبر 2002 · 19 رد · 8,406 مشاهدة · في منتدى الشبكات العام
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ...

تكلمنا في المنتدى كثيرا حول بروتوكول TCP/IP وذلك في عدة مواضيع نشرها الأخ عبد الحفيظ ...

والآن سوف نشرح مفهوم عناوين الـ IP

هذا عبارة عن جزء من بحث كتبته لإحدى المجلات العربية وسوف نكمل بقية الكلام عن TCP/IP في مواضيع قادمة ان شاء الله ..

تمهيد

كل محطة TCP/IP يجب أن تحمل رقماً منطقياً يعرف باسم عنوان IP.كما يجب أيضاً أن تكون عناوين IP وحيدة لكل محطة أو شبكة مستخدمة لبروتوكول TCP/IP من أجل الاتصال.

يُعرِّف عنوان IP مكان توضع المحطة ضمن الشبكة بنفس الطريقة التي يتم التعريف بها عن عنوان منزل داخل مدينة ما باستخدام اسم الشارع. لتحقيق ذلك، يجب أن تمتلك كل محطة من محطات الكرة الأرضية عنواناً وحيداً وذو بنية متماثلة.

يسمح عنوان IP بالدلالة على رقم الشبكة Network ID ورقم المحطة داخل الشبكة Host ID. يدل رقم الشبكة على النظام المتوضع على نفس الشبكة الفيزيائية. يجب على جميع المحطات المتوضعة على شبكة فيزيائية واحدة أن تمتلك نفس رقم الشبكة. كما يجب أن يكون رقم الشبكة وحيداً بين أرقام بقية الشبكات.

أما رقم المحطة Host ID فيعرِّف محطة عمل أو مخدم أو مسير Router أو أي جهاز يستخدم بروتوكولات TCP/IP. يجب أن يكون عنوان كل محطة وحيداً بالنسبة للشبكة.

1.jpg

رقم الشبكة ورقم المحطة

يحوي عنوان IP على 32 بت ويتألف من أربعة حقول ذات ثمانية بتات مفصولة بوساطة نقاط. تمثل كل ثمانية رقماً عشرياً محصوراً بين0-255 ، تدعى هذه البنية بالتمثيل العشري المنقط dotted decimal notation. يمثل العنوان التالي مثالاً على هذا التمثيل:

2.jpg

صفوف العناوين Address Classes

3.jpg

عرفت جماعة الإنترنت خمسة صفوف للعنونة لتلائم أحجام مختلفة للشبكات. يحدد كل صف البتات المستخدمة لعنونة الشبكة والبتات المستخدمة لعنونة المحطات. لذلك يحدد كل صف عدد الشبكات الممكن عنونتها كما يحدد أيضاً عدد المحطات القابلة للعنونة ضمن كل شبكة.

يبين الجدول التالي المعرفات المستخدمة للشبكة وللمحطات ضمن صفوف A, B, and C:

الصف A

تُنسب عناوين الصف A إلى الشبكات التي تحتوي على أعداداً كبيرة من المحطات. يكون البت ذو الترتيب الأعلى من عنوان ما يتبع إلى الصف A مساوياً إلى الصفر. كما تستخدم السبعة بتات التالية من أول بايت كمعرف للشبكة Network ID. أما البتات الباقية (24 بت) فتستخدم لعنونة المحطات داخل الشبكة. هذا يسمح بعنونة 126 شبكة (من 1 إلى 126) وحوالي 17 مليون محطة ضمن كل شبكة.

الصف B

تُنسب عناوين الصف B إلى الشبكات متوسطة الحجم. تُقسم البتات كما يلي:

1- البتان ذو الترتيب الأعلى يأخذان القيمة 10 لتحيد نوع الصف

2- تستخدم الأربعة عشرة بت التالية كمعرف للشبكة

3- تستخدم الستة عشرة بت الأخيرة لعنونة المحطات ضمن كل شبكة

هذا يسمح بعنونة 16.384 شبكة و 65.534 محطة ضمن كل شبكة.

الصف C

تُنسب عناوين الصف C إلى الشبكات المحلية الصغيرة LANs. وتوزع البتات كما يلي:

1- تأخذ البتات الثلاث الأول القيمة 110

2- تستخدم البتات الإحدى والعشرين التالية كمعرف للشبكة

3- تستخدم البتات الثمانية الباقية لعنونة المحطات ضمن كل شبكة

هذا يسمح بعنونة 2 مليون شبكة تقريباً و254 محطة ضمن كل شبكة.

الصف D

تستخدم عناوين الصف D للمجموعات متعددة النقاط. يمكن للمجموعة متعددة النقاط أن تحوي على محطة أو أكثر أو حتى أن تكون فارغة. توزع البتات كما يلي:

1- تأخذ البتات الأربعة الأول القيمة 1110

2- تستخدم الأربعة والعشرين بت الباقية لعنونة المجموعات والتي يمكن للمستخدم الانضمام إليها. لا توجد بتات خاصة بالشبكة أو بالمحطة ضمن هذا الصف من العناوين. تمرر الطرود إلى مجموعة جزئية من المحطات ضمن كل شبكة. فقط المحطات المسجلة ضمن مجموعة متعددة النقاط تستقبل الطرد.

الصف E

تستخدم عناوين الصف E كعناوين تجريبية غير متوافرة للاستخدام العام. كما أنها محجوزة لاستخدامات مستقبلية. تبدأ هذه العناوين بالقيمة 1111.

ملخص عن صفوف العناوين

5.jpg

نلاحظ أن المجموع العام للمحطات القابلة للعنونة ضمن كافة الصفوف السابقة تصل إلى 3.720.314.628 محطة.

إرشادات حول العنونة

7.jpg

يجب الانتباه إلى الإرشادات التالية عند نسب معرفات الشبكات والمحطات:

1- لا يمكن لرقم الشبكة أن يأخذ القيمة 127 - تحجز هذه القيمة إلى وظيفة الفحص الذاتي لبطاقة الشبكة loopback

2- لا يمكن لمعرفات الشبكة والمحطة أن تأخذ جميعاً القيمة - تحجز هذه القيمة كتعميم broadcast على الشبكة المحلية

3- لا يمكن لمعرفات الشبكة والمحطات أن تأخذ جميعاً القيمة صفر. تحجز هذه القيمة كعنوان للشبكة ذاتها

4- يجب أن يكون عنوان المحطة وحيداً بالنسبة لعنوان الشبكة.

نَسب مُعرفات الشبكة Network ID

يحدد "معرف الشبكة" المحطةَ المستخدمة لبروتوكولات TCP/IP الموجودة على نفس الشبكة الفيزيائية. يجب على جميع المحطات المرتبطة على شبكة فيزيائية واحدة أن تأخذ نفس عنوان (معرف) الشبكة حتى تستطيع الاتصال مع بعضها.

كما يجب أن تأخذ جميع المحطات بما فيها بوابات المسيرات معرفات مختلفة عن بعضها.

يكون عنوان IP لبوابة المسير المربوطة إلى الشبكة هو نفسه عنوان IP المعرف كعبارة افتراضية default gateway لدى أي محطة عمل عندما يتم إعداد TCP/IP لديها. فيمكننا مثلاً تحديد للحاسب الموجود على الشبكة Subnet1 ذو العنوان 124.0.0.27 عنوان العبارة الافتراضية 124.0.0.1.

المعرفات المقبولة للمحطات

يبين الجدول التالي المجالات المقبولة لمعرفات المحطات بالنسبة لأي شبكة خاصة:

8.jpg

مقترحات حول تعيين معرفات المحطات

لا توجد قواعد خاصة بالنسبة لتعيين معرفات المحطات (الجزء الخاص برقم المحطة ضمن عنوان IP). فيمكن مثلاً تعيين المعرفات بشكل متتالي أو بشكل يسهل حفظه. فمثلاً:

1- تقسيم معرفات المحطات إلى مجموعات حسب نوع الحاسب أو المخدم

2- تحديد المسيرات حسب عناوينهم

مفهوم قناع الشبكة الجزئية Subnet Mask

يستخدم قناع الشبكة المؤلف من 32 بت (مثله مثل عنوان IP) لتحقيق ما يلي:

1- حجز قسم من عنوان IP للتمييز بين معرف الشبكة وبين معرف المحطة

2- التعبير عن كون عنوان IP للمحطة الوجهة يقع على الشبكة المحلية أو على شبكة بعيدة.

يجب تعيين قناع شبكة لكل محطة مستخدمة لبروتوكولات TCP/IP. يمكن أن يأخذ هذا القناع القيمة الافتراضية عندما لا تكون الشبكة مجزأة إلى شبكات جزئية أو أي قيمة معرفة من قبل المستثمر في حال وجود الشبكات الجزئية.

قناع الشبكة الجزئية الافتراضي

9.jpg

يستخدم قناع الشبكة الافتراضي في شبكات TCP/IP غير المجزأة إلى شبكات جزئية. يجب تعريف قناع الشبكة لدى جميع المحطات الموجودة على الشبكة. هذا ويتعلق القناع الافتراضي بصف الشبكة.

تأخذ جميع البتات الموافقة لمعرف الشبكة القيمة "1" أي أن القيمة العشرية لكل بايت تكون مساوية للقيمة "255". بينما تأخذ البتات الموافقة لمعرف المحطة القيمة "0".

طريقة تحديد وجهة طرد ما

10.jpg

يتم استخدام “AND” للتفرقة بين الطرود الموجهة إلى محطة محلية (على نفس الشبكة الفيزيائية) أو إلى محطة بعيدة.

1- عند إعداد TCP/IP، تتم عملية “AND” بين عنوان IP للمحطة وبين قناع الشبكة المعرف لها.

2- قبل إرسال أي طرد تتم عملية “AND” بين عنوان IP للوجهة وبين قناع الشبكة المحلي.

إذا تساوت نتائج المرحلة (1) مع نتائج المرحلة (2) فهذا يعني أن الطرد موجه إلى محطة محلية وإلا فيتم إرسال الطرد إلى العبارة الافتراضية (الطرد موجه إلى محطة بعيدة).

تتم عملية “AND” بمقارنة كل بت من عنوان IP مع البت المقابل في قناع الشبكة. فإذا أخذ البتان القيمة "1" فتكون النتيجة "1" وإلا فالنتيجة تكون "0".

انتهـــــــى ...

يرجى عدم نقل الموضوع دون ذكر المصدر ...

لكم تحياتــــي ...

محمد قطان

الفريق العربي للبرمجة

KaTTaN Computer Idiot CIONO4

واثق الخطوة يمشي ملكا !!

#2

(f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift) (f) (gift)

#3

السلام عليكم

تسلم الايادي (f) يا ابا العلاء ، علي قول CIONO1 نعم ال Idiot انت :D :D :D

فعملية subnet جزء من الحلول التي تستخدم من اجل تفادي انتهاء العناوين المخصصة في IPv4، وهناك أيصا حلول مثل CIDR ... حتي يتم استخدام IPv6 كليا :)

شكرا مرة اخري، أرحتني عن هذا الجزء في السلسة :D

#4

[movel]شكـــــــرا [/movel]

يا اخ

محمد

[movel]على الموضوع القيم [/movel]

#5

درس و لا أروع.

رااااائع جداً

يعطيك العافية (أبو علاء) (f)

#6

بسم الله ماشاء الله

اللهم زد أخوانى علما ونفع بهم أمة المسلمين أجمعين بحق نبيك محمد صلى الله عليه وسلم

[shdw]اللهم ارزقنى فهم النبيين وحفظ المرسلين والهام الملائكة المقربين برخمتك ياأرحم الراحمين[/shdw]

#7

السلام عليكم

يبقى المتميز دائما متميزا . ;)

To عبد الحفيظ : :P

(f)

CIONO1

هناك حتى الأحلام أصبحت ممنوعة ...

إنه لعار أن ننتمي لهكذا أوطان ... لكن ... ربما العار أن نكون نحن أبناء لتلكم أوطان .. من يدري ؟!!

ليعلم أولئك ... إنّ الشعوب إنْ هي استيقظت تسحق ظُلامََهَا ...

There, even in dreams u r wanted

To be a programmer, how a nice dream it was

Leaving ...

أعيدوا لإسمي لونه المفضل

#8

جزاكم الله خيرا على هذا الموضوع المتميز ، فهذه الدروس نفتقدها ولا نراها الا في المواقع والكتب الأجنبية .

نحتاج الى هذه العقول المستنيره التي تستطيع ترجمة علم الغرب الى لغة العرب لنستفيد منهم كما استفادوا منا في السابق ، ولا أدل على ذلك الا عند بداية عصر الترجمة اذا اهتم سلفنا بترجمة المفيد من علم الأوربيين ليستفيد ويتقدم العالمين الاسلامي والعربي .

وهذا ما نلمسه في المنتدى المذهل وما نحصل عليه من فوائد ودرر .

مزيدا من التقدم والرقي .

ودمتم .

#9

السلام عليكم

بارك الله فيك

" وما توفيقى إلا بالله عليه توكلت وإليه أنيب "
-------------------------------------------------
قل : " لا حول ولا قوة إلا بالله "
-------------------------------------------------

#10

سلمت يداك يا أستاذ محمد..

لكن كنت أود أن أسألك عن تفاصيل أكثر في هذا البروتوكول..

تفاصيا لاتتعلق بالبرمجة تماماً..

مثلاً..

كيف يستطيع هذا البروتوكول أن يحدد عدد المشتركين على الشبكة؟

ماذا يحدث في حل انهار أحد الحواسيب المتصلة؟ كيف سيتصرف البروتوكول بهذه الحالة؟

من الذي يقود هذا البروتوكول؟ أعني أين ينفذ؟ هل هو بحاجة إلى حاسب مركزي Server

وتقبل تحياتي..

ومن يتق الله يجعل له مخرجا

]

#11

يعطيك الف عافيه على الشرح ده

وانا اقراه ولما انتهي منه ارجو انك تكون مستعد لمناقشته يعني حنتقل عليك شوي:rolleyes:

#12

جزاك الله خير

#13

دائما متميز ونشيط

نتمنى المزيد قريبا

تحياتي لك

#14

مشكور اخوي محمد

والله يكتر من امثالك(f) (f)

#15

مشــــــــــــــــــكور على الموضوع الهام جدا

ونحن ننتظر من مواضع اكثر في Sub Neting

وللمزيد من الاتطلاع في هذا الموضوع

www.nor2000.com

#16

شكرا لهذا الدرس الرائع .

وبارك الله فيك

ومزيدا من البذل والعطاء

#17

أخي الكريم

أشكر لك حسن الشرح

ولكن

ما العلاقة بين كل من

www.arabteam2000.com

و

207.185.248.76

و

3484874828

أعرف أن الثاني أستخرجه من الأول بأمر ping

وقد صنعت له فورماً خاصاً به

ولكن كيف أستخرج الثالث

هل هناك معادلة ما أو طريقة مباشرة عبر الوين سوك مثلاً

أرجو المساعدة

#18

السلام عليكم

اقتباس
مثلاً..

كيف يستطيع هذا البروتوكول أن يحدد عدد المشتركين على الشبكة؟

ماذا يحدث في حل انهار أحد الحواسيب المتصلة؟ كيف سيتصرف البروتوكول بهذه الحالة؟

من الذي يقود هذا البروتوكول؟ أعني أين ينفذ؟ هل هو بحاجة إلى حاسب مركزي Server

حسبما فهمت الاسئلة :

1 - كل جزء من الايبي 8 بتات بما يعني أنه يمكن تمثيل 254 عنوان فقط ( بعد حذف الاصفار والوحداد )... هل هذا هو المقصود من السؤال؟

2 - هذا البروكوتول مهمته توصيل الحزم فقط، وهناك بروتوكولات أخري في طبقات TCP/IP للقيام في عملية التوجيه Routing وهي التي سوف تتأثر أولا إذا كان الاجهزة المنهارة تقوم بالتوجيه مثلا .. أما انهيار احد الاجهزة العادية في الشبكة لا يؤثر في عملية IP، اللهم إلا في طوبولوجيا شبكات مثل Ring ( أظن ) انهيار احد الاجهزة يعني توقف الشبكة كليا .. لا اظن أن لها علاقة بال IP ؟..

3 - لم أفهم الشق الاول من السؤال، ولكن الIP ليس بحاجة إلي جهاز مركزي، يمكن استعماله في معمارية P2P وC/S ..

وتحدد مواصفات هذا البروتوكول عدة مجاميع مثل IEET,IANA

اقتباس
ولكن كيف أستخرج الثالث

الصيغة الثالثة هي Long IP يمكن تحويل الايبي العادي بالطريقة التالية ( ردي القديم في المنتدي )

مثلا في حالة عنوان ياهو http://64.58.76.226

يتم ابقاء الجزء الاول وهو 226 كما هو

ثم الجزء الثاني وهو 76 يتم ضربه في 255 = 19456

ثم الجزء الثالث وهو 58 يتم ضربه بعد رفع 255 ^ 2 = 3801088

ثم الجزء الرابع وهو 64 يتم ضربه بعد رفع 255 ^ 3 = 1077562368

بعدها نقوم بجمع كل العدد مع بعض ويصبح 1077562594

واظن الدالة GetHostByName من المفروض ان تقوم بنفس العملية ويتم ملؤ التركيبHostEnt بــ Long IP ( يتم استعماله مع Domain وليس الايبي )

ويمكن استعمال الدالة inet_addr مع الايبي ..

والله أعلم

#19

شكرا لكم جميعا وان شاء الله اتابع في بقية السلسلة قريبا بإذن الله ..

بالنسبة لصيغة Long IP احببت ان اضيف برنامج صغير يحول اسم الموقع الى هذه الصيغة مع الأي بي ...

واسم البرنامج هو :

unfrozen3

وهذه صورة للبرنامج :

unfrozen3.jpg

وللتحميل من هنا :

http://www.arabteam2000.com/kattan/IPAddre...s/unfrozen3.exe

أيضا يمكن عمل ملف اكسل للمعادلة التي وضعها الأخ عبد الحفيظ .....

لكم تحياتــــــي ...

واثق الخطوة يمشي ملكا !!

#20

الف شكر للجميع معلومات قيمة وبصراحة أنا منذ فتره ومسالة العنونة محيرتني Addressing وفي الحقيقة أتمنى من كل من يقراء تعقيبي أن يرشدني الى مقالات أو مواقع تبين لي كيف تتم العنونة على مستوى :

1-شبكة محلية صغيرةLAN

2-على مستوى Internet

والله يفتح عليكم جميعا وما أحلى الترف الفكري. B)

هذا الموضوع مغلق.

مواضيع مشابهة