Jump to content

Автообновление IPv6 тоннеля при смене IPv4


Recommended Posts

Добрый вечер.

Решил заморочиться с автообновлением тоннеля 6in4 от Hurricane Electric. Роутер соединяется с провайдером через PPPoE соединение, соответственно раз в сутки провайдер рвёт сессию, поднятый туннель 6in4 становится нерабочим. Предлагаю скрипт:
 

#!/bin/bash
sleep 5
EXTERNAL_IPV4=`ifconfig ppp0 |grep "inet addr:"|cut -f 2 -d ':'|cut -f 1 -d ' '`;
HEUSER='your.username'     # The username you use to login at tunnelbroker.net
HEKEY='32f325019357278d'   # This 'Update Key' can be found on the 'Advanced' tab of the tunnel details page.
HETUNNEL='12356'           # The 'Tunnel ID' from the tab IPv6 tunnel on the tunnel details page.
[ "$interface" = "ppp0" ] && curl -k -s "https://ipv4.tunnelbroker.net/nic/update?username=$HEUSER&password=$HEKEY&hostname=$HETUNNEL&myip=$EXTERNAL_IPV4"

Скрипт закидываем в /opt/etc/ndm/wan.d  

Обзываем типа 010-tun6.sh и даём разрешения на выполнение

chmod +x /opt/etc/ndm/wan.d/010-tun6.sh

Жду критики :)

Link to comment
Share on other sites

9 минут назад, stakp сказал:

Добрый вечер.

Решил заморочиться с автообновлением тоннеля 6in4 от Hurricane Electric. Роутер соединяется с провайдером через PPPoE соединение, соответственно раз в сутки провайдер рвёт сессию, поднятый туннель 6in4 становится нерабочим. Предлагаю скрипт:
 


#!/bin/bash
sleep 5
EXTERNAL_IPV4=`ifconfig ppp0 |grep "inet addr:"|cut -f 2 -d ':'|cut -f 1 -d ' '`;
HEUSER='your.username'     # The username you use to login at tunnelbroker.net
HEKEY='32f325019357278d'   # This 'Update Key' can be found on the 'Advanced' tab of the tunnel details page.
HETUNNEL='12356'           # The 'Tunnel ID' from the tab IPv6 tunnel on the tunnel details page.
[ "$interface" = "ppp0" ] && curl -k -s "https://ipv4.tunnelbroker.net/nic/update?username=$HEUSER&password=$HEKEY&hostname=$HETUNNEL&myip=$EXTERNAL_IPV4"

Скрипт закидываем в /opt/etc/ndm/wan.d  

Обзываем типа 010-tun6.sh и даём разрешения на выполнение


chmod +x /opt/etc/ndm/wan.d/010-tun6.sh

Жду критики :)

Адрес передается в скрипт в переменной $address

почему бы ей не воспользоваться?

Edited by r13
Link to comment
Share on other sites

11 минуту назад, r13 сказал:

Адрес передается в скрипт в переменной $address

почему бы ей не воспользоваться?

Видимо, потому, что я не знаю как .:?

Link to comment
Share on other sites

41 минуту назад, stakp сказал:

Видимо, потому, что я не знаю как .:?

Просто вписать её в вызове curl вместо вашей 

$EXTERNAL_IPV4

Вы же такую же переменную $interface инициализируемую прошивкой уже используете в своем скрипте. 

Типа так:

#!/bin/bash
[ "$interface" != "ppp0" ] && exit
sleep 5
HEUSER='your.username'     # The username you use to login at tunnelbroker.net
HEKEY='32f325019357278d'   # This 'Update Key' can be found on the 'Advanced' tab of the tunnel details page.
HETUNNEL='12356'           # The 'Tunnel ID' from the tab IPv6 tunnel on the tunnel details page.
curl -k -s "https://ipv4.tunnelbroker.net/nic/update?username=$HEUSER&password=$HEKEY&hostname=$HETUNNEL&myip=$address"

 

Edited by r13
Link to comment
Share on other sites

9 часов назад, r13 сказал:

Типа так:

Скрытый текст

 



#!/bin/bash
[ "$interface" != "ppp0" ] && exit
sleep 5
HEUSER='your.username'     # The username you use to login at tunnelbroker.net
HEKEY='32f325019357278d'   # This 'Update Key' can be found on the 'Advanced' tab of the tunnel details page.
HETUNNEL='12356'           # The 'Tunnel ID' from the tab IPv6 tunnel on the tunnel details page.
curl -k -s "https://ipv4.tunnelbroker.net/nic/update?username=$HEUSER&password=$HEKEY&hostname=$HETUNNEL&myip=$address"

 

 

 

Не работает

Edited by stakp
Link to comment
Share on other sites

25 минут назад, stakp сказал:

Dyndns позволяет вписать свой произвольный url(то что у вас curl вызывает). Эффект будет такой же. Только по форуму надо поискать синтаксис подстановки своего ip.

ЗЫ на чем падает? 

Link to comment
Share on other sites

36 минут назад, stakp сказал:

Не работает

Работает.

10 часов назад, stakp сказал:

Решил заморочиться с автообновлением тоннеля 6in4 от Hurricane Electric.

Через WebUI не хотите обновлять?

Link to comment
Share on other sites

45 минут назад, r13 сказал:

на чем падает? 

Непонятно, при выполнении в /ndm/wan.d сообщения в консоль не выдаёт, а в /etc ругается access denied

P.S. после обновления прошивки pppoe поменял название на ppp1

Link to comment
Share on other sites

1 час назад, stakp сказал:

как?

