Android

คำสั่ง Ping ใน linux

A day with Scandale - Harmonie Collection - Spring / Summer 2013

A day with Scandale - Harmonie Collection - Spring / Summer 2013

สารบัญ:

Anonim

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

Ping ทำงานได้โดยส่ง ICMP หนึ่งข้อความหรือมากกว่า (Internet Message Message Protocol) Echo ร้องขอแพ็คเกจไปยัง IP ปลายทางที่ระบุบนเครือข่ายและรอการตอบ เมื่อปลายทางได้รับแพ็คเกจมันจะตอบกลับด้วยการตอบกลับ ICMP

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

ยูทิลิตี้ ping เป็นส่วนหนึ่งของแพ็คเกจ iputils (หรือ iputils-ping ) ซึ่งติดตั้งไว้ล่วงหน้าในลีนุกซ์ลีนุกซ์เกือบทุกรุ่น ping ยังมีอยู่ใน Windows, macOS และ FreeBSD

วิธีใช้คำสั่ง Ping

ไวยากรณ์สำหรับคำสั่ง ping มีดังนี้:

ping DESTINATION

หากต้องการแสดงให้เห็นว่าคำสั่ง ping ทำงานได้ดีเพียงใดลอง ping google.com :

ping google.com

ผลลัพธ์จะมีลักษณะดังนี้:

PING google.com (172.217.22.206) 56(84) bytes of data. 64 bytes from muc11s01-in-f14.1e100.net (172.217.22.206): icmp_seq=1 ttl=53 time=40.2 ms 64 bytes from muc11s01-in-f14.1e100.net (172.217.22.206): icmp_seq=2 ttl=53 time=41.8 ms 64 bytes from muc11s01-in-f14.1e100.net (172.217.22.206): icmp_seq=3 ttl=53 time=47.4 ms 64 bytes from muc11s01-in-f14.1e100.net (172.217.22.206): icmp_seq=4 ttl=53 time=41.4 ms ^C --- google.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 7ms rtt min/avg/max/mdev = 40.163/42.700/47.408/2.790 ms

คำสั่ง ping แก้ไขชื่อโดเมนเป็นที่อยู่ IP และเริ่มส่งแพคเกจ ICMP ไปยัง IP ปลายทาง หาก IP ปลายทางสามารถเข้าถึงได้มันจะตอบกลับและคำสั่ง ping จะพิมพ์บรรทัดที่มีฟิลด์ต่อไปนี้:

  • จำนวนข้อมูลไบต์ ค่าเริ่มต้นคือ 56 ซึ่งแปลเป็น 64 ไบต์ข้อมูล ICMP - 64 bytes ที่อยู่ IP ของปลายทาง - from muc11s01-in-f14.1e100.net (172.217.22.206) หมายเลขลำดับ ICMP สำหรับแต่ละแพ็คเก็ต icmp_seq=1 เวลาในการถ่ายทอดสด - ttl=53 - TTL ทำงานอย่างไรเวลา ping วัดเป็นมิลลิวินาทีซึ่งเป็นเวลาไปกลับสำหรับแพ็กเก็ตเพื่อไปยังโฮสต์และสำหรับการตอบกลับเพื่อส่งกลับไปยังผู้ส่ง - time=41.4 ms

ตามค่าเริ่มต้นช่วงเวลาระหว่างการส่งแพ็กเก็ตใหม่คือหนึ่งวินาที

คำสั่ง ping จะยังคงส่งแพคเกจ ICMP ไปยังที่อยู่ IP ปลายทางจนกว่าจะได้รับการขัดจังหวะ หากต้องการหยุดคำสั่งเพียงกด Ctrl+C รวมกัน

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

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

เมื่อสำเร็จคำสั่ง ping จะออกด้วยรหัส 0 มิฉะนั้นจะออกด้วยรหัส 1 หรือ 2 สิ่งนี้มีประโยชน์เมื่อใช้ยูทิลิตี้ ping ในเชลล์สคริปต์

ในส่วนต่อไปนี้เราจะพูดถึงตัวเลือกคำสั่ง ping ใช้บ่อยที่สุด

ระบุจำนวนแพ็กเก็ต

ตามที่ได้กล่าวไปแล้วโดยค่าเริ่มต้น ping จะยังคงส่งแพคเกจ ICMP จนกว่าจะได้รับสัญญาณขัดจังหวะ ในการระบุจำนวนของแพ็กเกจ Echo Request ที่จะส่งหลังจากที่ ping จะออกให้ใช้ตัวเลือก -c ตามด้วยหมายเลขของแพ็กเกจ:

ping -c 1 DESTINATION

ตัวอย่างเช่นในการ ping linuxize.com เพียงครั้งเดียวที่คุณจะใช้:

ping -c 1 linuxize.com

ระบุส่วนต่อประสานแหล่งที่มา

พฤติกรรมเริ่มต้นของคำสั่ง ping คือการส่งแพคเกจ ICMP ผ่านเส้นทางเริ่มต้น หากคุณมีหลายอินเตอร์เฟสบนเครื่องของคุณคุณสามารถระบุอินเตอร์เฟสต้นทางด้วยอ็อพชัน -I :

ping -I INTERFACE_NAME DESTINATION

คำสั่งต่อไปนี้จะ ping linuxize.com โดยใช้ em2 เป็นส่วนต่อประสานแหล่งที่มา:

ping -I em2 linuxize.com

ระบุ Internet Protocol

เมื่อคุณรันคำสั่ง ping คำสั่งนั้นจะใช้ IPv4 หรือ IPv6 ขึ้นอยู่กับการตั้งค่า DNS ของเครื่อง

หากต้องการบังคับให้ ping ใช้ IPv4 ให้ส่งตัวเลือก -4 หรือใช้นามแฝง ping4 :

ping -4 DESTINATION

สำหรับ IPv6 ผ่านตัวเลือก -6 หรือใช้ ping6 :

ping -6 DESTINATION

ข้อสรุป

ping เป็นยูทิลิตีเครือข่ายบรรทัดคำสั่งที่ให้คุณทดสอบการเชื่อมต่อระดับ IP ของโฮสต์ที่กำหนดในเครือข่าย

หากต้องการดูตัวเลือกที่มีทั้งหมดของคำสั่ง ping ให้พิมพ์ man ping ในเทอร์มินัลของคุณ

สถานี ping