Tìm hiểu lệnh Ping
Lệnh ping được coi là tiện ích cơ bản của Linux, giúp bạn kiểm tra khả năng kết nối giữa thiết bị của mình và một địa chỉ IP đích. Nguyên lý hoạt động của ping là gửi các gói tin ICMP (Internet Control Message Protocol) đến địa chỉ cần kiểm tra, sau đó chờ phản hồi (ICMP echo reply). Nếu địa chỉ đích nhận và phản hồi, ta có thể xác nhận kết nối đang hoạt động.
Cú pháp tổng quát:
Công dụng chính của lệnh ping
Lệnh ping giúp bạn xác minh:
Trên Linux, ping thường nằm trong gói iputils hoặc iputils-ping, mặc định được cài sẵn trên hầu hết các bản phân phối. Ngoài Linux, ping cũng có mặt trong Windows, macOS và FreeBSD.
Nếu bạn quan tâm thêm về Linux, mình có nhiều bài viết chi tiết khác để tham khảo.
Cú pháp sử dụng
Cú pháp chuẩn của lệnh ping:
Ví dụ, để kiểm tra kết nối tới địa chỉ 8.8.8.8, bạn chạy:
Kết quả đầu ra:

Lệnh ping sẽ tự động phân giải tên miền (nếu bạn nhập domain) thành địa chỉ IP và gửi gói ICMP. Khi phản hồi được trả về, terminal sẽ hiển thị các thông tin:
Theo mặc định, ping gửi gói tin mỗi giây và sẽ tiếp tục chạy liên tục cho đến khi bạn dừng thủ công bằng tổ hợp Ctrl+C. Sau khi kết thúc, ping sẽ in thống kê về số gói đã gửi, số phản hồi nhận được và tỷ lệ mất gói.
Nếu bạn không nhận được phản hồi, điều đó cho thấy kết nối không thiết lập được. Nguyên nhân có thể:
Khi chạy thành công, ping sẽ thoát với mã 0. Nếu thất bại, nó trả về mã 1 hoặc 2.
Gửi số lượng gói tin cố định
Thông thường, ping sẽ gửi gói tin vô hạn đến khi bạn dừng. Để giới hạn số lượng gói, dùng tùy chọn -c:
Cú pháp:
Trong đó number là số gói tin bạn muốn gửi.
Ví dụ:
Ping 5 lần đến 8.8.8.8:

Chỉ định giao diện mạng (interface)
Khi máy có nhiều card mạng, bạn có thể chọn giao diện nguồn để gửi gói ICMP bằng tùy chọn -I:
Cú pháp:
Ví dụ:
Ping 8.8.8.8 bằng interface wlp0s20f3
:
(đây là ảnh demo)
Hoặc ping domain bằng interface em2
:
Chọn giao thức IP
Bạn có thể chỉ định ping qua IPv4 hoặc IPv6 tùy ý.
