Jump to content

«Белый» IP от Ростелеком с помощью Entware


Recommended Posts

В веб основной системы шел, там не надо ничего менять. А на 222 нужный вам логин root пароль от админа.

Link to comment
Share on other sites

14 минуты назад, terrabyte сказал:

Изменил порт в веб интерфейсе на 222. В putty 222 и теперь пароль не подходит 🤔UPD: перезагрузил зашел по порту 222, но опять же в CLI

А в компонентах установлен "Сервер SSH"?

Link to comment
Share on other sites

  

46 минут назад, terrabyte сказал:

Entware установлен. Иначе куда бы я скрипт то закинул?

Удивительно как вы справились, в крайней версии скрипта нет строк установки пакета jq для разбора. 

Скрипт банально не заработает. 

  

5 минут назад, Orbit сказал:

пароль от админа.

зачем вводить в заблуждение? пароль на свежеустановленной entware keenetic

Link to comment
Share on other sites

48 минут назад, AndrewKvas сказал:

Часто, когда перезагружается роутер или по какой-то другой причине бывает ситуация, что GPON модем уже установил соединение с серым IP, роутер загружается, видит поднятое соединение и работает с этим соединением. Соответственно не отрабатывает скрипт в wan.d. По крайней мере я так представляю ситуацию. Приходится руками разрывать соединение, тогда всё  начинает работать как запланировано, пока не добьёмся белого IP. (По крайней мере я так вижу происходящее)

Куда и что прописать, чтобы роутер, после загрузки определял не серый ли IP у уже поднятого соединения и дергал его, если нужно?

Не кроном же это проверять...

Кто тут поднимает PPPOE сессию gpon терминал или роутер?

Link to comment
Share on other sites

2 минуты назад, batonskij сказал:

Скрипт банально не заработает

Всё было зря? А то у меня получилось через ssh сконнектится и права на скрипт поменять....

Link to comment
Share on other sites

16 минут назад, Rezdbic сказал:

Вроде порт entware в веб-интерфейсе не меняется...

root/keenetic попробуйте.

зашел на 222 порту с такой парой. Спасибо.

Link to comment
Share on other sites

1 минуту назад, terrabyte сказал:

Всё было зря? А то у меня получилось через ssh сконнектится и права на скрипт поменять....

opkg install jq

Link to comment
Share on other sites

8 минут назад, Rezdbic сказал:

Кто тут поднимает PPPOE сессию gpon терминал или роутер?

Формально роутер, но если его перезагрузить или ещё что - сессия сохраняется поднятой... И роутер работает с уже поднятой.

Link to comment
Share on other sites

3 минуты назад, AndrewKvas сказал:

Формально роутер, но если его перезагрузить или ещё что - сессия сохраняется поднятой... И роутер работает с уже поднятой.

Мне такая схема работы неизвестна...

А если GPON терминал перевести в режим моста и поднимать PPPOE сессию в роутере, не?

 

Link to comment
Share on other sites

Только что, Rezdbic сказал:

Мне такая схема работы неизвестна...

А если GPON терминал перевести в режим моста и поднимать PPPOE сессию в роутере, не?

 

Я не могу его перевести в режим моста. Он включен в WAN. Первоначально poe соединение поднимает роутер, но оно остаётся в случае перезагрузки роутера (по крайней мере мне так кажется).

Link to comment
Share on other sites

Если GPON терминал не в режиме моста, то он в режиме роутера и именно он первоначально поднимает PPPOE сессию. Что там дальше делает кинетик роутер уже неважно.

Link to comment
Share on other sites

50 минут назад, Rezdbic сказал:

Если GPON терминал не в режиме моста, то он в режиме роутера и именно он первоначально поднимает PPPOE сессию. Что там дальше делает кинетик роутер уже неважно.

PON терминал сам не поднимает POE  соединение. Оно поднимается роутером или если подключиться напрямую к ПК, то поднимается оттуда. Проблема только в том, что соединение в какой-то момент поднимается с серым ip и роутер это не видит. Не знаю как это отловить, если не справляется скрипт в wan.d.

Link to comment
Share on other sites

Зачем вы дополнительно поднимаете PPPOE сессию на роутере?  Если ваш GPON терминал не в режиме моста? 

Старая версия скрипта, использующая ndmq работает идеально при правильной настройке сети. 

Для тех, кто не захочет переходить на rci, можно установить ndmq из архива

opkg install curl
curl https://bin.entware.net/mipselsf-k3.4/keenetic/archive/libndm_1.8.0-1_mipsel-3.4_kn.ipk >libndm.ipk
opkg install libndm.ipk
curl https://bin.entware.net/mipselsf-k3.4/keenetic/archive/ndmq_1.0.2-7_mipsel-3.4_kn.ipk > ndmq.ipk
opkg install ndmq.ipk

стащил у gvan из другого топика 

Edited by batonskij
Link to comment
Share on other sites

В 26.09.2022 в 15:41, batonskij сказал:

Удивительно как вы справились, в крайней версии скрипта нет строк установки пакета jq для разбора. 

Скрипт банально не заработает. 

Скрипт работает, но только при установленном уже пакете 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

  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...