مدل 7 لایه شبکه:

این 7 لایه را که می شناسید ؟ غالباً دوستانی که رشته آنها IT و کامپیوتر است ، اگر در دانشگاه دوره ای در مورد شبکه گذرانده باشند ، معمولا داخل همین 7 لایه چرخیدند .7 لایه ی شبکه ملغب به لایه های OSI هستند که تاریخچه دارند . اینها 7 تا عملکرد هستند و چیز فیزیکی نیستند .


Hack

👈 این 7 لایه چگونه به وجود آمدند ؟

اوایلی که بحث شبکه های کامپیوتری مطرح بود ، هر کارخانه سازنده ی تجهیزات با استاندارد های خودش تجهیزات می ساخت (هر جور خودش صلاح می دانست ) . غالباً افراد برای اینکه یک شبکه ایجاد کنند ، مجبور بودند از یک برند خاص خریداری کنند . شبکه ها که بزرگتر شد گفتند ، نه خیر اینجوری که شدنی نیست . قرار نیست هر چیزی که من بخواهم خریداری کنم D-Link باشد ، می خواهم یک قسمت از شبکه ام را با تجهیزات Cisco پیاده سازی کنم .

لذا مجموعه ها دور هم نشستند و گفتند ، یک استانداردی طراحی کنیم که همه از این استاندارد تبعیت کنند، برای اینکه برنده های مختلف بتوانند با هم کار و مشکلی نداشته باشند . این استاندارد شد 7 لایه شبکه OSI .

👈 عملکرد مدل 7 لایه ای OSI :
زمانی که شما می خواهید Data را از A به B بفرستید ، هر لایه براساس نوع عملکرد خود یک چیزی را به این Data اضافه کرده و به لایه های بعدی می فرستد .در نهایت Data به بخش Physical می رسد و از روی Media به سمت مقابل فرستاده می شود . سمت مقابل هم به صورت بالعکس ، هر لایه Data را می خواند تا در نهایت تبدیل شود به آن چیزی که در مبداء بوده است . حالا اینکه چه چیزهایی این لایه ها اضافه می کنند خیلی برای ما اهمیت ندارند .

👈 دوستان عزیز اولاً ما نمی خواهیم خیلی ریز وارد جزئیات این 7 لایه شویم . (مثلا Flag ، Sequence number چند است و … ) بدانید بد نیست ، اما خیلی با آنها سرو کار نداریم . یک نکته را یادآور شوم که ما در شبکه حکم یک خلبان را داریم . یک خلبانی کار کشته با هزاران ساعت پرواز . حالا به این خلبان بگویند مثلا ، این پیچ زیر بال هواپیما را برای چه چیزی بستند . می گوید من نمی دونم ، اینو باید از مهندس پرواز بپرسید .

ما حکم این خلبان را داریم . ما قراره شبکه را جلو ببریم ، قرار نیست یک چیزی شبیه به این لایه ها بسازیم . اگر روزی قرار شد چیزی شبیه به این لایه ها بسازید ، آن وقت لازم است بدانید در این لایه ها چه خبر بوده است . تا شاید بتوانید به روش مهندسی معکوس یک چیزی جدید بسازید .

👈 از مجموع این 7 لایه ، 3 تا برای ما فوق العاده حائز اهمیت است . یعنی آن قدری که ما در مورد این 3 تا از مجموع 7 تا صحبت می کنیم ، در مورد 4 تا دیگر حرفی به میان نمی آید . این 3 لایه عبارتند از :
✔️ Data Link Layer
✔️ Network Layer
✔️ Transport Layer

لایه 1 Physical layer :

قبل از اینکه بگوییم چرا 3 لایه ای که در بالا عنوان شد مهم هستند ، در مورد لایه 1 صحبت می کنیم . هر چیزی که در شبکه قابل لمس باشند ، Physical است .

✔️ مثلا کابل یا کانکتور قابل لمس است و در لایه 1 کار قرار می گیرد .
✔️ HUB دستگاهی است که در لایه 1 کار می کند ، که آدرس IP و آدرس MAC را نمی فهمد و فقط یک دستگاه فیزیکی است .

👈 روش کار HUB به این صورت بود که ، Data را از مبداء می گرفت و با توجه به اینکه آدرس IP و MAC روی آن درج شده بود ، نمی توانست آن را بخواند و به همین دلیل از تمام پورت های خود به صورت Broadcast خارج می کرد تا در نهایت به مقصد برسد . به عنوان مثال : یک HUB 24 Port ، تمام 24 پورت Data را پردازش می کردند در حالی که مبنا یک سیستم بوده است.

