Сейчас просматривают тему: 0 -> --, и гостей: 1

Cloudflare как динамический DNS на Mikrotik

Ссылка на пост #1 Добавлено: 28 ноября 2014 11:12
Автор темы
Макс
Администраторы
Азъ: библиАтекарь
Возраст: 41 Водолей
Пол:
С нами: 16 лет 6 месяцев
Сообщений: 10644
Поблагодарил: 7257
Благодарностей: 27430
Предупреждений: 0

Награды:

       

Есть чудесный бесплатный сервис Cloudflare, который позволяет прятать свой реальный ip при использовании доменных имен. Быстро изменяет записи на всех доменных именах и за деньги может даже отфильтровать трафик от флуда и прочей грязи (но это уже другая история, скажем дорогая и не удобная история)

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

Код:[Выделить]
######## Set and collect general variables ######### :global hostname "soft.hd.zp.ua" :global resolvedIP "" :global externalIP "" :global WANInterface "ISP1" ######## Set CloudFlare variables ################# :local CFemail "mail@hd.zp.ua" :local CFtkn "3c8b585915544145becded4f2b58068177a33" :local CFzone "hd.zp.ua" :local CFid "178055949" :local CFtype "A" :local CFttl "1" :local CFservicemode "0" :local CFDomain "soft" :local CFDebug "true" ######## Resolve and set IP-variables ########## /ip DNS cache flush :local currentIP [/ip address get [/ip address find interface="ISP1" ] address]; :set externalIP [:pick $currentIP 0 [:find $currentIP "/"]]; :set resolvedIP [:resolve $hostname]; ######## Build CF API Url ######################### :local CFurl "https://www.cloudflare.com/api_json.html\3F" :set CFurl ($CFurl . "a=rec_edit&tkn=$CFtkn&id=$CFid"); :set CFurl ($CFurl . "&email=$CFemail&z=$CFzone&type=$CFtype"); :set CFurl ($CFurl . "&name=$CFDomain&service_mode=$CFservicemode&ttl=$CFttl"); ######## Write debug info to log ################# :if ($CFDebug = "true") do={ :log info ("CF: hostname = $hostname") :log info ("CF: resolvedIP = $resolvedIP") :log info ("CF: currentIP = $currentIP") :log info ("CF: externalIP = $externalIP") :log info ("CF: CFurl = $CFurl&content=$externalIP") }; ######## Compare and update CF if necessary ##### :if ($resolvedIP != $externalIP) do={ :log info ("CF: Updating CF, setting $CFDomain = $externalIP") /tool fetch mode=https url="$CFurl&content=$externalIP" keep-result=no /ip DNS cache flush } else={ :log info "CF: No Update Needed!" }


:global hostname “soft.hd.zp.ua” – это полный адрес поддомена
:global WANInterface “ISP1″ – интерфейс Mikrotik с динамическим IP который смотрит в интернет
:local CFemail “mail@hd.zp.ua” – почта Вашей учётной записи на Cloudflare
:local CFtkn “3c8b585915544145becded4f2b58068177a33″ – это секретный ключик Вашей учётки на Cloudflare, взять можно тут Account – My account – Your API key is: 3c8b585915544145becded4f2b58068177a33
:local CFzone “hd.zp.ua” – Ваш домен
:local CFid “178455949″ – это ключ домена, как получить чуть ниже
:local CFtype “A” – тип записи
:local CFttl “1″
:local CFservicemode “0″ – скрывать или нет ip адрес, если скрывать, поставить “1″
:local CFDomain “soft” – имя субдомена
:local CFDebug “true” – дебажим или нет

И так, как получить :local CFid для определенного субдомена
Для этого нужен любой сервер под Linux
Заходим через ssh или telnet на сервер и даём команду
curl https://www.cloudflare.com/api_json.html -d 'a=rec_load_all' -d 'tkn=3c8b585915544145becded4f2b58068177a33' -d 'email=mail@hd.zp.ua' -d 'z=hd.zp.ua'
Опять же:
tkn=3c8b585915544145becded4f2b58068177a33 – наш ключик от учётки
email=mail@hd.zp.ua – email учётной записи
z=hd.zp.ua – наш домен

