Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบเครือข่าย >> ระบบเครือข่าย

การแก้ไขปัญหาเครือข่าย Master Linux ด้วยโมเดล OSI – คำแนะนำทีละขั้นตอน

การแก้ไขปัญหาเครือข่าย Master Linux ด้วยโมเดล OSI – คำแนะนำทีละขั้นตอน

ในโลกของเครือข่าย คุณอาจพบว่าตัวเองกำลังแก้ไขปัญหาต่างๆ เช่น ปัญหาในการเชื่อมต่อกับคอมพิวเตอร์เครื่องอื่นหรือ SSH ปัญหาเกี่ยวกับตาราง IP หรือไม่สามารถเข้าถึงเว็บไซต์ได้

อย่างไรก็ตาม คุณเคยพยายามแก้ไขปัญหาเครือข่ายของคุณด้วยการใช้โมเดล OSI หรือไม่? ด้วยการใช้วิธีการจากล่างขึ้นบนซึ่งอิงตามสถาปัตยกรรม Open Systems Interconnection (OSI) เราจะเปิดเผยความซับซ้อนของการแก้ไขปัญหาเครือข่าย โดยมอบความรู้และเครื่องมือที่จำเป็นสำหรับการจัดการปัญหาเครือข่ายที่หลากหลายอย่างมีประสิทธิภาพ

โมเดล OSI (การเชื่อมต่อระหว่างระบบเปิด) คืออะไร

โมเดล Open Systems Interconnection (OSI) เป็นกรอบแนวคิดที่จัดหมวดหมู่หน้าที่ของการสื่อสารเครือข่ายออกเป็นเจ็ดระดับที่แตกต่างกัน พูดง่ายๆ ก็คือ OSI จะกำหนดมาตรฐานวิธีที่ระบบคอมพิวเตอร์ต่างๆ สามารถสื่อสารระหว่างกันได้

การแก้ไขปัญหาเครือข่าย Master Linux ด้วยโมเดล OSI – คำแนะนำทีละขั้นตอน เจ็ดเลเยอร์ของโมเดล OSI

วิธีแก้ไขปัญหาเว็บไซต์โดยใช้หลักการโมเดล OSI

ลองพิจารณาตัวอย่างต่อไปนี้ในการแก้ไขปัญหาเว็บไซต์ที่โฮสต์บนเซิร์ฟเวอร์ของคุณซึ่งไม่ทำงาน เราจะใช้ Linux เป็นระบบปฏิบัติการของเรา ฉันเชื่อว่าการแบ่งแยกและการปกครองเป็นเทคนิคที่ดีกว่าในการดีบัก

แบบจำลอง OSI เป็นวิธีการหนึ่งในการทำลายปัญหาอย่างมีประสิทธิภาพ เพื่อให้คุณสามารถลดความซับซ้อนของสภาพแวดล้อมอย่างเป็นระบบ เพื่อค้นหาวิธีแก้ปัญหาและพิชิตมันได้

เลเยอร์จริง

ดังที่ผมได้กล่าวไว้ก่อนหน้านี้ เมื่อพูดถึงการดีบัก โดยปกติแล้วควรเริ่มจากด้านล่างสุดจะดีกว่า เลเยอร์ทางกายภาพคือชั้นล่างสุดในโมเดล OSI ส่วนประกอบสำคัญในชั้นนี้ประกอบด้วยสายอีเธอร์เน็ต ฮับ และสวิตช์ ในระดับนี้ คุณควรตรวจสอบแหล่งจ่ายไฟและสถานะของอุปกรณ์ ตลอดจนตรวจสอบสถิติอินเทอร์เฟซ

  • เครื่องมือ "ifconfig" ให้ภาพรวมโดยละเอียดของการ์ดอีเธอร์เน็ตทั้งหมดที่มีอยู่ในระบบของคุณ
  • นอกจากนี้ คุณยังมีตัวเลือกในการใช้คำสั่ง "แสดงลิงก์ IP" หากผลลัพธ์แสดง "ลง" แสดงว่าเลเยอร์ 1 ไม่ทำงาน
  • บางครั้ง การเชื่อมต่ออีเธอร์เน็ตอาจเชื่อมต่อทางกายภาพกับเซิร์ฟเวอร์ แต่ไม่ได้เปิดใช้งานตามค่าเริ่มต้น หากต้องการเปิดใช้งาน ให้ใช้คำสั่งด้านล่าง
IP link set eth0 up
  • หากคุณกำลังมองหาข้อมูลโดยละเอียดเพิ่มเติม ยูทิลิตี้ ethtool มีประโยชน์ค่อนข้างมาก ยูทิลิตี้นี้ให้ความสามารถในการสืบค้นและแก้ไขการตั้งค่า ช่วยให้คุณสามารถปรับพารามิเตอร์ต่างๆ เช่น ความเร็ว พอร์ต การเจรจาอัตโนมัติ ตำแหน่ง PCI และออฟโหลดการตรวจสอบ

เลเยอร์การเชื่อมโยงข้อมูล

