Cмена mac адреса при потере пинга для eth0

Искусство написания bash скриптов. Делимся своими наработками
Ответить
Аватара пользователя
ZEN
Администратор
Сообщения: 1382
Зарегистрирован: 27 сен 2012, 18:23
Темы: 217
Откуда: Украина, Одесса
Статус: В сети

Cмена mac адреса при потере пинга для eth0

Сообщение ZEN » 10 ноя 2017, 19:35

На другом ресурсе была озвучена просьба написать скрипт, который меняет мак, запускает проверку по пингу и меняет опять мак в случае потери сети. В общем, ничего сложного. Вот код:

Код: Выделить всё

#!/usr/bin/env bash

test "$UID" == 0 || {
    echo "usage: sudo $0 eth0" 1>&2;
    exit 1;
}

which macchanger 2> /dev/null || {
    echo "[ERROR] macchanger is not installed" 1>&2;
    exit 1;
}

trap "exit 0" SIGINT SIGTERM;

DEVICE_NAME=${1:-eth0};
while true
do
    ifconfig $DEVICE_NAME down;
    macchanger -r $DEVICE_NAME;
    ifconfig $DEVICE_NAME up;
    while ping 8.8.8.8 -c 4 -I $DEVICE_NAME > /dev/null; do :; done
done
бог создал труд и обезьяну
чтоб получился человек
а вот пингвина он не трогал
тот сразу вышел хорошо

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей