در دنیای شبکه، ممکن است مشکلاتی مانند مشکل در اتصال به رایانه های دیگر یا SSH، مشکلات جداول IP یا عدم دسترسی به وب سایت ها را پیدا کنید.

با این حال، آیا تا به حال تلاش کرده اید که شبکه خود را با استفاده از مدل OSI عیب یابی کنید؟ از طریق استفاده از روشی از پایین به بالا که مبتنی است روی با معماری OSI (Open Systems Interconnection)، ما پیچیدگی های عیب یابی شبکه را کشف خواهیم کرد و دانش و ابزارهایی را در اختیار شما قرار می دهیم که برای رسیدگی موثر به طیف گسترده ای از مشکلات شبکه ضروری هستند.

مدل OSI (اتصال سیستم های باز) چیست؟

مدل اتصال سیستم های باز (OSI) یک چارچوب مفهومی است که عملکردهای ارتباطات شبکه را در هفت سطح مجزا طبقه بندی می کند. به بیان ساده، OSI استاندارد می کند که چگونه سیستم های کامپیوتری مختلف می توانند با یکدیگر ارتباط برقرار کنند.

اسکرین شات-2024-03-24-at-15.28.35
هفت لایه از مدل OSI

چگونه یک وب سایت را با استفاده از اصول مدل OSI عیب یابی کنیم

مثال زیر از عیب یابی یک وب سایت میزبانی شده را در نظر بگیرید روی سرور شما که کار نمی کند ما از لینوکس به عنوان سیستم عامل خود استفاده خواهیم کرد. من معتقدم که تقسیم کنید و حکومت کنید تکنیک بهتری برای اشکال زدایی است.

مدل OSI یکی از روش‌هایی است که می‌توانید به طور موثر یک مسئله را تجزیه کنید تا بتوانید محیط را به‌طور روشمند ساده‌سازی کنید تا راه‌حلی پیدا کنید و آن را غلبه کنید.

لایه فیزیکی

همانطور که قبلاً گفتم، وقتی صحبت از اشکال زدایی می شود، معمولاً ترجیح داده می شود که از پایین شروع شود. لایه فیزیکی لایه پایینی در مدل OSI است. اجزای کلیدی این لایه از کابل های اترنت، هاب ها و سوئیچ ها تشکیل شده است. در این سطح باید منبع تغذیه و وضعیت دستگاه ها و همچنین آمار رابط را بررسی کنید.

  • ابزار “ifconfig” یک نمای کلی از تمام کارت های اترنت موجود در سیستم شما ارائه می دهد.
  • علاوه بر این، می توانید از دستورات “نمایش پیوند IP” استفاده کنید. اگر نتیجه “پایین” را نشان دهد، نشان می دهد که لایه 1 کار نمی کند.
  • گاهی اوقات، اتصالات اترنت ممکن است به صورت فیزیکی به سرور متصل باشند اما به طور پیش فرض فعال نباشند. برای فعال کردن، از دستور زیر استفاده کنید.
IP link set eth0 up
  • اگر به دنبال اطلاعات دقیق تر هستید، ابزار ethtool می تواند بسیار مفید باشد. این ابزار امکان پرس و جو و تغییر تنظیمات را فراهم می کند. این به شما امکان می دهد پارامترهایی مانند سرعت، پورت، مذاکره خودکار، مکان های PCI و تخلیه چک را تنظیم کنید.
پیشنهاد می‌کنیم بخوانید:  روش نصب OpenCV روی CentOS 8

لایه پیوند داده انتقال داده ها را بین دو دستگاه متصل به یک شبکه امکان پذیر می کند. در این لایه دو جزء وجود دارد. اولین جزء لایه کنترل دسترسی متوسط ​​(MAC) است که شامل عملیات آدرس دهی سخت افزاری و کنترل دسترسی است.

لایه دوم، لایه پیوند منطقی است که امکان ایجاد یک ارتباط منطقی بین رسانه های مختلف را فراهم می کند. مشکل رایج در این لایه عدم توانایی دو سرور در برقراری ارتباط است. ابزارهایی مانند ping، traceroute، arp، macof و Wireshark برای آزمایش لایه پیوند داده استفاده می شود.

این ممکن است به تأیید صحت ارسال و دریافت فریم های داده در بین دستگاه های داخل یک گروه شبکه کمک کند.

لایه شبکه

وظیفه لایه شبکه این است که انتقال داده ها بین دو شبکه را آسان کند. دستگاه های شبکه ای که در لایه 3 مدل OSI کار می کنند روتر هستند. وظیفه اصلی یک روتر این است که شبکه ها را راحت تر با یکدیگر صحبت کنند. کار با آدرس های IP بخشی از این لایه است.

در این مرحله بیشتر باید به دنبال مشکلات آدرس IP باشید. برای دیدن آدرس می توانید عبارت “ip -br address show” را تایپ کنید. می توانید ببینید آیا به کارت شبکه شما آدرس IP داده شده است یا خیر. اگر از DHCP برای دریافت آنها استفاده کنید، ممکن است آدرس های IP پویا را دریافت نکنید.

