MikroTik и Cloudflare: Динамический IP для домена
Когда то на просторах интернета нашёл скрипт реализации динамической смены IP из MikroTik напрямую в панели управления Cloudflare при помощи API. Сам скрипт я немного подкорректировал и опубликовал в MikroTik Marketplace. Где нашёл скрипт уже не помню, вроде бы на страницах официального форума MikroTik. Привожу описание скрипта и переменных.
Сам скрипт нужно настроить под себя, прописав в нём значения переменных. Значения переменных я указал в README на GitHub’е. Большинство значений можно узнать из панели управления доменом в Cloudflare, но для получения значения переменной cfDNSID
необходимо выполнит немного телодвижений.
Для начала в терминале Linux выполнить следующую команду:
curl -X GET "https://api.cloudflare.com/client/v4/zones/API_ZONE_ID/dns_records" \
-H "X-Auth-Email: USER_EMAIL" \
-H "X-Auth-Key: USER_TOKEN" \
-H "Content-Type: application/json" | python -mjson.tool
…соответственно, подставив собственные значения, например (значения фальшивые):
curl -X GET "https://api.cloudflare.com/client/v4/zones/Q7dslfag51U2B3jRpmbxMInDTCoSFYyH/dns_records" \
-H "X-Auth-Email: user@cloudflare.com" \
-H "X-Auth-Key: CcDXmj5lzd9Na3Wi2fQLPvAJIuwUrxF1VnMyS" \
-H "Content-Type: application/json" | python -mjson.tool
Команды вернёт результат в формате JSON, к примеру (результаты фальшивые):
{
"result": [
{
"id": "gJDSG5la4IWNOEVn6K2PHyope8Q9YhzC",
"zone_id": "Q7dslfag51U2B3jRpmbxMInDTCoSFYyH",
"zone_name": "example.com",
"name": "example.com",
"type": "A",
"content": "192.168.10.232",
"proxiable": true,
"proxied": true,
"ttl": 1,
"locked": false,
"meta": {
"auto_added": false,
"managed_by_apps": false,
"managed_by_argo_tunnel": false,
"source": "primary"
},
"created_on": "2020-02-23T21:26:27.56227Z",
"modified_on": "2020-02-23T21:26:27.56227Z"
}
],
"success": true,
"errors": [],
"messages": [],
"result_info": {
"page": 1,
"per_page": 20,
"count": 7,
"total_count": 7,
"total_pages": 1
}
}
Смотрим поле id
и значение этого поля вставляем в переменную cfDNSID
.
На этом всё. Не забываем выдать скрипту необходимые права в панели MikroTik, а также прописать автоматический запуск скрипта через Scheduler.
Категории
Смотрите также
Похожие записи не найдены.