در این قسمت با مفاهیمی آشنا خواهیم شد که بیشتر قابللمس، درک و کاربردی هستند. مواردی که حتماً موقع استفاده از ماژول ESP8266 از اونها استفاده خواهید کرد.
مک آدرس (MAC ADDRESS) چیست؟
همانطور که هر خانه آدرس پستی منحصربهفرد و مخصوص به خود را دارد، هر دستگاهی که یک Node یا گره در شبکه است نیز یک آدرس یکتا و مخصوص به خود را دارد. به این آدرس منحصربهفرد، مک آدرس گفته میشود. تمام دستگاههایی که به شبکه متصل هستند باید یک مک آدرس داشته باشند؛ چون تنها به کمک مک آدرس است که دستگاهها شناخته شده و میتوان در شبکه با آنها ارتباط برقرار کرد یا به آنها خدمات ارائه داد. مک آدرس در سطح جهانی منحصربهفرد است، بنابراین هیچ دو دستگاهی نیستند که آدرس فیزیکی یکسانی داشته باشند.
هر دستگاه هوشمندی که در یک شبکه محلی یا جهانی (مانند اینترنت) وجود دارد دو نوع آدرس دارد. یک آدرس فیزیکی و دیگری آدرس اینترنتی. به آدرس فیزیکی دستگاه، کنترل دسترسی رسانه media access control یا بهاختصار MAC میگویند. مک آدرس تشکیل شده است از یک آدرس هگزادسیمال که از ۶ جفت عدد یا کاراکتر دورقمی (6 بایت) در قالب xx:xx:xx:xx:xx:xx نمایش داده می شود.
هر xx نشانه ۸ بیت است مانند 00.00.5e.00.53.af. هر دستگاه ممکن است بیش از یک مک آدرس داشته باشد. برای نمونه یک لپ تاپ را در نظر بگیرید. در صورتی که این لپتاپ دارای پورت اترنت و wifi باشد، برای هر یک از این دو اتصال مک آدرسهای متفاوتی وجود دارد. بلوتوث نیز با مک آدرس خاص خودش کار میکند.
آی پی (IP) چیست؟
آدرس IP یک آدرس منحصربهفرد است که دستگاه موجود در اینترنت یا بین شبکههای محلی را مشخص میکند. در اصلIP مخفف ” Internet Protocol” است که مجموعه قوانین حاکم بر فرمت دادههای ارسال شده از طریق اینترنت یا شبکه محلی است. در تعریف IP میتوان گفت آدرسهای IP در اصل شناسهای هستند که ارسال اطلاعات را بین دستگاههای موجود در شبکه ممکن میسازند.
آنها حاوی اطلاعات موقعیت مکانی هستند و دسترسی دستگاهها را برای ارتباط ممکن میسازند. اینترنت نیاز به راهی برای تمایز بین رایانهها، روترها و وبسایتهای مختلف دارد. آدرسهای IP راهی را برای انجام این کار ارائه میدهند و بخش مهمی از نحوه عملکرد اینترنت را تشکیل میدهند.
فرق بین MAC آدرس و IP آدرس چیست؟
اصلیترین فرق آی پی آدرس و مک آدرس در این است که آدرس MAC یک آدرس فیزیکی برای دستگاهی است که در شبکه وجود دارد. وجود این آدرس منحصربهفرد به این معنی است که یک دستگاه بهصورت کاملاً فیزیکی بهعنوان یک NODE در شبکهای محلی حضور دارد. این آدرس دقیقاً مثل شماره کد ملی یا شماره شناسنامه برای دستگاه است. درحالیکه آدرس IP برای شناسایی حضور یک دستگاه در شبکه جهانی است (حتی نرمافزار هم میتواند IP داشته باشد).
فرق دیگر این دو در، ماندگاری آدرس است. مک آدرسها، آدرسهایی ثابت هستند؛ اما هر بار که به اینترنت متصل میشوید به شما یک آدرس IP جدید اختصاص داده میشود. نخستین نکتهای که قبل از شروع صحبت باید به آن توجه کنیم این است که آدرس IP در سطحِ شبکه معنا پیدا میکند. وقتی میگوییم آدرس IP در سطح شبکه معنا پیدا میکند منظورمان این است که IP چیزی زیربناییتر از وب و اپلیکیشنها و اینترنت است.
حتی اگر دو یا سه کامپیوتر هم داشته باشیم که قرار باشد با یکدیگر یک شبکه (Network) را تشکیل دهند و با یکدیگر ارتباط داشته باشند، نیاز است که هر یک از آنها آدرس مشخص داشته باشند. حالا اگر تعداد این کامپیوترها بیشتر شد و در نقاط مختلف دنیا پخش شدند و بهجای شبکه داخلی (Internal Network) یک شبکه بینالمللی (Internet) داشتیم، باز هم همان آدرسدهی لازم میشود.
اگر موبایلها و اپلیکیشنها خواستن با یکدیگر ارتباط برقرار کنند باز هم همان آدرسدهی میتواند استفاده شود. اگر قرار شد اپلیکیشنها و Server ها با هم در تماس باشند، باز هم آدرسدهی لازم است. اگر هم وبسایتها بخواهند با یکدیگر در ارتباط باشند یا به هم لینک بدهند، باز هم نیازمند آدرس و آدرسدهی هستند.
به همین علت میگوییم IP یک مفهوم زیربنایی در سطح شبکه است و هر چیزی که بر زیربنای شبکه ساخته میشود بهنوعی با آدرس آی پی ارتباط پیدا میکند. آی پی آدرس ها حاوی اطلاعات موقعیت مکانی هستند و دسترسی دستگاهها را برای ارتباط ممکن میسازند. اینترنت نیاز به راهی برای تمایز بین رایانهها، روترها و وبسایتهای مختلف دارد. آدرسهای IP راهی را برای انجام این کار ارائه میدهند و بخش مهمی از نحوه عملکرد اینترنت را تشکیل میدهند.
شاید بعضی از قسمت های تعاریف بالا همچنان نامفهوم باشند. مثل تعاریف MAC Address و IP Address. اگه هر دو آدرس هستند پس چه لزومی داره که دوتا آدرس باشند!
اجازه بدید تفاوت مک آدرس و IP آدرس و اینکه چرا در شبکه از IP آدرس به جای مک آدرس استفاده میشود، را با یک مثال ساده، توضیح بدم. همانطور که قبلاً گفته شد هر دستگاهی، یک شناسه منحصربهفرد به نام مک آدرس دارد. این شناسه بهصورت یک کد یکتا (غیرمشابه با کد دیگر دستگاه ها) و غیرقابلتغییر در داخل آی سی مربوط به سختافزار ذخیره شده است.
خب… حالا فرض کنید مک آدرس در قالب شماره واحد یک فرد در یک مجتمع مسکونی باشد و خود مجتمع نیز در نقش کوچکترین شبکه در انتهای یک شبکه بزرگ و درهمتنیده است. فرض کنید در این مجتمع مسکونی 4 واحد وجود دارد. تمام همسایه ها به راحتی میتوانند با یکدیگر در ارتباط باشند بدون اینکه نیاز به ادرس خاصی داشته باشند و فقط با مراجعه به درب خانه های یکدیگر (داخل همان مجتمع) بوسیله شماره واحد (مک آدرس) میتوانند با هم در ارتباط باشند.
این مجتمع مسکونی در یک کوچه بنبست قرار دارد. در کنار این کوچه بنبست، کوچه بنبست و غیر بنبست، به تعداد زیاد داریم که در تمام آنها خانهها و مجتمعهای مسکونی زیادی وجود دارند که رویهم، یک شهر بزرگ را تشکیل میدهند. دیگر به این راحتی نمیتوان با فردی که در سمت دیگر این شهر است ارتباط برقرار کرد.
تصور کنید اداره پست شهر بزرگ دیگری قرار است برای فردی در این شهر، یک بسته بیاورد. حالا دانستن شماره واحد از یک مجتمع مسکونی از این شهر راه مناسبی برای پیداکردن تحویلگیرنده بسته پستی نیست! از این بدتر اداره پست نمیتواند از تمام مردم شهر بخواهد نام و نام خانوادگی یا پلاک خانه خود، به همراه آدرس خودشان را به اداره پست بدهند (زیرا با هر بار جابهجایی افراد، این اطلاعات تغییر میکند). همین مشکل در مک آدرس نیز وجود دارد.
اگر ساختار شبکه بزرگ باشد، آن وقت ساختار شبکه باید ابتدا و از قبل بداند هر مک آدرسی در چه قسمتی (آدرسی) از شبکه وجود دارد (درضمن ممکن است گاهی وسائل در شبکه جابهجا شوند) و آنها را ذخیره کند که این کار غیرممکن است. پس چه باید کرد؟ راهحل چیست؟
اداره پست مشکل را اینطوری حل میکند که: برای هر خانه (هر آدرس ثابت) و فارغ از نام و نام خانوادگی صاحبخانه و یا پلاک خانه و یا شماره واحد هر خانه (چون ممکن است صاحبخانه تغییر کند یا به عبارتی در شبکه، دستگاه متصل به شبکه و به دنبال آن مک آدرس دستگاه تغییر کند) یک کد پستی در نظر میگیرد و برای هر کد پستی آدرس (ثابت) مربوط به آن را ذخیره میکند (شامل شهر، محله، کوچه، بنبست و…). با این کد پستی دیگر بهراحتی همه بسته ها به مقصد درست خود خواهند رسید.
این کد پستی دقیقاً نقش IP در شبکه را ایفا میکند. شبکه نیز بهصورت پیشفرض برای تمام گره های موجود در شبکه و بر اساس قوانین شبکه خود، IPهای منحصربهفردی در نظر میگیرد. با این کار بهراحتی داده ها در شبکه بزرگ مسیر صحیح را پیدا میکنند. به همین دلیل در شبکه ها از IP استفاده میکنند و نه از مک آدرس.
نکته✅
نکتهای که دررابطهبا IPها لازم است به آن توجه کنیم این است که در هر شبکهای که باشیم نمیتوانیم دو دستگاه داشته باشیم که آیپیهای یکسانی داشته باشند، برای مثال اگر در سطح بینالملل و وب هستیم، نمیشود که دو گره (یا وسیلهای سخت افزاری یا نرم افزاری) با یک آدرس در سطح وب در حال کار باشند و در شبکه محلی نیز چنین حالتی است.
آدرس IP رشتهای از اعداد است که با نقطه از هم جدا شدهاند. آدرسهای IP بهصورت مجموعهای از چهار عدد بیان میشوند. بهعنوانمثال، این یک آدرس آیپی است: ۱۹۲.۱۵۸.۱.۳۸.
آیا این اعداد بدون محدودیت هستند؟ پاسخ منفی است. شاید اصطلاح رنج آی پی را شنیده باشید. هر عدد در این مجموعه میتواند از ۰ تا ۲۵۵ باشد؛ بنابراین، بازه آدرسدهی IP کامل از ۰.۰.۰.۰ تا ۲۵۵.۲۵۵.۲۵۵.۲۵۵ است. آدرسهای IP تصادفی نیستند؛ بلکه توسط Internet Assigned Numbers Authority بهاختصار IANA تولید و اختصاص داده میشوند که بخشی از شرکت اینترنتی است.
باتوجهبه کلاسهای IPv4 که در قبل به آنها اشاره گردید هر کدام از کلاسها به این شکل دارای بخش Network ID و Host ID خواهند بود.
- کلاس A اولین Octet که 8 بیت اول می باشد بعنوان Network ID و بقیه بخش ها بعنوان Host ID می باشد.
- کلاس B اولین و دومین Octet که 16 بیت اول می باشد بعنوان Network ID و بقیه بخش ها بعنوان Host ID می باشد.
- کلاس C اولین و دومین و سومین Octet که 24 بیت اول می باشد بعنوان Network ID و بقیه بخش ها بعنوان Host ID می باشد.
با استفاده از ترکیب کلاس آدرس مورداستفاده و سیستم تقسیمبندی Network ID و Host ID با یکدیگر همانند کدهای تلفن که بخش اول آن با عنوان پیششماره و مربوط به بخش مربوطه در یک شهر و یا کشور و یا منطقه میباشد اینگونه سیستم نیز میتواند به همان شکل مورداستفاده قرار گیرد.
تعداد آدرسهای مورداستفاده در هر کلاس باتوجهبه بیتهای مورداستفاده در آنها مشخص میگردد و اولین آدرس موجود در هر کلاس، آدرسی میباشد که با استفاده از بخش Network ID بدون تغییر و با استفاده از 0 در تمامی بیتهای باقیمانده در بخش Host ID باشد. آخرین آدرس نیز به همین شکل در همان کلاس با استفاده از 1 به جای تمام بیتهای موجود در بخش Host ID آن کلاس میباشد.
برای این قسمت، تا همینجا کافیه. چون مطالب داره پیچیده تر میشه. امیدوارم تا اینجای کار خسته نشده باشید و بنده را همراهی کنید. در قسمت بعدی (قسمت پنجم) سعی میکنم درباره انواع IPها مطالبی را بیان کنم.
پس در قسمت بعد هم بنده را همراهی کنید…