یکی از مشکلات رایج که اغلب پیش می آید، نبود دروازه بالادستی برای یک مسیر خاص یا عدم وجود یک مسیر پیش فرض است. هنگامی که یک بسته IP به یک شبکه دیگر منتقل می شود، باید به یک دروازه برای پردازش اضافی هدایت شود.

درک مسیریابی بسته ها به مقصد نهایی برای دروازه بسیار مهم است. جدول مسیریابی شامل لیستی از دروازه‌ها برای مسیرهای مختلف است و می‌توان آن را با استفاده از دستورات «IP route» مدیریت کرد. همچنین می‌توانیم اتصال را با ارسال پینگ به دروازه پیش‌فرض یا فراتر از دروازه بررسی کنیم.

لایه حمل و نقل

پروتکل هایی مانند پروتکل کنترل انتقال (TCP) و پروتکل داده گرام کاربر (UDP) توسط لایه انتقال برای کنترل ترافیک شبکه بین سیستم ها و اطمینان از جریان کارآمد داده ها استفاده می شود.

لایه انتقال وظیفه ارسال بسته های داده، جستجوی خطاها، کنترل جریان داده ها و قرار دادن آنها در ترتیب صحیح را بر عهده دارد. ممکن است در این لایه با مشکلاتی مواجه شوید، مانند پورت هایی که گوش نمی دهند. ممکن است سرویس شما شروع نشود زیرا پورت قبلاً در حال استفاده است. با اجرای “commad” netstat -antlp | می توانید ببینید چه پورت هایی باز هستند grep “LISTEN””.

پیشنهاد می‌کنیم بخوانید:  عبارت Break Python – چگونه از یک حلقه For در پایتون خارج شویم

یکی از مشکلاتی که اغلب رخ می دهد مربوط به اتصال از راه دور است. سناریویی را در نظر بگیرید که در آن سیستم محلی شما قادر به برقراری ارتباط با یک پورت دور، به ویژه HTTP نیست. روی پورت 80 telnet دستور سعی می کند یک اتصال TCP با مشخص شده ایجاد کند host و بندر این قابلیت برای انجام تست اتصال TCP از راه دور ایده آل است.

برای بررسی یک پورت UDP راه دور، می توانید از ابزار “netcat” استفاده کنید.

لایه جلسه

این لایه وظیفه تسهیل شروع و خاتمه ارتباط بین دو دستگاه را بر عهده دارد (به عنوان مثال: احراز هویت). دوره زمانی که در طی آن ارتباط شروع و خاتمه می یابد، جلسه نامیده می شود.

در این لایه شما باید اعتبار، گواهی سرورها، شناسه جلسه و کوکی های کلاینت ها را بررسی کنید.

لایه نمایشی

لایه ارائه مدل OSI مسئول قالب بندی و تبدیل داده ها به گونه ای است که امکان ارائه به کاربر را فراهم کند.

روش های رمزگذاری SSL یا TLS بخش های کلیدی این لایه هستند. در اینجا، شما باید مسائل مربوط به رمزگذاری و رمزگشایی را بررسی کنید.

سطح کاربردی

سیستم ورودی را از کاربر می گیرد و خروجی را به کاربر ارسال می کند. پروتکل های Bellow در این سطح عمل می کنند.

شما باید فایل های پیکربندی را تایید کنید روی سرور شما برای هر گونه تنظیمات اشتباه. علاوه بر این، نگاه کردن به فایل های گزارش ضروری است روی سرورها برای دریافت اطلاعات دقیق تر در مورد مسائل.

  • پروتکل انتقال فایل (FTP)
  • پروتکل انتقال ایمیل ساده (SMTP)
  • پوسته امن (SSH)
  • پروتکل دسترسی به پیام اینترنتی (IMAP)
  • سرویس نام دامنه (DNS)
  • پروتکل انتقال ابرمتن (HTTP).

نتیجه

عیب یابی مشکلات شبکه در لینوکس می تواند یک کار دلهره آور باشد، اما با استفاده از اصول مدل OSI، می توانید به طور سیستماتیک مشکلات را با کارایی بیشتر تشخیص داده و برطرف کنید.

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

با شروع لایه فیزیکی، اجزای سخت افزاری را بررسی کردیم و از ابزارهایی مانند استفاده کردیم ifconfig و ip link show برای تایید اتصال با رفتن به لایه پیوند داده، تمرکز کردیم روی آدرس های مک و ابزارهای استفاده شده مانند ping و Wireshark برای آزمایش. در لایه شبکه، با استفاده از دستوراتی مانند آدرس‌دهی و مسیریابی IP به عمق پرداختیم ip route و ping برای تشخیص مسائل

با انتقال به لایه انتقال، مشکلات مربوط به TCP و UDP را با استفاده از دستوراتی مانند netstat و telnet برای بررسی پورت های باز و ایجاد اتصالات. در ادامه پشته، اهمیت مدیریت جلسه و رمزگذاری را به ترتیب در لایه های جلسه و ارائه بحث کردیم.

در نهایت، در لایه برنامه، پروتکل‌های خاصی مانند FTP، SMTP، SSH، و HTTP را بررسی کردیم و بر اهمیت فایل‌های پیکربندی و تجزیه و تحلیل گزارش در حل مشکلات تأکید کردیم.