ในการแก้ไขปัญหาเครือข่ายบน Linux คุณจำเป็นต้องรู้วิธีแก้ไขปัญหา’ข้อผิดพลาด No Route to Host’บน Linux เราพร้อมช่วยคุณหาวิธีแก้ไขข้อผิดพลาดในคู่มือนี้ “ไม่มีเส้นทางไปยังโฮสต์” เป็นหนึ่งในสิ่งสุดท้ายที่คุณต้องการได้ยินเมื่อคุณพยายามเชื่อมต่อกับบริการบน Linux

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

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

วิธีแก้ไขปัญหา’ไม่มีข้อผิดพลาดเกี่ยวกับเส้นทางไปยังโฮสต์’บน Linux

กำหนดค่าไฟร์วอลล์

ก่อนที่จะแก้ไขไฟร์วอลล์ ควรตรวจสอบด้วย sudo nmap-sS เพื่อ ตรวจสอบว่าคุณพยายามเชื่อมต่อกับพอร์ตที่ถูกต้องจริงๆ

หากพอร์ตถูกต้อง ขอแนะนำให้คุณแก้ไขกฎไฟร์วอลล์โดยใช้ iptables คำสั่งต่อไปนี้จะอนุญาตพอร์ตที่ระบุบนไฟร์วอลล์และบันทึกการเปลี่ยนแปลงเป็น/etc/iptables/rules.v4

sudo iptables-I INPUT 6-m state–state NEW-p tcp–dport -j ACCEPT
sudo netfilter-persistent save

ตรวจสอบสถานะโฮสต์

สิ่งนี้อาจชัดเจน แต่ก่อนอื่นให้ ping โฮสต์ระยะไกลเพื่อตรวจสอบว่าโฮสต์นั้นออนไลน์อยู่จริง

หากคุณสามารถ ping IP แต่ไม่สามารถ ping ชื่อโฮสต์ได้ ข้อผิดพลาดน่าจะเกิดจากปัญหา DNS หากเป็นกรณีนี้ ให้ใช้ sudo nano/etc/systemd/resolved.conf เพื่อเปลี่ยนที่อยู่ DNS

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

สมมติว่าโฮสต์ออนไลน์และบริการกำลังทำงานอยู่ ข้อผิดพลาดน่าจะเกิดจากปัญหาการอนุญาต ก่อนอื่น ตรวจสอบ/etc/hosts.allow และ/etc/hosts.deny หากไฟล์การกำหนดค่าเหล่านี้ใช้ได้ วิธีที่ดีที่สุดคือแก้ไขปัญหาไฟร์วอลล์

สร้างกฎขาเข้า

สำหรับเครือข่ายคลาวด์เสมือน (VCN) จะต้องเพิ่มกฎขาเข้าลงในซับเน็ต เพื่ออนุญาตให้เข้าถึง VM จากอินเทอร์เน็ต เมื่อสร้างกฎ ให้ใช้ค่าต่อไปนี้

ประเภทแหล่งที่มา: CIDR แหล่งที่มา CIDR: 0.0.0.0/0 โปรโตคอล IP: ช่วงพอร์ตปลายทาง TCP: 80

ตรวจสอบตารางเส้นทาง

ข้อผิดพลาดสามารถ อาจเป็นเพราะปัญหากับตารางเส้นทางของโฮสต์ netstat-rn สามารถใช้เพื่อดูตารางเส้นทางและดูว่ามีอะไรปิดอยู่หรือไม่ ตัวอย่างเช่น ผู้ใช้รายหนึ่งพบว่ารายการใดรายการหนึ่งไม่ถูกต้อง

การตรวจสอบฯลฯ/เครือข่าย/อินเทอร์เฟซ แสดงว่ามีที่อยู่ IP สองรายการบนอินเทอร์เฟซใดอินเทอร์เฟซหนึ่ง ซึ่งทั้งสองรายการ สำหรับสาธารณะ การเพิ่ม netmask ที่ถูกต้องให้กับที่อยู่ใดที่อยู่หนึ่งจะช่วยแก้ปัญหาการกำหนดเส้นทางได้

คำถามที่พบบ่อย

Linux ไม่มีเส้นทางไปยังโฮสต์หมายถึงอะไร

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

ข้อผิดพลาด 113 ไม่มีเส้นทางไปยังโฮสต์คืออะไร

นี่คือข้อผิดพลาดที่ส่งคืนโดยเคอร์เนล ซึ่งบ่งชี้ถึงปัญหาเครือข่าย: UM ไลบรารีทำการเรียกซ็อกเก็ต send() แต่ระบบปฏิบัติการ/เคอร์เนลแสดงข้อผิดพลาดรหัส 113 ที่กำหนดเป็น EHOSTUNREACH (ไม่มีเส้นทางไปยังโฮสต์) ซึ่งเป็นไปได้ นี่คือสถานการณ์ที่เป็นไปได้

อะไรคือไม่ เส้นทางไปยังโฮสต์ Apache?

ข้อผิดพลาด TCP No Route To Host (มักอยู่ใน Java IOException) เกิดขึ้นเมื่อเครื่องในเครือข่ายไม่ทราบวิธีส่งแพ็กเก็ต TCP ไปยังเครื่องที่กำหนด สาเหตุที่เป็นไปได้ ได้แก่ ชื่อโฮสต์ของเครื่องระยะไกลไม่ถูกต้องในไฟล์การกำหนดค่า

จะเพิ่มเส้นทางไปยังโฮสต์ใน Linux ได้อย่างไร

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

By Maxwell Gaven

ฉันทำงานด้านไอทีมา 7 ปี เป็นเรื่องสนุกที่ได้เห็นการเปลี่ยนแปลงอย่างต่อเนื่องในภาคไอที ไอทีคืองาน งานอดิเรก และชีวิตของฉัน