به همین دلیل است که امروزه HUB منسوخ شده و جای خود را به Switch داده اند.
سوئیچ ها MAC را می فهمند و و آن را در جدول خود می نویسند که مثلا Mac Address هر کامپیوتر چیست و به چه شماره پورت متصل است .


Physical layer

شکی نیست دوستان من که در شبکه های کامپیوتری مانند هر شبکه ی دیگری ، هر دستگاهی که در این فاز کار می کند باید یک شناسه منحصر به فرد داشته باشد ، تا به وسیله ی این شناسه شناخته شود . لایه 2 برای ما این شناسه را فراهم می کند ، آدرس دهی فیزیکی انجام می دهد و می گوید مبداء و مقصد کیست با چه شناسه ای .

👈 آن شناسه ای که در لایه 2 مورد استفاده قرار می گیرد و فوق العاده حائز اهمیت است ، MAC Address نام دارد .

✔️ آدرس 48 بیتی در مبنای 16 hexadecimal ، چیزی شبیه به این 00-A0-CC-23-AF-4A 👈 (6 قسمت 8 بیتی)
✔️ 24 بیت اول را کد کارخانه و 24 بیت دوم را کد دستگاه می نامند .
✔️ از این به بعد اگر گفته شد فلان دستگاه ( مثلا سوئیچ ) ، در لایه 2 کار می کند بدان معنا است که ، مبداء و مقصد را با MAC می شناسد .
✔️ چه کسی این آدرس را به ما می دهد ؟ کارخانه سازنده کارت شبکه این شناسه منحصر به فرد را فراهم می کند .
✔️ روی چه چیزی قرار می دهد ؟ Interface (کارت شبکه) . 👈 اصطلاحا می گوییم ، هر Interface دارای یک Mac Address منحصر به فرد است . Mac Address آن در دنیا یکتا است .


Physical layer

👈 آیا آدرس MAC قابل تغییر است ؟
استاندارد خیر . غیر قابل تغییر نیست ، زیرا روی چیپ ست کارت شبکه شما درج شده است . اینکه با فلان نرم افزار آن را عوض می کنند ، این FAKE است ، مجازاً عوض شده ، اصل آن عوض نمی شود .

👈 یکی از مشکلات Mac Address این است که نمی توان آن را تغییر داد . حالا اگر ما بخواهیم شناسه سیستم را به هر دلیلی تغییر دهیم ، تکلیف ما چیست ؟ آیا واقعا باید دست به دامن نرم افزارهایی شویم که مجازاً MAC سیستم ما را عوض کنند ؟
ای کاش ما می توانستیم به کامپیوتر ، آدرسی که خودمان انتخاب کردیم را بدهیم نه کارخانه سازنده . 👈 (هر آدرسی که دوست داشتم را انتخاب و هر موقع که لازم بود آن را عوض کنم) .

👈 شکی نیست که انتقال Data در شبکه های کامپیوتری بر پایه MAC است . مثلا داری تصویر سیستم من را می بینید ، بر پایه MAC است .

سوال ؟ اینکه می گوییم بر پایه MAC است ، مثلا زمانی که شما بخواهید از طریق AnyDesk به سیستم من متصل شوید ، کامپیوتر شما از کجا فهمید که Mac سیستم من چیست ؟ شما به AnyDesk گفتید وصل شود به 192.168.2.100 ، این که IP است . 🙂

✔️ من به AnyDesk گفتم که می خواهم به 192.168.2.100 وصل شوم .
✔️ این آدرس IP نیاز است که MAC را پیدا کند ، اما سوال پیش می آید ، واقعا MAC را می خواهد چه کار ؟🤔
✔️ زیرا ما می دانیم در شبکه بعضی از دستگاه ها مانند سوئیچ IP نمی فهمند و باید به زبان لایه 2 با آنها صحبت کنید . مثلا اگر به سوئیچ بگویید ، Packet را به آدرس 192.168.2.100 ارسال کند ، می گوید من نمی فهمم این آدرس چیست . بنابراین باید آدرس MAC مقصد روی Packet نوشته شده باشد .

👈 در شبکه قانونی وجود دارد به اسم Address Resolution Protocol (ARP). کشف MAC Address مقصد به روش Broadcast . 👈 یعنی Data را جوری می فرستد که همه ببینند .

Address Resolution Protocol (ARP):

طبق تصویر پایین ، 2 دستگاه سوئیچ وجود دارد که به هم متصل هستند و PC1 می خواهد Data را سمت Server ارسال کند . (IP سرور را می داند اما MAC را خیر )

