NỘI DUNG

01/05/2024
Lượt xem

Hướng dẫn cách sử dụng lệnh Ping trong Linux

01/05/2024
[vnx_reading_time rule="220"]phút đọc[/vnx_reading_time]
Lượt xem
Ngày đăng:01/05/2024
Lượt xem

Đánh giá

5/5 - (149 bình chọn)

Lệnh ping là một trong những công cụ hữu ích nhất cho việc khắc phục sự cố, kiểm tra và chẩn đoán các lỗi khi kết nối mạng. Bài viết này sẽ hướng dẫn chi tiết cách sử dụng lệnh ping trong Linux.

Tìm hiểu lệnh Ping trong Linux

Lệnh ping được hiểu là một công cụ cơ bản trong hệ điều hành Linux được sử dụng với mục đích kiểm tra khả năng kết nối mạng giữa 2 thiết bị. Cơ chế hoạt động của lệnh ping là gửi các gói ICMP đến một địa chỉ IP đích trên mạng và đợi phản hồi. Nếu địa chỉ đích nhận được gói tin thì sẽ phản hồi bằng một ICMP echo reply.

Lệnh ping trong Linux
Lệnh ping trong Linux

Cấu trúc lệnh:

ping [tùy chọn] địa_chỉ_IP

Sử dụng lệnh ping trong Linux

Lệnh ping cho phép xác định xem IP đích có đang hoạt động hay không. Ngoài ra bạn cũng có thể kiểm tra độ trễ trong quá trình truyền khứ hồi đến địa chỉ đích, đồng thời cho biết có gói tin nào bị mất không.

Mục đích sử dụng lệnh ping trong Linux
Mục đích sử dụng lệnh ping trong Linux

Lệnh ping là một thành phần của gói iputils (hay iputils-ping), được cài đặt sẵn trên hầu hết các bản phân phối Linux, đồng thời cũng hỗ trợ Windows, macOS và FreeBSD.

Bạn đọc có thể tham khảo qua một số bài viết cùng chủ đề Linux mà Vietnix đã tổng hợp:

Cú pháp của lệnh ping

Lệnh ping có cú pháp chung như sau:

ping [OPTIONS] DESTINATION

Ví dụ khi thử ping trang google.com thì ta sẽ có kết quả như sau:

ping google.com

Output:

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

Lệnh ping phân giải tên miền thành một địa chỉ IP và gửi các gói ICMP đến địa chỉ IP đích. Nếu các gói tin đến được địa chỉ đích thì nó sẽ phản hồi lại, sau đó lệnh ping có thể in ra các trường như sau:

  • Số lượng byte dữ liệu. Mặc định là 56, đây là số lượng để dịch sang 64 byte dữ liệu ICMP (64 bytes).
  • Địa chỉ IP đích - from muc11s01-in-f14.1e100.net (172.217.22.206).
  • Chuỗi số ICMP cho từng gói pin. icmp_seq=1.
  • Time to live – ttl=63/
  • Thời gian ping, được đo bằng đơn vị mili giây. Đây là tổng gian để packet đi đến host và nhận lại phản hồi. – time=41.4ms.

Theo mặc định thì khoảng thời gian giữa các lần gửi gói tin là một giây.

Lệnh ping sẽ tiếp tục gửi các gói ICMP đến địa chỉ IP đích cho đến khi bị gián đoạn. Để dừng lệnh chủ động thì ta có thể dùng tổ hợp phím Ctrl+C. Sau khi dừng, lệnh ping sẽ hiển thị các thống kê và tỉ lệ gói tin bị mất. Các gói tin bị mất có thể là do mất dữ liệu ở đâu đó trong mạng. Nếu gặp phải trường hợp này thì ta có thể dùng lệnh traceroute để xác định vị trí xảy ra lỗi.

Nếu lệnh ping không trả về phản hồi thì quá trình giao tiếp mạng không được thiết lập. Khi đó địa chỉ IP đích có thể không hoạt động hoặc một số host có thể đang sử dụng tường lửa để chặn traffic ICMP, hoặc được thiết lập để không phản hồi lại các ping request.

Nếu chạy thành công thì lệnh ping sẽ thoát với mã 0. Ngược lại lệnh sẽ trả về mã 1 hoặc 2.

Chỉ định số lượng packet

Như đã đề cập ở trên, theo mặc định thì lệnh ping sẽ gửi gói ICMP cho đến khi có tín hiệu gián đoạn. Để chỉ định số lượng gói Echo request được gửi cho đến khi lệnh ping dừng, ta có thể dùng option -c như sau:

ping -c number DESTINATION

Trong đó number là số lượng gói tin cần chỉ định.

Ví dụ, ta có thể ping trang stag.vietnix.dev một lần bằng lệnh sau:

ping -c 1 linuxize.com

Chỉ định giao diện nguồn

Cấu hình mặc định của lệnh ping là gửi các gói ICMP qua route mặc định. Nếu có nhiều giao diện (interface) trên máy thì ta có thể chỉ định interface nguồn bằng option -I:

ping -I INTERFACE_NAME DESTINATION

Lệnh sau dùng để ping stag.vietnix.dev bằng interface em2:

ping -I em2 linuxize.com

Chỉ định giao thức Internet

Khi chạy lệnh ping, ta có thể dùng IPv4 hoặc IPv6 tùy vào thiết lập DNS của máy.

Để yêu cầu ping chỉ sử dụng IPv4, ta có thể truyền option -4 hoặc ping4:

ping -4 DESTINATION

Tương tự với IPv6, ta có thể dùng -6 hoặc ping6:

ping -6 DESTINATION

Bạn đọc có thể tham khảo qua bài viết IPv4 và IPv6 – Khái niệm và so sánh hai giao thức mạng để có thể tìm hiểu rõ hơn nhé.

Lời kết

Qua bài viết này bạn cũng đã hiểu được sơ bộ Ping là một công cụ mạng trên giao diện command-line, cho phép người dùng nhanh chóng kiểm tra các kết nối đến host ở level IP. Nếu có bất kỳ thắc mắc nào khác, hãy để lại ở phần comment bên dưới để được Vietnix hỗ trợ nhanh nhất nhé!

Đánh giá mức độ hữu ích của bài viết

Thất vọng

Chưa hữu ích

Bình thường

Hữu ích

Rất hữu ích

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận
khuyến mãi tháng 4
Khi mua Hosting/VPS
16/04/2025 - 16/05/2025

MAXSPEED HOSTING

TĂNG TỐC WEBSITE TOÀN DIỆN

CÔNG NGHỆ ĐỘC QUYỀN

PHẦN CỨNG MẠNH MẼ

HỖ TRỢ 24/7

ĐĂNG KÝ NGAY

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Black Friday Hosting & VPS

Chương trình bắt đầu sau

Giảm giá 40% hosting VPS

50 coupon mỗi ngày

Gia hạn giá không đổi

NHẬN DEAL NGAY

CẢM ƠN BẠN ĐÃ ĐÁNH GIÁ BÀI VIẾT

Vietnix sẽ luôn cố gắng cải thiện chất lượng dịch vụ mỗi ngày

ĐÓNG

Đánh giá mức độ hữu ích của bài viết

Thất vọng

Chưa hữu ích

Bình thường

Hữu ích

Rất hữu ích