Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions routeros/cloudflare-ip-updater.rsc
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,14 @@
# это убирает создание/удаление файла, ожидание загрузки и проверки файла.
:local content ""
:do {
:local result [/tool fetch url=$url output=user as-value]
# check-certificate=no — список публичный, а на роутере может не быть
# импортированного CA-хранилища, из-за чего HTTPS-fetch падает на TLS.
:local result [/tool fetch url=$url check-certificate=no output=user as-value]
:if (($result->"status") = "finished") do={
:set content ($result->"data")
}
} on-error={
:log error "CloudFlare IP updater: Fetch failed"
:log error "CloudFlare IP updater: Fetch failed (check DNS / internet / TLS)"
:error "Fetch failed"
}

Expand Down
10 changes: 8 additions & 2 deletions routeros/docs/cloudflare-ip-updater-obsidian.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,14 @@ add chain=forward src-address-list=CF action=accept comment="allow Cloudflare"

## Возможные проблемы

> [!bug]- Fetch ругается на сертификат
> На старых сборках добавь `check-certificate=no` в команду `fetch` внутри скрипта.
> [!bug]- CloudFlare IP updater: Fetch failed
> Скрипт уже использует `check-certificate=no`, поэтому TLS обычно не виноват. Проверь причину вручную:
> ```routeros
> /tool fetch url="https://www.cloudflare.com/ips-v4/" output=user as-value
> ```
> - `could not resolve` → нет DNS: `/ip dns set servers=1.1.1.1,8.8.8.8`
> - `host unreachable` / `timeout` → у роутера нет маршрута/интернета
> - `tls` / `certificate` → импортируй CA или оставь `check-certificate=no`

> [!bug]- `as-value` не поддерживается
> RouterOS до 6.43 не умеет `fetch output=user as-value`. Нужна версия 6.43+ либо файловый вариант скрипта.
Expand Down
10 changes: 8 additions & 2 deletions routeros/docs/telegram-ip-updater-obsidian.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,14 @@ add chain=forward dst-address-list=TG action=accept comment="allow Telegram"

## Возможные проблемы

> [!bug]- Fetch ругается на сертификат
> На старых сборках добавь `check-certificate=no` в команду `fetch` внутри скрипта.
> [!bug]- Telegram IP updater: Fetch failed
> Скрипт уже использует `check-certificate=no`, поэтому TLS обычно не виноват. Проверь причину вручную:
> ```routeros
> /tool fetch url="https://core.telegram.org/resources/cidr.txt" output=user as-value
> ```
> - `could not resolve` → нет DNS: `/ip dns set servers=1.1.1.1,8.8.8.8`
> - `host unreachable` / `timeout` → у роутера нет маршрута/интернета
> - `tls` / `certificate` → импортируй CA или оставь `check-certificate=no`

> [!bug]- `as-value` не поддерживается
> RouterOS до 6.43 не умеет `fetch output=user as-value`. Нужна версия 6.43+ либо файловый вариант скрипта.
Expand Down
6 changes: 4 additions & 2 deletions routeros/telegram-ip-updater.rsc
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,14 @@
# это убирает создание/удаление файла, ожидание загрузки и проверки файла.
:local content ""
:do {
:local result [/tool fetch url=$url output=user as-value]
# check-certificate=no — список публичный, а на роутере может не быть
# импортированного CA-хранилища, из-за чего HTTPS-fetch падает на TLS.
:local result [/tool fetch url=$url check-certificate=no output=user as-value]
:if (($result->"status") = "finished") do={
:set content ($result->"data")
}
} on-error={
:log error "Telegram IP updater: Fetch failed"
:log error "Telegram IP updater: Fetch failed (check DNS / internet / TLS)"
:error "Fetch failed"
}

Expand Down
Loading