Lệnh arping: Cách để ping hệ thống cục bộ trong Linux

Tác giả: VPS chính hãng 13 tháng 12, 2023

Trong Linux, lệnh “arping” gửi yêu cầu ARP (Giao thức phân giải địa chỉ) đến một máy chủ được chỉ định trên mạng. Nó kiểm tra xem máy chủ có thể truy cập được hay không và biết địa chỉ MAC của nó. Nó cũng có thể được sử dụng để kiểm tra thời gian phản hồi của máy chủ trong mạng. Lệnh arping có thể ping các hệ thống cục bộ để tìm hiểu xem chúng có phản hồi hay không và với sự trợ giúp của các tập lệnh, đây là lệnh có thể ping các dải địa chỉ IP cụ thể. Hãy cùng VPS Chính hãng tìm hiểu về cách để ping hệ thống cục bộ trong Linux với lệnh arping trong bài viết dưới đây!

Cú pháp chung của lệnh arping

Là quản trị viên mạng, có lẽ bạn đã rất quen thuộc với giao thức ARP. ARP thường được sử dụng bởi các thiết bị lớp hai để khám phá cũng như liên lạc với nhau một cách dễ dàng. Khi bạn đang làm việc với một mạng văn phòng nhỏ hay quản lý một hệ thống VPS Linux, bạn có thể muốn ping các máy chủ để xác minh rằng chúng có sẵn. Nếu bạn đang sử dụng giao thức ICMP, thì chính là bạn đang thực hiện các yêu cầu ARP để thăm dò các thiết bị trên mạng của mình. Nếu bạn đang tìm kiếm một cách đơn giản hơn để tạo ping ARP, bạn có thể sử dụng lệnh arping.

Lệnh arping là viết tắt của “arp ping” và đây là một công cụ cho phép bạn thực hiện các yêu cầu ping giới hạn ở chỗ nó chỉ thu thập thông tin trên các hệ thống cục bộ. Lý do cho điều này là vì nó sử dụng giao thức L2PT và do đó không thể định tuyến được. Lệnh arping được sử dụng để khám phá và thăm dò các máy chủ trên mạng cục bộ của bạn một cách hiệu quả.

Ping giao thức ARP với lệnh arping

Ping giao thức ARP với lệnh arping

Cài đặt arping trên Linux

Để cài đặt lệnh arping trên máy chủ của bạn, hãy thực thi lệnh “apt-get install” và chỉ định gói “arping”:

$ sudo apt-get install arping
Chỉ định gói arping khi thực thi lệnh cài đặt

Chỉ định gói arping khi thực thi lệnh cài đặt

Bây giờ lệnh đã được cài đặt, bạn có thể thực thi lệnh “arping” để kiểm tra phiên bản hiện tại được sử dụng. Lệnh arping hiện đã được cài đặt trên máy chủ của bạn. Theo mặc định, lệnh arping sẽ gửi yêu cầu ARP (hoặc ICMP) mỗi giây.

Các ví dụ về cách để ping hệ thống cục bộ trong Linux

Bạn có thể đặt số lượng gói được gửi bằng -c (ví dụ: arping -c 2 hostname) hoặc cho phép nó tiếp tục gửi yêu cầu cho đến khi bạn nhập ^c. Trong ví dụ đầu tiên này, chúng tôi gửi hai yêu cầu tới một hệ thống:

$ arping -c 2 192.168.0.7
ARPING 192.168.0.7 from 192.168.0.11 enp0s25
Unicast reply from 192.168.0.7 [20:EA:16:01:55:EB]  64.895ms
Unicast reply from 192.168.0.7 [20:EA:16:01:55:EB]  5.423ms
Sent 2 probes (1 broadcast(s))
Received 2 response(s)

Lưu ý: Phản hồi hiển thị thời gian cần thiết để nhận được phản hồi và địa chỉ MAC của hệ thống đang được thăm dò.

Nếu bạn sử dụng tùy chọn -f, việc arping của bạn sẽ dừng ngay sau khi xác nhận rằng hệ thống đang phản hồi. Điều đó nghe có vẻ hiệu quả, nhưng nó sẽ không bao giờ đạt đến điểm dừng nếu hệ thống, có thể là một số hệ thống không tồn tại hoặc đã tắt hoặc không phản hồi. Sử dụng một giá trị nhỏ thường là một cách tiếp cận tốt hơn. Trong ví dụ tiếp theo này, lệnh arping đã cố gắng truy cập hệ thống từ xa 83 lần trước khi chúng tôi tắt nó bằng ^c và sau đó nó cung cấp số lượng.

