Jump to content

katarn1984

Forum Members
  • Posts

    13
  • Joined

  • Last visited

Posts posted by katarn1984

  1. On 9/28/2022 at 12:50 PM, winnie57 said:

    Скрипт работает, но только при установленном уже пакете jq. При отладке убрал его проверку и установку из скрипта. Вот сейчас вернул и выложил обновлённый скрипт.

    #!/opt/bin/sh
    
    ConnName=Rostelecom
    counter=/opt/tmp/CountReconnectWan.txt
    previp=/opt/tmp/previp.txt
    max_tries=10
    
    if ! opkg list-installed | grep '^jq' > /dev/null; then
    	opkg update
    	opkg install jq
    fi
    
    sleep 3
    
    RESP=$(wget -qO - http://localhost:79/rci/show/interface | jq -r ".[] | select(.description==\"$ConnName\") | select(.defaultgw==true) | .id, .description, .address")
    [ -n "$RESP" ] || exit 1
    
    _ip=$(echo $RESP | awk '{print $3}')
    _name=$(echo $RESP | awk '{print $2}')
    _iface=$(echo $RESP | awk '{print $1}')
    
    if echo "$_ip" | grep -qE "^(10\.|100\.6[4-9]\.|100\.[7-9][0-9]\.|100\.1[01][0-9]\.|100\.12[0-7]\.|172\.1[6-9]\.|172\.2[0-9]\.|172\.3[01]\.|null)"; then
        [ -f "$counter" ] || echo "0" > $counter
        try_nr=$(cat $counter)
        try_nr=$((++try_nr))
        if [ $try_nr -gt $max_tries ]; then
            echo "0" > $counter
    		logger -p local0.error -t white_ip[$$] "Provider: $_name, interface: $_iface. Too much tries. Exit"
            exit 1
        fi
        echo "$try_nr" > $counter
        logger -p local0.error -t white_ip[$$] "Provider: $_name, interface: $_iface. Reloading WAN due grey IP - $_ip. Try $try_nr of $max_tries."
    	wget -qO - --post-data="[{\"interface\":{\"name\":\"$_iface\",\"down\":{}}}]" http://localhost:79/rci/
        sleep 3
        wget -qO - --post-data="[{\"interface\":{\"name\":\"$_iface\",\"up\":{}}}]" http://localhost:79/rci/
    else
        echo "0" > $counter
        [ -f "$previp" ] || echo "0.0.0.0" > $previp
        _previp=$(cat $previp)
        if [ "$_previp" != "$_ip" ]; then
            logger -p local0.notice -t white_ip[$$] "Provider: $_name, interface: $_iface, white IP - $_ip."
            echo "$_ip" > $previp
    	else
    		logger -p local0.notice -t white_ip[$$] "Provider: $_name, interface: $_iface, white IP - $_ip (address unchanged)."
        fi
    	exit 0
    fi

     

    030-rostelecom.sh 1.74 kB · 25 downloads

    На KN-1011 3.9.4 скрипт почти бесконечно переподключает соединение, пока не получит белый ip, игнорируя счетчик - смотрел лог, счетчик доходит до 10-ти, выход по exit1, потом опять по кругу...

  2. On 2/7/2019 at 7:14 PM, Le ecureuil said:

    Не хватит ОЗУ на устройствах с 64 мб чтобы проверить 2тб диск.

    А если внедрить только на модели с 256 МБ ОЗУ и выше, только по интерфейсу USB3.0 такое возможно?
    Сейчас уже не 2019 год и полно девайсов с достаточным объемом озу, или есть еще какие подводные камни?

  3. Долго сидел на прошивке 3.7.4 подключения с ipsec - ipsec l2tp/ipsec ipsec s2s работали прекрасно.
    Потом обновил роутер на 3.8.2, сейчас возникла потребность в этих VPN, но понял, что подключения к ним не проходят - странная ошибка в логах идет от ipsec: unable to communicate with ndm: "I/O error". Пару кусков лога с 3.7.4 и 3.8.2 выкладываю.
    На новой стабильной v3.8.5.4 есть такой косяк или на бэтах кто знает?
    Пока откатился на 3.7.4, все ок.

    not work 3.8.2.txt work 3.7.4.txt

  4. 8 minutes ago, sergeyk said:

    Хеш пароля пользователя и хеш конфигурационного файла никак между собой не связаны, это разные значения.

    Если вы хотите поменять содержимое startup-config, можете просто удалить строку с "Md5 checksum".

    Просто удалил 4 строчку конфига с "Md5 checksum" и поменял значение в первой строке "Model", все равно загрузить не дает "This file does not look like a valid Keenetic configuration file for your device"", странно, видимо где-то еще проверка идет на соответствие.

  5. Хочу поменять надпись названия модели в веб интерфейсе роутера, как я понимаю она берется из значения "model" в конфиге, меняю поле "model", вставляю новый хеш, но конфиг не загружается

  6. On 6/7/2017 at 1:22 PM, Cha-Cha said:

    Добрый день.

    Подскажите откуда берётся хеш, который хранится в конфиге для пароля пользователя: password md5 <HASH>

    В документации написано - md5 от строки вида "Пользователь:ndm:Пароль"

    Проверял - не оно.

    Для ntlm значения соответствует, правда там хеш берется от просто пароля.

    Скажите как оно на самом деле и в доках по возможности обновите, пожалуйста.

    Что-то у меня не получается никак рассчитать значение 4 строки конфига - "Md5 checksum", понимаю, что она рассчитывается как хеш MD5 от строки со значениями в полях "username" "model" "password",  разделенными символом ":", или не так?
    Пароль там идет в открытом виде же?

    Вставляю в любой онлайн расчетник хэша MD5, допустим строку с данными: "admin:Keenetic1011:12345678", потом этот хеш в конфиг, то конфиг не заливается, пишет ошибку, что мол для другой версии. Может есть какие нюансы? 

×
×
  • Create New...