Перейти к содержимому
Калькуляторы

Динамический IP на Mikrotik

Мой провайдер предоставляет динамический IP адрес.

 

Частенько присваетвается адрес начинающиеся с "10.".

 

Мне нужно чуток изменить мой скрипт, который использует сервис NO-IP.

 

Задача.

 

Скрипт должен дополнительно проверять IP адрес.

Если адрес не начинается с "10." тогда выполняется обновление DNS.

Если же адрес начинается с "10." давать команду на переподключение к провайдеру.

 

 

 

У меня используется скрипт:

 

:local ddnsuser "u123"

:local ddnspass "p123"

:local ddnshostname "123.ddns.net"

:local ddnsinterface "Internet-main"

 

:global ddnslastip [:resolve $ddnshostname];

:global ddnsip [ /ip address get [find interface=Internet-main] address ]

:if ([ :typeof $ddnsip ] = "nil" ) do={

:log info ("ServiceDNS: No ip address on $ddnsinterface .")

} else={

:for i from=( [:len $ddnsip] - 1) to=0 do={

:if ( [:pick $ddnsip $i] = "/") do={

:set ddnsip [:pick $ddnsip 0 $i];

}

}

:if ($ddnsip!=$ddnslastip) do={

:log info ("ServiceDNS: $ddnshostname -> $ddnsip")

:global str "/nic/update?hostname=$ddnshostname&myip=$ddnsip"

/tool fetch url="http://dynupdate.no-ip.com/$str" mode=http user=$ddnsuser password=$ddnspass \ dst-path=("/ServiceDNS.".$ddnshostname)

:global ddnslastip $ddnsip

}

}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мой провайдер предоставляет динамический IP адрес.

 

Частенько присваетвается адрес начинающиеся с "10.".

 

Мне нужно чуток изменить мой скрипт, который использует сервис NO-IP.

 

Задача.

 

Скрипт должен дополнительно проверять IP адрес.

Если адрес не начинается с "10." тогда выполняется обновление DNS.

Если же адрес начинается с "10." давать команду на переподключение к провайдеру.

 

 

 

У меня используется скрипт:

 

:local ddnsuser "u123"

:local ddnspass "p123"

:local ddnshostname "123.ddns.net"

:local ddnsinterface "Internet-main"

 

:global ddnslastip [:resolve $ddnshostname];

:global ddnsip [ /ip address get [find interface=Internet-main] address ]

:if ([ :typeof $ddnsip ] = "nil" ) do={

:log info ("ServiceDNS: No ip address on $ddnsinterface .")

} else={

:for i from=( [:len $ddnsip] - 1) to=0 do={

:if ( [:pick $ddnsip $i] = "/") do={

:set ddnsip [:pick $ddnsip 0 $i];

}

}

:if ($ddnsip!=$ddnslastip) do={

:log info ("ServiceDNS: $ddnshostname -> $ddnsip")

:global str "/nic/update?hostname=$ddnshostname&myip=$ddnsip"

/tool fetch url="http://dynupdate.no-ip.com/$str" mode=http user=$ddnsuser password=$ddnspass \ dst-path=("/ServiceDNS.".$ddnshostname)

:global ddnslastip $ddnsip

}

}

Ну а причём тут no-ip.com????

если можно проверить адрес PPPoE интерфейса и если он в запрещенном диапазоне то просто переконектить его пока не получит то что надо

хотя бы как то вот так

:local ddnsinterface "pppoe-out1"

:global ddnslastip

:if ([ :typeof $ddnslastip ] = nil ) do={ :global ddnslastip "0" }

 

:local ddnsip [ /ip address get [/ip address find interface=$ddnsinterface ] address ]

 

:log info (" $ddnsip")

:log info (" $ddnsip")

 

# режем маску подсети 3 штук

 

:local ddnsip ([:pick $ddnsip 0 ([:len $ddnsip]-3)]);

 

 

:log info (" $ddnsip")

 

:if ($ddnsip > 100.255.255.255) do={:log info message="krasota";} else={ :log info message="jopa";

:if ($ddnsip < 100.0.0.0) do={:log info message="krasota2";} else={ :log info message="rekonekt1";

/interface disable pppoe-out1 ;

:delay 30;

/interface enable pppoe-out1 ; }

 

 

:log info (" $ddnsip") }

:if ($ddnsip > 10.255.255.255) do={:log info message="krasota3";} else={ :log info message="jopa3";

:if ($ddnsip < 10.0.0.0) do={:log info message="krasota4";} else={ :log info message="rekonekt2";

/interface disable pppoe-out1 ;

:delay 30;

/interface enable pppoe-out1 ; }

:log info (" $ddnsip") }

