Написать батник автоматического реконнекта мобильного модема
Добрый день!
Использую для работы мобильные прокси на одном "свистке" (по мануалу kak-podnyat-proksi-ipv6.ru/kak-podnyat-mobilnye-proksi).
Для смены ip или при обрыве связи выполняю команду:
bash proksik3g.sh
файл proksik3g.sh
############################################
#!/bin/bash
echo -en 'AT^NDISDUP=1,1,"internet.tele2.ru"\r\n' > /dev/ttyUSB0
echo -en 'AT^NDISDUP=1,1,"internet.tele2.ru"\r\n' > /dev/ttyUSB1
echo -en 'AT^NDISDUP=1,1,"internet.tele2.ru"\r\n' > /dev/ttyUSB2
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
echo -e "AT+CFUN=1,1\r\n" > /dev/ttyUSB0
echo -e "AT+CFUN=1,1\r\n" > /dev/ttyUSB1
echo -e "AT+CFUN=1,1\r\n" > /dev/ttyUSB2
killall 3proxy
sleep 30
echo -en 'AT^NDISDUP=1,1,"internet.tele2.ru"\r\n' > /dev/ttyUSB0
echo -en 'AT^NDISDUP=1,1,"internet.tele2.ru"\r\n' > /dev/ttyUSB1
echo -en 'AT^NDISDUP=1,1,"internet.tele2.ru"\r\n' > /dev/ttyUSB2
ifdown wwp0s6u1i1
ifup wwp0s6u1i1
IP=`ip addr list wwp0s6u1i1 | grep " inet " | head -n 1 | cut -d " " -f 6 | cut -d / -f 1`
echo "" > /usr/local/3proxy/3proxy.cfg
cat > /usr/local/3proxy/3proxy.cfg
monitor /usr/local/3proxy/3proxy.cfg
daemon
timeouts 1 5 30 60 180 1800 15 60
maxconn 5000
nscache 65535
log /dev/null
flush
proxy -n -a -p8000 -i192.168.100.6 -e$IP
END
ulimit -n 10000
/usr/local/3proxy/3proxy /usr/local/3proxy/3proxy.cfg
wget -qO- ipinfo.io/ip
############################################
Это работает, но иногда появляется ошибка:
И чаще не помогает вытащить и снова вставить модем. Приходится перегружать виртуальный сервер, а потом заново коннектиться:
Узнаю HWADDR (мак адрес) модема командой: ip a
прописываю новое значение в конфиге и сохраняю
nano /etc/sysconfig/network-scripts/ifcfg-wwp0s6u1i1
и потом запускаю прокси сервер:
echo -en 'AT^NDISDUP=1,1,"internet.tele2.ru"\r\n' > /dev/ttyUSB2
ifup wwp0s6u1i1
bash proksik3g.sh
1. Нужен батник (команда?) который будет сам выполнять все действия по определению мак адреса, прописыванию в конфиг и запуску/перезапуску прокси сервера.
Для смены ip (реконнекта) и дальше предполагаю использовать команду bash proksik3g.sh если нет чего-то удобней.
2. Избавиться от ошибки: Device "wwp0s6u1i1" does not exist. (если это не аппаратный баг)
"ip a" действительно показывает, что модем пропадат: https://prnt.sc/pdxbpa Если переткнуть снова появлется, но не получается снова получить ip для прокси: https://prnt.sc/pdxerj
Оплата WMZ