Data Link Layer ช่วยให้สามารถรับส่งข้อมูลระหว่างอุปกรณ์สองเครื่องที่เชื่อมต่อกับเครือข่ายเดียวกัน มีสององค์ประกอบในชั้นนี้ องค์ประกอบแรกคือเลเยอร์การควบคุมการเข้าถึงสื่อ (MAC) ซึ่งรวมถึงการทำงานของการกำหนดที่อยู่ฮาร์ดแวร์และการควบคุมการเข้าถึง

เลเยอร์ที่สองคือเลเยอร์ลิงก์แบบลอจิคัล ซึ่งช่วยให้สามารถสร้างการเชื่อมต่อแบบลอจิคัลระหว่างสื่อต่างๆ ได้ ปัญหาทั่วไปในเลเยอร์นี้คือการที่เซิร์ฟเวอร์สองตัวไม่สามารถสร้างการเชื่อมต่อได้ เครื่องมือต่างๆ เช่น ping, Traceroute, arp, macof และ Wireshark ใช้สำหรับทดสอบดาต้าลิงก์เลเยอร์

ซึ่งอาจช่วยในการตรวจสอบการส่งและรับเฟรมข้อมูลที่ถูกต้องระหว่างอุปกรณ์ภายในกลุ่มเครือข่ายเดียวกัน

เลเยอร์เครือข่าย

หน้าที่ของเลเยอร์เครือข่ายคือการทำให้ข้อมูลสามารถเคลื่อนย้ายระหว่างสองเครือข่ายได้ง่าย อุปกรณ์เครือข่ายที่ทำงานบนเลเยอร์ 3 ของรุ่น OSI คือเราเตอร์ งานหลักของเราเตอร์คือการทำให้เครือข่ายสามารถพูดคุยกันได้ง่ายขึ้น การทำงานกับที่อยู่ IP เป็นส่วนหนึ่งของเลเยอร์นี้

ในขั้นตอนนี้ คุณควรมองหาปัญหาเกี่ยวกับที่อยู่ IP เป็นส่วนใหญ่ คุณสามารถพิมพ์ "ip -br address show" เพื่อดูที่อยู่ คุณสามารถดูว่าการ์ดเครือข่ายของคุณได้รับที่อยู่ IP หรือไม่ คุณอาจไม่ได้รับที่อยู่ IP แบบไดนามิกจาก DHCP หากคุณใช้เพื่อรับที่อยู่เหล่านั้น

ปัญหาทั่วไปประการหนึ่งที่มักเกิดขึ้นคือการไม่มีเกตเวย์อัปสตรีมสำหรับเส้นทางเฉพาะหรือการไม่มีเส้นทางเริ่มต้น เมื่อแพ็คเก็ต IP ถูกส่งไปยังเครือข่ายอื่น จะต้องถูกส่งไปยังเกตเวย์เพื่อการประมวลผลเพิ่มเติม

การทำความเข้าใจการกำหนดเส้นทางแพ็กเก็ตไปยังปลายทางสุดท้ายถือเป็นสิ่งสำคัญสำหรับเกตเวย์ ตารางเส้นทางประกอบด้วยรายการเกตเวย์สำหรับเส้นทางต่างๆ และสามารถจัดการได้โดยใช้คำสั่ง “เส้นทาง ip” นอกจากนี้เรายังสามารถตรวจสอบการเชื่อมต่อโดยการส่ง Ping ไปยังเกตเวย์เริ่มต้นหรือเกินกว่าเกตเวย์

เลเยอร์การขนส่ง

โปรโตคอล เช่น Transmission Control Protocol (TCP) และ User Datagram Protocol (UDP) ถูกใช้โดยเลเยอร์การขนส่งเพื่อควบคุมการรับส่งข้อมูลเครือข่ายระหว่างระบบ และตรวจสอบให้แน่ใจว่าข้อมูลไหลอย่างมีประสิทธิภาพ

Transport Layer ทำหน้าที่ส่งแพ็กเก็ตข้อมูล ค้นหาข้อผิดพลาด ควบคุมการไหลของข้อมูล และจัดเรียงข้อมูลตามลำดับที่ถูกต้อง คุณอาจประสบปัญหาในเลเยอร์นี้ เช่น พอร์ตที่ไม่รับฟัง บริการของคุณอาจไม่เริ่มทำงานเนื่องจากมีการใช้งานพอร์ตอยู่แล้ว คุณสามารถดูว่าพอร์ตใดบ้างที่เปิดอยู่โดยการเรียกใช้ "commad "netstat -antlp | grep "ฟัง"".

ปัญหาหนึ่งที่มักเกิดขึ้นเกี่ยวข้องกับการเชื่อมต่อระยะไกล พิจารณาสถานการณ์ที่ระบบภายในเครื่องของคุณไม่สามารถสร้างการเชื่อมต่อกับพอร์ตระยะไกล โดยเฉพาะ HTTP บนพอร์ต 80 01 คำสั่งพยายามสร้างการเชื่อมต่อ TCP กับโฮสต์และพอร์ตที่ระบุ ความสามารถนี้เหมาะอย่างยิ่งสำหรับการดำเนินการทดสอบการเชื่อมต่อ TCP ระยะไกล