настраиваешь в разделе ddns. выбираешь использовать сервис "другой" и там вбиваешь данные опять таки с турбоброкера. адрес сервиса: https://ipv4.tunnelbroker.net/nic/update доменное имя, имя пользователя, пароль это все оттуда. ставишь галку определять мой ip автоматически. выбираешь интерфейс, у меня pppoe. вот и все.

Edited by Goblin
  • Thanks 2
Link to comment
Share on other sites

20 минут назад, stakp сказал:

А с Dyndns профилем что делать?

забить? и пользовать keendns? или просить в хотелках(развитие) пересмотреть поведение и не ограничиваться одним сервисом. а дать возможность настроить два, три, четыре... в общем сколько надо.

upd: и кстати управление keendns тоже можно перенести на вкладку ddns.

Edited by Goblin
Link to comment
Share on other sites

8 часов назад, Goblin сказал:

забить? и пользовать keendns? или просить в хотелках(развитие) пересмотреть поведение и не ограничиваться одним сервисом. а дать возможность настроить два, три, четыре... в общем сколько надо.

Создаём ещё один профиль в DynDNS и привязываем его на интерфейс (PPPoE).

upd: не прокатило

Edited by stakp
Link to comment
Share on other sites

13 часа назад, Goblin сказал:

просить в хотелках(развитие) пересмотреть поведение и не ограничиваться одним сервисом. а дать возможность настроить два, три, четыре... в общем сколько надо

Было бы очень полезно. Столкнулся с той же проблемой, в итоге туннель обновляю роутером, а для динднс пришлось ставить клиента на комп.

Link to comment
Share on other sites

2 часа назад, Александр Рыжов сказал:

См. DNS-o-Matic.

лишнее это все. роутер сам в состоянии все это проделать. осталось только допилить до нужной кондиции.

Link to comment
Share on other sites

В ‎17‎.‎12‎.‎2017 в 10:05, Александр Рыжов сказал:

См. DNS-o-Matic.

Спасибо за полезный ресурс!

Ситуация пока не кажется безвыходной, провайдер рвет соединение раз в 7 дней, комп включен постоянно. Но на заметку возьму.

 

И небольшой оффтопик: было бы очень здорово сделать так, как на ubiquiti edgerouter - там прямо в веб-интерфейсе можно навешивать на разные интерфейсы (у меня используется конфигурация 2 WAN) несколько провайдеров динамического DNS.

Link to comment
Share on other sites

  • 3 weeks later...

по поводу

В 14.12.2017 в 23:50, stakp сказал:

Добрый вечер.

Решил заморочиться с автообновлением тоннеля 6in4 от Hurricane Electric. Роутер соединяется с провайдером через PPPoE соединение, соответственно раз в сутки провайдер рвёт сессию, поднятый туннель 6in4 становится нерабочим. Предлагаю скрипт:
 


#!/bin/bash
sleep 5
EXTERNAL_IPV4=`ifconfig ppp0 |grep "inet addr:"|cut -f 2 -d ':'|cut -f 1 -d ' '`;
HEUSER='your.username'     # The username you use to login at tunnelbroker.net
HEKEY='32f325019357278d'   # This 'Update Key' can be found on the 'Advanced' tab of the tunnel details page.
HETUNNEL='12356'           # The 'Tunnel ID' from the tab IPv6 tunnel on the tunnel details page.
[ "$interface" = "ppp0" ] && curl -k -s "https://ipv4.tunnelbroker.net/nic/update?username=$HEUSER&password=$HEKEY&hostname=$HETUNNEL&myip=$EXTERNAL_IPV4"

Скрипт закидываем в /opt/etc/ndm/wan.d  

Обзываем типа 010-tun6.sh и даём разрешения на выполнение


chmod +x /opt/etc/ndm/wan.d/010-tun6.sh

Жду критики :)

Файл создан, права назначены. в логе

Opkg::Manager: process /opt/etc/ndm/wan.d/010-tun6.sh: failed to start.

в ssh

~ # /opt/etc/ndm/wan.d/010-tun6.sh
-sh: /opt/etc/ndm/wan.d/010-tun6.sh: not found

содержимое файла:

#!/bin/bash
sleep 5
[ "$interface" = "ppp1" ] && curl -k -s "https://User:XXXXXXXXXXXXXXXX@ipv4.tunnelbroker.net/nic/update?hostname=452662"

файл находится по указанному пути 100%

Edited by Geont
Link to comment
Share on other sites

27 минут назад, Geont сказал:

Файл создан, права назначены.

в ssh


~ # /opt/etc/ndm/wan.d/010-tun6.sh
-sh: /opt/etc/ndm/wan.d/010-tun6.sh: not found

файл находится по указанному пути 100%

А какие права и на какого пользователя?

Link to comment
Share on other sites

32 минуты назад, stakp сказал:

А какие права и на какого пользователя?

эмм... права 755, а на какого пользователя - как посмотреть?

Link to comment
Share on other sites

2 часа назад, TheBB сказал:

sed -i '1c\#!/opt/bin/sh' /opt/etc/ndm/wan.d/010-tun6.sh

BusyBox v1.25.1 () built-in shell (ash)

~ # sed -i '1c\#!/opt/bin/sh' /opt/etc/ndm/wan.d/010-tun6.sh
~ #
~ # /opt/etc/ndm/wan.d/010-tun6.sh
'leep: invalid number '5
~ #
~ # /opt/etc/ndm/wan.d/010-tun6.sh
-sh: /opt/etc/ndm/wan.d/010-tun6.sh: not found
~ #

 

Link to comment
Share on other sites

Еще вопрос: у меня два соединения: основное и резервное. Оба PPPoE, интерфейсы, соответственно, ppp0 и ppp1. как сделать, чтобы обновление брокера происходило при поднятии основного подключения?

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...