поставить это дело что бы запускалось через определённое время например в 10 минут раз

а насчёт no-ip.com для него просто отдельный стандартный скрипт запускать один раз в час что бы кидал туда уже готовый белый адрес и этого достаточно

только сервис no-ip.com для бесплатных клиентов с некоторого времени требует обновления учетки каждый месяц что не совсем удобно может это связано с какими то санкциями для российских клиентов не знаю но интересует вопрос что сейчас есть более надёжное из бесплатных и относительно стабильное.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

М-да... "Что же вы так убиваетесь то, вы же так не убьетесь!"(с)

 

alex8031, не говоря о актуальности темы: а так не проще?

 

:global newIP [/ip address get [find interface=pppoe-out1] address];

 

:if ($newIP in 10.0.0.0/8 || 100.64.0.0/10) do={

 

/interface pppoe-client disable pppoe-out1

:delay 5

/interface pppoe-client enable pppoe-out1

}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

М-да... "Что же вы так убиваетесь то, вы же так не убьетесь!"(с)

 

alex8031, не говоря о актуальности темы: а так не проще?

 

:global newIP [/ip address get [find interface=pppoe-out1] address];

 

:if ($newIP in 10.0.0.0/8 || 100.64.0.0/10) do={

 

/interface pppoe-client disable pppoe-out1

:delay 5

/interface pppoe-client enable pppoe-out1

}

Ну насчёт актуальности этой темы я сам столкнулся с этой проблемой года 2012-2013 когда все провайдеры дружно начали внедрять провайдерский NAT и клиенты начали при авторизаци получать разом белый а разом серый адрес а появились проблемы удаленного доступа на оборудование и noip.com стал бесполезным и в итоге не покупать же каждому клиенту белый статический IP ?? ради того что бы раз в месяц или в год зайти на их оборудование.

Рыскание по форумам результата не дало все пожимали плечами и ни кто не мог не чего сказать.

И итоге пришлось лепить на коленках что то из того что было и понятно и работает железно.

Теперь с недавнего времени сервис noip.com для бесплатных клиентов стал требовать активацию рабочей учётки каждые 30 дней конечно не столь критично но хлопотно.

И теперь подумываю о замене noip.com на что то равноценное относительно стабильное и бесплатное ну и желательно как то прикрутить это дело к микротикам.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

подумываю о замене noip.com на что то равноценное относительно стабильное и бесплатное ну и желательно как то прикрутить это дело к микротикам.

А чем микротиковский cloud не устраивает? Стабильно, бесплатно, и не думаю, что запомнить какое-то-там-имя проще, чем раз серийник железки записать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мой провайдер предоставляет динамический IP адрес.

 

что-то не уловил или просто я в танке? Если я провайдер и настроил тебе микротик, с какого перепуга я должен тебе на него давать доступ? Или что-то наоборот, клиент должен диктовать свои условия?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мой провайдер предоставляет динамический IP адрес.

 

что-то не уловил или просто я в танке? Если я провайдер и настроил тебе микротик, с какого перепуга я должен тебе на него давать доступ? Или что-то наоборот, клиент должен диктовать свои условия?

А кто сказал что железка провайдера???

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

подумываю о замене noip.com на что то равноценное относительно стабильное и бесплатное ну и желательно как то прикрутить это дело к микротикам.

А чем микротиковский cloud не устраивает? Стабильно, бесплатно, и не думаю, что запомнить какое-то-там-имя проще, чем раз серийник железки записать.

Насчёт cloud вопрос безопасности надо почитать а так работает с новыми прошивками можно как вариант попробывать

и единственное у cloud как можно вручную выставить время обновления.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А чем микротиковский cloud не устраивает?

Cloud работает только с белыми ИП. Тут, похоже, серый.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

у cloud как можно вручную выставить время обновления
Operation details

Router checks for outgoing IP address change: every 60 seconds

Тут, похоже, серый.

Серому никакой ddns не поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

у cloud как можно вручную выставить время обновления
Operation details

Router checks for outgoing IP address change: every 60 seconds

Тут, похоже, серый.

Серому никакой ddns не поможет.

А что нибудь аналогичное TeamViewer на базе ОС mikrotik реально ли????

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пожалуй это относительный аналог, но это не совсем то, о чем спрашивает alex8031, не так ли?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пожалуй это относительный аналог, но это не совсем то, о чем спрашивает alex8031, не так ли?

ТС видимо удаленно админит некоторое количество клиентов, поэтому, как вариант мог бы построить от них vpn до себя самого, тогда для руления всем хозяйством вполне хватило бы одного статика

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А кто сказал что железка провайдера???

 

А кто должен догадаться, что ТС что-то не договаривает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.