Perintah Ping saya sepertinya tidak pernah selesai. Apakah itu berarti suceeeding?

10

Saya sedang melakukan ping IP jarak jauh. Saya tahu sedikit tentang perintah Ping. Ketika saya melakukan ping IP, itu terus dan terus ... Saya tidak menggunakan opsi -t .

Me$ ping 137.30.124.104
PING 137.30.124.104 (137.30.124.104): 56 data bytes
64 bytes from 137.30.124.104: icmp_seq=0 ttl=62 time=3.378 ms
64 bytes from 137.30.124.104: icmp_seq=1 ttl=62 time=3.825 ms
64 bytes from 137.30.124.104: icmp_seq=2 ttl=62 time=4.882 ms
64 bytes from 137.30.124.104: icmp_seq=3 ttl=62 time=1.822 ms
64 bytes from 137.30.124.104: icmp_seq=4 ttl=62 time=4.572 ms
....
64 bytes from 137.30.124.104: icmp_seq=290 ttl=62 time=3.273 ms

Apakah itu berarti berhasil melakukan ping IP? Atau itu mencoba dan gagal dan mencoba lagi? Bagaimana saya menghentikannya?

bernie2436
sumber
4
Ya, berhasil melakukan ping. Anda dapat menghentikannya dengan Ctrl-C.
Faheem Mitha
7
Unix-likes pingtidak berhenti seperti windowsdilakukan secara default.
Gilles Quenot
@sputnick ya itulah yang membingungkan saya
bernie2436
Lihat bagaimana Anda bisa mengendalikannya dalam jawaban saya!
slm

Jawaban:

17

Begitulah cara kerja perintah ping. Anda dapat mengontrolnya menggunakan saklar hitungan -c,.

Contoh

$ ping -c 2 skinner
PING skinner.bubba.net (192.168.1.3) 56(84) bytes of data.
64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=1 ttl=64 time=1.00 ms
64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=2 ttl=64 time=1.13 ms

--- skinner.bubba.net ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 1.001/1.069/1.138/0.075 ms

Kerusakan output

Baris seperti ini berarti berhasil ping ke host lain:

64 bytes from skinner.bubba.net (192.168.1.3): icmp_req=2 ttl=64 time=1.13 ms

Baris-baris ini menunjukkan detalis tentang setiap "ping" saat itu terjadi antara host Anda dan host yang Anda coba ping.

Kolom ke-6

Kolom yang berisi nilai ini, icmp_req=2memberi tahu Anda tentang paket ICMP ini. The pingperintah memproduksi paket jaringan. Ada banyak jenis, Anda mungkin pernah mendengar tentang paket TCP atau UDP. Jenis lainnya adalah ICMP. ICMP mirip dengan SMS di jaringan ponsel. Tujuan utamanya adalah untuk perintah dan kontrol atas jaringan.

Kolom 7

Kolom ke-3 yang menarik adalah TTL=64. TTL - "aka. Time to Live", berarti bahwa paket hanya akan melintang maksimal 64 node sebelum waktu habis. Jadi jika sistem lebih dari 64 "hop" jauh dari sistem Anda, Anda tidak dapat melakukan ping, kecuali jika Anda meningkatkan TTL.

Kolom ke-8

Kolom ini menunjukkan berapa lama, dalam waktu, ping terjadi (dalam milidetik). Ini akan menjadi kolom yang terlihat seperti ini: time=1.13 ms.

Kolom lainnya cukup jelas.

Versi ping

Berbeda pingperintah diimplementasikan secara berbeda di berbagai Unix. Jadi, Anda perlu memperhatikan versi.

$ ping -V
ping utility, iputils-sss20100418

Saya menggunakan sistem Linux Fedora 14.

slm
sumber
1

Jawaban slm sangat bagus, tetapi jika Anda hanya ingin cepat memeriksa apakah sebuah host masih hidup (dan dapat dijangkau, dan merespons ping) maka Anda dapat menggunakannya fpingsebagai gantinya ping. Itu ping host (s), dan menunggu waktu yang singkat untuk respon. fpingKode keluar melaporkan keberhasilan atau kegagalan.

misalnya

cas @ ganesh: ~ $ fping kali
Kali masih hidup
cas @ ganesh: ~ $ echo $?
0

cas @ ganesh: ~ $ fping durga 
Host ICMP Unreachable dari 203.xx.xxx.1 untuk ICMP Echo dikirim ke durga (203.xx.xxx.14)
Host ICMP Unreachable dari 203.xx.xxx.1 untuk ICMP Echo dikirim ke durga (203.xx.xxx.14)
Host ICMP Unreachable dari 203.xx.xxx.1 untuk ICMP Echo dikirim ke durga (203.xx.xxx.14)
Host ICMP Unreachable dari 203.xx.xxx.1 untuk ICMP Echo dikirim ke durga (203.xx.xxx.14)
durga tidak terjangkau
cas @ ganesh: ~ $ echo $?
1

Pesan 'ICMP Host Unreachable' dapat dibuang dengan mengarahkan stderr ke / dev / null. Sebagai contoh:

cas@ganesh:~$ fping durga 2>/dev/null 
durga is unreachable
cas
sumber