diff --git a/CASCADE.en.md b/CASCADE.en.md index 0e681c3..afe0316 100644 --- a/CASCADE.en.md +++ b/CASCADE.en.md @@ -168,7 +168,7 @@ TABLE_ID=100 # routing table number for "to the exit" FWMARK="0x1" # mark for traffic leaving via awg1 RULE_PRIO=10000 # ip rule priority (uncommon, to avoid collisions) RU_ZONE_URL="https://www.ipdeny.com/ipblocks/data/aggregated/ru-aggregated.zone" -RU_ZONE_FALLBACK_URL="https://raw.githubusercontent.com/bivlked/amneziawg-installer/main/cascade/ru.zone" +RU_ZONE_FALLBACK_URL="https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.18.4/cascade/ru.zone" AWG_DIR="/root/awg" # ============================================= diff --git a/CASCADE.md b/CASCADE.md index 6ca3bbc..1eb82e9 100644 --- a/CASCADE.md +++ b/CASCADE.md @@ -168,7 +168,7 @@ TABLE_ID=100 # номер таблицы маршру FWMARK="0x1" # метка для трафика, уходящего через awg1 RULE_PRIO=10000 # приоритет правила ip rule (нестандартный, чтобы не конфликтовать) RU_ZONE_URL="https://www.ipdeny.com/ipblocks/data/aggregated/ru-aggregated.zone" -RU_ZONE_FALLBACK_URL="https://raw.githubusercontent.com/bivlked/amneziawg-installer/main/cascade/ru.zone" +RU_ZONE_FALLBACK_URL="https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.18.4/cascade/ru.zone" AWG_DIR="/root/awg" # ================================================== diff --git a/cascade/README.md b/cascade/README.md index c35be5a..2aea796 100644 --- a/cascade/README.md +++ b/cascade/README.md @@ -15,6 +15,8 @@ - Сетей: 8626 (IPv4 CIDR, по одной на строку, окончания строк LF) - Данные агрегированы из публичных записей о распределении адресов RIR, редистрибуция разрешена. +Скрипт `awg-routing.sh` из [CASCADE.md](../CASCADE.md) тянет этот файл по URL, закреплённому на тег релиза (`raw.githubusercontent.com/.../vX.Y.Z/cascade/ru.zone`), а не на `main` - так снимок иммутабелен для уже развёрнутых установок. Этот тег обновляется каждый релиз (проверяется `scripts/check-docs-consistency.sh`). + ### Как обновить снимок Обновляйте примерно раз в 6-12 месяцев (российские диапазоны меняются медленно): @@ -40,6 +42,8 @@ with a working RU network list. - Networks: 8626 (IPv4 CIDR, one per line, LF line endings) - The data is aggregated from public RIR allocation records; redistribution is allowed. +The `awg-routing.sh` script in [CASCADE.en.md](../CASCADE.en.md) fetches this file via a URL pinned to the release tag (`raw.githubusercontent.com/.../vX.Y.Z/cascade/ru.zone`), not `main`, so the snapshot is immutable for already-deployed installs. That tag is bumped every release (enforced by `scripts/check-docs-consistency.sh`). + ### Refreshing the snapshot Refresh roughly every 6-12 months (RU allocations change slowly): diff --git a/scripts/check-docs-consistency.sh b/scripts/check-docs-consistency.sh index d261874..9e59590 100644 --- a/scripts/check-docs-consistency.sh +++ b/scripts/check-docs-consistency.sh @@ -241,8 +241,11 @@ if [[ "$stale_fail" -eq 0 ]]; then _ok "SECURITY/CONTRIBUTING не протух # указывать на текущий релиз, иначе copy-paste из README ставит прошлую версию # (регрессия, ради которой добавлена эта проверка). CHANGELOG исключён намеренно - # там теги исторические (точки появления функций/прошлые релизы). +# CASCADE.md/.en.md включены: awg-routing.sh закрепляет тег в fallback-URL снимка +# ru.zone (raw .../vX.Y.Z/cascade/ru.zone). Пин на тег = иммутабельный снимок, а не +# подвижный main; проверка не даёт ему протухнуть на новом релизе (бампать каждый релиз). url_fail=0 -URL_DOCS=(README.md README.en.md ADVANCED.md ADVANCED.en.md INSTALL_VPS.md) +URL_DOCS=(README.md README.en.md ADVANCED.md ADVANCED.en.md INSTALL_VPS.md CASCADE.md CASCADE.en.md) for f in "${URL_DOCS[@]}"; do [[ -f "$f" ]] || continue while IFS= read -r tag; do