در اینجا MAC نیاز است ، زیرا دستگاه هایی که این وسط قرار گرفته اند لایه 2 هستند و IP را نمی فهمند . بنابراین Data به روش Broadcast با پروتوکل ARP فرستاده می شود .

1 ابتدا Data از پورت Gig 0/1 سوئیچ وارد شده و سوئیچ PC1 👈 MAC را در جدول خود می نویسد .
2 سوئیچ نمی داند مقصد کیست و حتی در مورد B اطلاعاتی ندارد . به همین دلیل Data را به صورت Broadcast سمت PC 2,3 می فرستد .


mac and ip

3 Data از پورت Gig 0/1 سوئیچ دوم وارد شده و سوئیچ PC1 👈 MAC را در جدول خود می نویسد .
4 سوئیچ نمی داند مقصد کیست و حتی در مورد B اطلاعاتی ندارد . به همین دلیل Data را به صورت Broadcast سمت PC 4,5 می فرستد .
5 در نهایت Data به مقصد می رسد . حالا سرور جواب را بر می گرداند ، اما جوابی که برمی گردد ، مبداء و مقصد آن مشخص و دیگر Broadcast نیست . که اصطلاحا به آن ARP Replay گویند .


mac and ip

6 Data از پورت Gig 0/2 سوئیچ دوم وارد شده و سوئیچ Server 👈 Mac را در جدول خود می نویسد .

7 سوئیچ ها Data را از تمام پورت های خود بیرون نمی فرستند ، زیرا می دانند درخواست کننده چه کسی بوده و مستقیما سمت PC1 می فرستند .
👈 تا این قسمت فقط MAC پیدا شد . از این لحظه به بعد PC1 شروع می کند اصل Data خود (مثلا Excel) را می فرستد .


mac and ip

لایه 3 Network Layer:

👈 در شبکه های کامپیوتری یک نوع آدرس دهی دیگر در لایه Network ، تحت عنوان IP Address وجود دارد .

✔️ آدرس 32 بیتی در مبنای 10 Decimal ، چیزی شبیه به این 192.168.2.100 👈 (4 قسمت 8 بیتی)
✔️ از این به بعد اگر گفته شد فلان دستگاه ( مثلا Router ) ، در لایه 3 کار می کند بدان معنا است که ، مبداء و مقصد را با IP می شناسد .
✔️ Router که به آدرس IP کار می کند ، بدان معنا نیست که MAC Address ندارد ، به هر حال دستگاه هایی که لایه 2 هستند این Router را با MAC خودش می شناسند ، اما خودش با آدرس IP کار می کند .
یا مثلا 👈 کامپیوتر شما با آدرس IP کار می کند ، پس چرا MAC دارد ؟ برای اینکه آن دستگاه هایی که IP سیستم شما را نمی فهمند با MAC Address با سیستم شما در ارتباط هستند .
✔️ عملیات مسیریابی Routing براساس عملکرد Router و آدرس IP در لایه 3 اتفاق می افتد . بنابراین وقتی از روتر ها در شبکه استفاده می کنیم که بیش از یک شبکه داریم و نیازی به استفاده روتر در یک شبکه نیست .

👈 لایه 3 اهمیت دارد به خاطر وجود آدرس دهی به اسم IP . بنابراین تا این لحظه هر سیستم دارای 2 آدرس است :
1 Physical Address / MAC Address 👈 این آدرس مربوط به لایه 2 است که توسط کارخانه سازنده روی کارت شبکه درج شده است و قابل تغییر نیست .
2 IP Address 👈 این آدرس مربوط به لایه 3 است که من تعیین می کنم و قابل تغییر هم می باشد.


mac and ip

Half-Duplex vs Full-Duplex:

ما در شبکه ( مثلا روتر ها ) یک اصطلاح داریم به اسم Duplex که شامل : Half-Duplex یا Full-Duplex هستند .

👈 Half-Duplex بدان معنا است که ، سیستم شما یا فرستنده است یا گیرنده . مثل بی سیم ، وقتی دکمه را فشار می دهید ، چیزی نمی شنوید و فقط صحبت می کنید .

👈 امروزه تقریبا همه دستگاه ها Full-Duplex کار می کنند ، یعنی هم فرستنده و هم گیرنده هستند . مثل تلفن که هم می شنوید و هم صحبت می کنید .

عبارت Duplex Auto در روتر ها یعنی من خودم را با سمت مقابل تنظیم می کنم . اگر Half-Duplex بود من هم Half-Duplex کار می کنم و اگر Full-Duplex باشد ، من هم Full-Duplex کار خواهم کرد .

عبارت Speed Auto مربوط به بخش Flow Control است .

interface FastEthernet0/0
 no ip address
 shutdown
 duplex auto
 speed auto