$ arping -f 192.168.0.77
ARPING 192.168.0.77 from 192.168.0.11 enp0s25
^CSent 83 probes (83 broadcast(s))
Received 0 response(s)

Sử dụng lệnh arping để xem hệ thống phản hồi và hệ thống không phản hồi:

$ arping -f 192.168.0.7
ARPING 192.168.0.7 from 192.168.0.11 enp0s25
Unicast reply from 192.168.0.7 [20:EA:16:01:55:EB]  82.963ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)
Broadcast – send out for all to receive

Lệnh ping có thể dễ dàng tiếp cận các hệ thống từ xa khi arping thử nhưng không nhận được bất kỳ phản hồi nào. Rõ ràng, arping không thể thu thập thông tin trên máy chủ từ xa. Nếu bạn muốn sử dụng arping cho nhiều hệ thống, bạn có thể sử dụng lệnh như sau, thao tác này khá nhanh vì nó chỉ thao tác một lần để tiếp cận từng máy chủ trong phạm vi được cung cấp.

$ for num in {1..100}; do arping -c 1 192.168.0.$num; done
ARPING 192.168.0.1 from 192.168.0.11 enp0s25
Unicast reply from 192.168.0.1 [F8:8E:85:35:7F:B9]  5.530ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)
ARPING 192.168.0.2 from 192.168.0.11 enp0s25
Sent 1 probes (1 broadcast(s))
Received 0 response(s)
ARPING 192.168.0.3 from 192.168.0.11 enp0s25
Unicast reply from 192.168.0.3 [02:0F:B5:22:E5:90]  76.856ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)
ARPING 192.168.0.4 from 192.168.0.11 enp0s25
Unicast reply from 192.168.0.4 [02:0F:B5:5B:D9:66]  83.000ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)
…

Lưu ý: Bạn sẽ thấy một số phản hồi cho thấy một phản hồi đã được nhận và những phản hồi khác không có phản hồi nào. Ngoài ra để vẫn đảm bảo cho tiến trình công việc đang hoạt động được hiệu quả, bạn có thể sử dụng thêm Các lệnh kiểm soát công việc trong VPS Linux.

Đây là một tập lệnh đơn giản sẽ cung cấp danh sách hệ thống nào trong phạm vi mạng phản hồi và hệ thống nào không:

#!/bin/bash

for num in {1..255}; do
    echo -n “192.168.0.$num “
    arping -c 1 192.168.0.$num | grep “1 response”
    if [ $? != 0 ]; then
        echo “”
    fi
done

Thay đổi dải địa chỉ IP trong tập lệnh để phù hợp với mạng cục bộ của bạn. Đầu ra sẽ trông giống như thế này:

$ ./detectIPs
192.168.0.1 Received 1 response(s)
192.168.0.2 Received 1 response(s)
192.168.0.3 Received 1 response(s)
192.168.0.4 Received 1 response(s)
192.168.0.5
192.168.0.6 Received 1 response(s)
192.168.0.7 Received 1 response(s)
192.168.0.8
192.168.0.9 Received 1 response(s)
192.168.0.10
192.168.0.11 Received 1 response(s)

Sử dụng lệnh arping chỉ để xem các hệ thống phản hồi:

Nếu bạn chỉ muốn xem các hệ thống phản hồi, hãy đơn giản hóa tập lệnh như thế này:

#!/bin/bash

for num in {1..30}; do
    arping -c 1 192.168.0.$num | grep “1 response” > /dev/null
    if [ $? == 0 ]; then
        echo “192.168.0.$num “
    fi
done

Dưới đây là kết quả đầu ra với tập lệnh thứ hai. Nó chỉ liệt kê các hệ thống đáp ứng.

$ ./detectIPs
192.168.0.1
192.168.0.2
192.168.0.3
192.168.0.4
192.168.0.6
192.168.0.7

Hướng dẫn trên đã đề cập đến lệnh arping và một số ví dụ về cách sử dụng nó để ping hệ thống cục bộ trong Linux. Trong Linux, lệnh arping gửi yêu cầu ARP đến máy chủ bằng cách chỉ định địa chỉ IP. Nó hiển thị thông tin về thời gian phản hồi và địa chỉ MAC, cho biết địa chỉ IP đó đã được sử dụng hay chưa. Nó giúp khắc phục sự cố kết nối mạng và xác minh tính khả dụng của máy chủ trên mạng. Hy vọng những chia sẻ trên của VPS Chính hãng sẽ hữu ích khi bạn muốn tạo bản đồ mạng của mình. Chúc các bạn thành công!