หากต้องการตรวจสอบพอร์ต UDP ระยะไกล คุณสามารถใช้ยูทิลิตี "netcat" ได้

เลเยอร์เซสชัน

เลเยอร์นี้มีหน้าที่รับผิดชอบในการอำนวยความสะดวกในการเริ่มต้นและยุติการสื่อสารระหว่างอุปกรณ์ทั้งสอง (เช่น การรับรองความถูกต้อง) ระยะเวลาที่การสื่อสารเริ่มต้นและสิ้นสุดจะเรียกว่าเซสชัน

ในเลเยอร์นี้ คุณควรตรวจสอบข้อมูลประจำตัว ใบรับรองของเซิร์ฟเวอร์ รหัสเซสชัน และคุกกี้ของไคลเอ็นต์

เลเยอร์การนำเสนอ

เลเยอร์การนำเสนอของโมเดล OSI มีหน้าที่จัดรูปแบบและแปลงข้อมูลในลักษณะที่ช่วยให้สามารถนำเสนอต่อผู้ใช้ได้

วิธีการเข้ารหัส SSL หรือ TLS เป็นส่วนสำคัญของเลเยอร์นี้ ที่นี่ คุณควรตรวจสอบปัญหาการเข้ารหัสและการถอดรหัส

เลเยอร์แอปพลิเคชัน

ระบบรับอินพุตจากผู้ใช้และส่งเอาต์พุตกลับไปยังผู้ใช้ ฟังก์ชั่น Bellow Protocols ในระดับนี้

คุณควรตรวจสอบไฟล์การกำหนดค่าบนเซิร์ฟเวอร์ของคุณว่ามีการตั้งค่าที่ไม่ถูกต้องหรือไม่ นอกจากนี้ จำเป็นต้องดูไฟล์บันทึกบนเซิร์ฟเวอร์เพื่อรับข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับปัญหา

  • โปรโตคอลการถ่ายโอนไฟล์ (FTP)
  • Simple Mail Transfer Protocol (SMTP)
  • เชลล์ปลอดภัย (SSH)
  • โปรโตคอลการเข้าถึงข้อความอินเทอร์เน็ต (IMAP)
  • บริการชื่อโดเมน (DNS)
  • Hypertext Transfer Protocol (HTTP)

บทสรุป

การแก้ไขปัญหาเครือข่ายใน Linux อาจเป็นงานที่น่ากังวล แต่ด้วยการใช้หลักการของโมเดล OSI คุณสามารถวินิจฉัยและแก้ไขปัญหาอย่างเป็นระบบได้อย่างมีประสิทธิภาพมากขึ้น

เริ่มต้นจากชั้นล่างสุดและไต่ระดับขึ้นไป เราได้สำรวจเครื่องมือและเทคนิคต่างๆ ที่ปรับให้เหมาะกับโมเดล OSI แต่ละระดับ

เริ่มจากชั้นกายภาพ เราได้ตรวจสอบส่วนประกอบฮาร์ดแวร์และเครื่องมือที่ใช้ เช่น 15 และ 23 เพื่อตรวจสอบการเชื่อมต่อ เราเลื่อนขึ้นไปที่เลเยอร์ดาต้าลิงก์โดยมุ่งเน้นไปที่ที่อยู่ MAC และใช้ยูทิลิตี้เช่น 32 และ 44 สำหรับการทดสอบ ที่เลเยอร์เครือข่าย เราเจาะลึกการกำหนดที่อยู่ IP และการกำหนดเส้นทาง โดยใช้คำสั่ง เช่น 56 และ 63 เพื่อวินิจฉัยปัญหา

เมื่อเปลี่ยนไปใช้เลเยอร์การขนส่ง เราได้แก้ไขปัญหาที่เกี่ยวข้องกับ TCP และ UDP โดยใช้คำสั่งเช่น 73 และ 80 เพื่อตรวจสอบพอร์ตที่เปิดอยู่และสร้างการเชื่อมต่อ นอกจากนี้ เราได้พูดคุยถึงความสำคัญของการจัดการเซสชันและการเข้ารหัสในเลเยอร์เซสชันและการนำเสนอตามลำดับ

สุดท้าย ที่เลเยอร์แอปพลิเคชัน เราได้ตรวจสอบโปรโตคอลเฉพาะ เช่น FTP, SMTP, SSH และ HTTP โดยเน้นความสำคัญของไฟล์การกำหนดค่าและการวิเคราะห์บันทึกในการแก้ไขปัญหา

เรียนรู้การเขียนโค้ดฟรี หลักสูตรโอเพ่นซอร์สของ freeCodeCamp ช่วยให้ผู้คนมากกว่า 40,000 คนได้งานในตำแหน่งนักพัฒนา เริ่มต้น