Получим в ответ многабукаф по всем записям домена hd.zp.ua
Нам необходимо найти rec_id”:”178455949″ принадлежащий субдомену soft.hd.zp.ua

Добавляем скрипт в System – Scripts , например с именем cloudflare soft.hd.zp.ua
После чего добавляем в System – Scheduler задание с именем cloudflare soft.hd.zp.ua и выбираем желаемый интервал выполнения.
maxya Тётя шура тут
«Все постоянно твердят об авторских правах, но никогда - об авторских обязанностях.» © Жан-Люк Годар

Мой телевизор: Samsung LE-32C550J1WXUA, Samsung UE55D6100, Samsung UE65°ES8007

Мой ресивер: Sat-Integral S-1248 HD Heavy Metal, Vu+ Ultimo 4K

Мои спутники: 4°W+4.8°E+9°E+13°E+36°E+75°E+85°E+90°E

Cказали Спасибо: 1 : kolobokru
Информация

Посетители, находящиеся в группе Гости, не могут оставлять сообщения в данной теме.

    XML error in File: https://www.tricolor.tv/rss/

    XML error: Premature end of data in tag body line 3 at line 6

Футбол

Ліга конференцій, 1/2 фіналу
09 травня 2024
22:00 Олімпіакос Олімпіакос -:- Астон ВіллаАстон Вілла
Ліга Європи, 1/2 фіналу
09 травня 2024
22:00 Баєр Леверкузен Баєр Леверкузен -:- РомаРома
22:00 Аталанта Аталанта -:- МарсельМарсель

Обновлено: 17:45 09.05.2024

Телепрограмма

СТБ
17:05 - Т/с "След". "Ужин со смертью".
18:00 - Т/с "След". "Кровавая свадьба".
18:55 - "Супермама", 7 сезон, 40 эп.
20:00 - Т/с "К. О. Д.", 14 с. "Седые страсти".
Sport 1
16:00 -  Велоспорт. Тур Венгрии. Этап 2. Прямая трансляция.
18:00 - Баскетбол. Чемпионат Испании. АБК Лига. Обзор.
18:20 - Гандбол. Чемпионат Германии. Бундеслига. Лемго - Магдебург.
20:00 -  Баскетбол. Чемпионат Испании. АБК Лига. Паленсия - Обрадойро. Прямая трансляция.
ICTV
17:00 - "Единые новости". Телемарафон.
18:00 - "Единые новости". Телемарафон.
19:00 - "Единые новости". Телемарафон.
20:00 - "Единые. Главное". Итоговые новости.
Кинопремьера
17:00 - Х/ф "Петрополис".
18:50 - Х/ф "Молчание ангелов".
20:30 - Х/ф "Сердце Пармы".
23:05 - Х/ф "Беглец".
Вся телепрограмма

Мы в Вконтакте

Мы в Facebook

Голосование

Какой диагонали у вас телевизор

Меньше 21 дюйма
21 ЭЛТ
32 HD Ready
42 FullHD
46
55
больше 55

Случайное фото

Sat-integral club

Re: Вопросы новичков

Дякую всім за поради,прошив на 3.00,а потім на 3.40. Все нормально.

Re: Шурик

Цитата: SSK5230 от 01 мая 2024, 15:32:29не может такого быть то у вас какие-то проблемы скорее ...

Re: Шурик

Цитата: YevhenP от Вчера в 15:58:16Уже все нормально заработало как и раньше. Наверное что то ...

Re: Вопросы новичков

Цитата: korenyuk от Вчера в 16:03:17А те,що після скидання до заводських налаштувань залишилася та ...

Re: Вопросы новичков

Цитата: Vidok от Вчера в 15:53:09якщо є канали іключі скидайте їх на флешку і тоді спокійно ...

PHP: mail() через внешние SMTP msmtp

Ситуация следующая. ...

webhook telegram Read timeout expired

Вы выполняете ...