Скрипт Bash для моніторингу пристроя в локальні мережі

Автор | 13.03.2023

Приклад скриптах, який перевіряє наявність певного пристрою в локальні мережі

#!/bin/bash

# Replace XX:XX:XX:XX:XX:XX with the MAC address you want to check for
mac_address="XX:XX:XX:XX:XX:XX"

# Replace 192.168.1.1 with the IP address of your router
router_ip="192.168.1.1"

# Replace wlan0 with the interface name of your network adapter
interface="wlan0"

while true; do
  # Get the list of devices on the network
  devices=`arp-scan --interface=$interface --localnet | grep $mac_address`

  # If the device is found, print a message and exit
  if [ -n "$devices" ]; then
    echo "Device with MAC address $mac_address found on network."
    exit 0
  fi

  # Wait for 5 seconds before trying again
  sleep 5
done

Цей скрипт використовує arp-scan для сканування локальної мережі та пошуку пристрою з відомим MAC-адресою. Якщо пристрій знайдено, скрипт виводить повідомлення та завершує роботу. Якщо пристрій не знайдено, скрипт очікує 5 секунд перед наступним спробою. Можна відредагувати значення mac_address, router_ip та interface відповідно до потреб користувача.

Інший варіант але вже з відправною в телеграм бот

#!/bin/bash

# Задаємо MAC-адрес пристрою, який потрібно перевірити
MAC_ADDRESS="00:11:22:33:44:55"

# Перевіряємо, чи є пристрій з заданим MAC-адресом в мережі
ping -c 1 192.168.1.1 > /dev/null 2>&1
if [ $? -eq 0 ]; then
    echo "Device with MAC address $MAC_ADDRESS is online"

    # Надсилаємо повідомлення в Telegram
    BOT_TOKEN="<YOUR_BOT_TOKEN>"
    CHAT_ID="<YOUR_CHAT_ID>"
    MESSAGE="Device with MAC address $MAC_ADDRESS is online"
    curl -s -X POST "https://api.telegram.org/bot$BOT_TOKEN/sendMessage" \
        -d chat_id="$CHAT_ID" \
        -d text="$MESSAGE" > /dev/null

else
    echo "Device with MAC address $MAC_ADDRESS is offline"
fi

Для роботи цього скрипту необхідно замінити значення змінних MAC_ADDRESS, BOT_TOKEN та CHAT_ID на власні значення. Значення MAC_ADDRESS потрібно замінити на MAC-адрес пристрою, який потрібно перевірити. BOT_TOKEN та CHAT_ID потрібно замінити на значення, які ви отримали під час налаштування бота в Telegram. Після запуску скрипту в консолі ви побачите повідомлення про те, чи знаходиться пристрій з заданим MAC-адресом в мережі, а також повідомлення буде відправлено в Telegram.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *