chore(test): подтвердить BFD и восстановление OSPF на стенде
This commit is contained in:
1 parent
c35272273b
commit
2e1586e4d4
12 files changed
+583
-3
No files matched your search
@@ -16,6 +16,8 @@ Routing83: disabled BGP/OSPF selected/raw409/probe0 и собственная eB
|
||||
|
||||
OSPF84: real GRE Full adjacency/private routes/Ping3/3 и4 live PC/320px URL/browser checks приняты. Exact own cleanup и исходные7 коллекций×2 passed; runtime routing83 без новой сборки. [Отчёт](ux-ui/acceptance/ospf-gre-2026-10-09.json).
|
||||
|
||||
BFD85: Up/Full/own route/Ping,4 live UI и loss/withdrawal/recovery приняты; exact own cleanup8 коллекций×2 passed. Withdrawal5,245ms не подтверждает sub-second BFD timing; этот вопрос открыт. Runtime routing83 без новой сборки. [Отчёт](ux-ui/acceptance/ospf-bfd-loss-2026-10-09.json).
|
||||
|
||||
## Паспорт стенда
|
||||
|
||||
Перед внешним запуском зафиксировать отдельные PostgreSQL и RouterOS тестовые устройства, версии server/client PostgreSQL и RouterOS, HEAD backend/frontend, роли пользователей, число экземпляров backend/планировщика/отправителей и способ их остановки. Для Telegram использовать тестовый чат, для остальных интеграций — тестовые endpoints и учётные записи. Зафиксировать ожидаемые изменения и способ восстановления стенда.
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
# План реализации UX/UI по пятичасовым окнам
|
||||
|
||||
Актуальное продолжение 2026-10-09: 12.5.84 принял реальную OSPFv2 Full adjacency и частные loopback routes через собственный GRE, Ping3/3 в обе стороны и4 live browser PC/320px URL-сценария. Все собственные объекты удалены, baseline7 коллекций×2 восстановлен. Runtime backend ux-routing83/frontend ux-ipsec77, без новой сборки. Следующий12.5.85 — BFD на собственной OSPF/GRE паре; этап12.5 открыт.
|
||||
Актуальное продолжение 2026-10-09: 12.5.85 принял BFD Up на своей OSPF/GRE паре,4 live PC/320px UI checks и loss/withdrawal/recovery. Exact baseline8 коллекций×2 восстановлен. Наблюдение route withdrawal5,245ms не доказывает sub-second detection; timing/failover остаются открытыми. Runtime backend ux-routing83/frontend ux-ipsec77. Следующий12.5.86 — точный разбор BFD/OSPF/SPF timing и оставшиеся optimizer/recursive diagnostics по плану. Квота контрольной точки96%, работа остановлена после сохранения результата; этап12.5 открыт.
|
||||
|
||||
Общий план проекта MikrotikManager. Основан на согласованном плане из задачи; точка продолжения обновлена 2026-10-09. Источник фактического прогресса, проверок и ограничений — [журнал реализации](ux-ui-progress.md). Этот документ задаёт объём и критерии завершения, журнал фиксирует результат.
|
||||
|
||||
|
||||
+18
-2
@@ -1,6 +1,6 @@
|
||||
# UX/UI: журнал реализации
|
||||
|
||||
Актуальное продолжение 2026-10-09: 12.5.84 принял реальную OSPFv2 Full adjacency и частные loopback routes через собственный GRE, Ping3/3 в обе стороны и4 live browser PC/320px URL-сценария. Все собственные объекты удалены, baseline7 коллекций×2 восстановлен. Runtime backend ux-routing83/frontend ux-ipsec77, без новой сборки. Следующий12.5.85 — BFD на собственной OSPF/GRE паре; этап12.5 открыт.
|
||||
Актуальное продолжение 2026-10-09: 12.5.85 принял BFD Up на своей OSPF/GRE паре,4 live PC/320px UI checks и loss/withdrawal/recovery. Exact baseline8 коллекций×2 восстановлен. Наблюдение route withdrawal5,245ms не доказывает sub-second detection; timing/failover остаются открытыми. Runtime backend ux-routing83/frontend ux-ipsec77. Следующий12.5.86 — точный разбор BFD/OSPF/SPF timing и оставшиеся optimizer/recursive diagnostics по плану. Квота контрольной точки96%, работа остановлена после сохранения результата; этап12.5 открыт.
|
||||
|
||||
Общий план: [UX/UI по этапам и пятичасовым окнам](ux-ui-plan.md). План задаёт объём, этот журнал фиксирует выполненные блоки и ограничения. Записи расположены от новых к старым; подробная история этапа12 также сохранена в [ux-ui-stage-12.md](ux-ui-stage-12.md).
|
||||
|
||||
@@ -36,7 +36,23 @@
|
||||
| 10 | Маршрутизация, диагностика, карта и терминал | Завершён в границах локальной приёмки 2026-10-01; блоки 10.1–10.71, внешние ограничения в 10.71 |
|
||||
| 11А | Пользователи, контейнеры, сертификаты и резервные копии | Завершён в границах локальной приёмки 2026-10-01; 11А.1–11А.33, внешние ограничения в 11А.33 |
|
||||
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Завершён в границах локальной приёмки 2026-10-03; ограничения и evidence в11Б.7 |
|
||||
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Локальная приёмка завершена в границах12.3.83; внешняя12.5 в работе, выполненные блоки1–84 и ограничения ниже. Runtime backend ux-routing83/frontend ux-ipsec77. |
|
||||
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Локальная приёмка завершена в границах12.3.83; внешняя12.5 в работе, выполненные блоки1–85 и ограничения ниже. Runtime backend ux-routing83/frontend ux-ipsec77. |
|
||||
|
||||
## 12.5.85 — BFD: реальные Up, потеря GRE и восстановление (2026-10-09)
|
||||
|
||||
**Конфигурация.** Собственная GRE/OSPFv2 пара по шаблону84, link198.18.85.1/30↔2/30, loopback198.18.185.1/32↔2/32. Свои BFD configurations только для точного GRE и private subnet, min-rx/min-tx200ms/multiplier3; OSPF GRE template use-bfd=yes. Public/default routes/interfaces и foreign BFD config не менялись, default originate/redistribution не включались.
|
||||
|
||||
**Native/API.** BFD state up, multihop=false, multiplier3 и packets-rx/tx растут на обоих CHR. Main catalog Up, интервалы/hold поля200/200/600ms и counters корректны; RX minimum — требуемый minimum, не измерение межпакетного времени. OSPF Full, own loopback route active, Ping3/3 в обе стороны. [Up отчёт](ux-ui/acceptance/ospf-bfd-2026-10-09.json).
|
||||
|
||||
**Браузер.** Настоящий backend/frontend, Headless Edge, два устройства×1280/320:4/4 без pageerror. BFD/private peer DOM и selected button/URL, learned route и reload context проверены, document fits. Для BFD table screenshot выполнена внутренняя прокрутка к peer; просмотр mobile подтвердил видимую таблицу/Up и объяснение TX fact/RX minimum. [Browser отчёт](ux-ui/acceptance/browser-ospf-bfd-2026-10-09.json), экраны ospf-real-bfd-server1/2-1280/320-2026-10-09.png.
|
||||
|
||||
**Loss/recovery.** Повторная собственная пара без browser wait: временно отключён только свой GRE наCHR1. НаCHR2 нет BFD Up/OSPF Full, remote private route больше не active; API согласован. Включение GRE восстановило Full и active route. Первая проверка требовала постоянную строку Down и отказалась: dynamic session удаляется после потери OSPF пользователя. Критерий исправлен на отсутствие Up + отсутствие Full + withdrawal, исчезновение записи не выдаётся за наблюдённый Down. [Loss/recovery отчёт](ux-ui/acceptance/ospf-bfd-loss-2026-10-09.json).
|
||||
|
||||
HTTP sampling показал withdrawal за5245ms при OSPF dead interval4000ms; beforeDeadInterval=false. Это включает RPC/SPF/convergence и не подтверждает sub-second detection или преимущество перед Hello/Dead. Причину/latency требуется разбирать отдельно по событиям и SPF timing, не обещать BFD performance по nominal600ms hold. Alternate-path failover не тестировался.
|
||||
|
||||
**Очистка и фиксация.** На каждом run exact returned ID и name/comment/address/interface/interfaces сверены до удаления. OSPF templates/areas/instances, own BFD config/IP/bridge/GRE удалены; затем bounded route convergence и исходные IDs8 коллекций×2 совпали. Loss run тоже cleanup passed/error=null. Credentials прежние;195.195.195.195/32/default routes сохранены. Production backend routing83/PG healthy, frontend ipsec77 Up; временных контейнеров/fixture DB записей не осталось. UI/source/dependencies не менялись, сборки/миграции не запускались. Один локальный commit без push.
|
||||
|
||||
Продолжение86: проверить раздельно BFD event и SPF withdrawal timing, затем профильные optimizer/recursive diagnostics, routing failover/масштаб в согласованных границах. Сохраняются Portal SSO/browser auth, multi-instance/physical disconnect/durable retry, client OS/IPv6/сложные DN/maximum throughput/полный PKI-policy restore ограничения82. Контрольная квота96%, дальнейшие mutations в этом окне не начинать. [MikroTik BFD](https://help.mikrotik.com/docs/spaces/ROS/pages/191299691/BFD) подтверждает отдельную configuration и use-bfd; acceptance основана на настоящем API и native состояниях.
|
||||
|
||||
## 12.5.84 — OSPF: Full adjacency, GRE и реальная таблица (2026-10-09)
|
||||
|
||||
|
||||
@@ -1996,3 +1996,19 @@ flowchart LR
|
||||
**Очистка.** Exact receipt ID/name/comment/address/interface проверены до удаления. Templates→areas→instances, свои IP/bridge/GRE удалены; контроль обеих сторон после удаления всей пары и bounded route convergence. Исходные ID7 коллекций×2 совпали, адрес195.195.195.195/32 и public/default routes сохранены. Credentials не менялись. Сборок/миграций/смены runtime не было; backend ux-routing83/version1.0.0-test.routing83 healthy, frontend ux-ipsec77. Один локальный commit без push, только evidence/docs.
|
||||
|
||||
Следующий85 — разрешение BFD только на своих GRE/private peers и Up/control-plane checks. Не приняты BFD/failover/optimizer/масштаб/IPv6 и остальные внешние границы. Механика instance/area/template подтверждена [MikroTik OSPF](https://help.mikrotik.com/docs/spaces/ROS/pages/9863229/OSPF); таблицы/Frame сохраняют общие референсы плана.
|
||||
|
||||
## 12.5.85 — BFD: реальные Up, потеря GRE и восстановление (2026-10-09)
|
||||
|
||||
**Конфигурация.** Собственная GRE/OSPFv2 пара по шаблону84, link198.18.85.1/30↔2/30, loopback198.18.185.1/32↔2/32. Свои BFD configurations только для точного GRE и private subnet, min-rx/min-tx200ms/multiplier3; OSPF GRE template use-bfd=yes. Public/default routes/interfaces и foreign BFD config не менялись, default originate/redistribution не включались.
|
||||
|
||||
**Native/API.** BFD state up, multihop=false, multiplier3 и packets-rx/tx растут на обоих CHR. Main catalog Up, интервалы/hold поля200/200/600ms и counters корректны; RX minimum — требуемый minimum, не измерение межпакетного времени. OSPF Full, own loopback route active, Ping3/3 в обе стороны. [Up отчёт](ux-ui/acceptance/ospf-bfd-2026-10-09.json).
|
||||
|
||||
**Браузер.** Настоящий backend/frontend, Headless Edge, два устройства×1280/320:4/4 без pageerror. BFD/private peer DOM и selected button/URL, learned route и reload context проверены, document fits. Для BFD table screenshot выполнена внутренняя прокрутка к peer; просмотр mobile подтвердил видимую таблицу/Up и объяснение TX fact/RX minimum. [Browser отчёт](ux-ui/acceptance/browser-ospf-bfd-2026-10-09.json), экраны ospf-real-bfd-server1/2-1280/320-2026-10-09.png.
|
||||
|
||||
**Loss/recovery.** Повторная собственная пара без browser wait: временно отключён только свой GRE наCHR1. НаCHR2 нет BFD Up/OSPF Full, remote private route больше не active; API согласован. Включение GRE восстановило Full и active route. Первая проверка требовала постоянную строку Down и отказалась: dynamic session удаляется после потери OSPF пользователя. Критерий исправлен на отсутствие Up + отсутствие Full + withdrawal, исчезновение записи не выдаётся за наблюдённый Down. [Loss/recovery отчёт](ux-ui/acceptance/ospf-bfd-loss-2026-10-09.json).
|
||||
|
||||
HTTP sampling показал withdrawal за5245ms при OSPF dead interval4000ms; beforeDeadInterval=false. Это включает RPC/SPF/convergence и не подтверждает sub-second detection или преимущество перед Hello/Dead. Причину/latency требуется разбирать отдельно по событиям и SPF timing, не обещать BFD performance по nominal600ms hold. Alternate-path failover не тестировался.
|
||||
|
||||
**Очистка и фиксация.** На каждом run exact returned ID и name/comment/address/interface/interfaces сверены до удаления. OSPF templates/areas/instances, own BFD config/IP/bridge/GRE удалены; затем bounded route convergence и исходные IDs8 коллекций×2 совпали. Loss run тоже cleanup passed/error=null. Credentials прежние;195.195.195.195/32/default routes сохранены. Production backend routing83/PG healthy, frontend ipsec77 Up; временных контейнеров/fixture DB записей не осталось. UI/source/dependencies не менялись, сборки/миграции не запускались. Один локальный commit без push.
|
||||
|
||||
Продолжение86: проверить раздельно BFD event и SPF withdrawal timing, затем профильные optimizer/recursive diagnostics, routing failover/масштаб в согласованных границах. Сохраняются Portal SSO/browser auth, multi-instance/physical disconnect/durable retry, client OS/IPv6/сложные DN/maximum throughput/полный PKI-policy restore ограничения82. Контрольная квота96%, дальнейшие mutations в этом окне не начинать. [MikroTik BFD](https://help.mikrotik.com/docs/spaces/ROS/pages/191299691/BFD) подтверждает отдельную configuration и use-bfd; acceptance основана на настоящем API и native состояниях.
|
||||
@@ -32,6 +32,8 @@ Routing83: disabled BGP/OSPF selected/raw409/probe0 и собственная eB
|
||||
|
||||
OSPF84: real GRE Full adjacency/private routes/Ping3/3 и4 live PC/320px URL/browser checks приняты. Exact own cleanup и исходные7 коллекций×2 passed; runtime routing83 без новой сборки. [Отчёт](ux-ui/acceptance/ospf-gre-2026-10-09.json).
|
||||
|
||||
BFD85: Up/Full/own route/Ping,4 live UI и loss/withdrawal/recovery приняты; exact own cleanup8 коллекций×2 passed. Withdrawal5,245ms не подтверждает sub-second BFD timing; этот вопрос открыт. Runtime routing83 без новой сборки. [Отчёт](ux-ui/acceptance/ospf-bfd-loss-2026-10-09.json).
|
||||
|
||||
## Развёртывание приложения
|
||||
|
||||
Чистые frontend/backend build contexts подготовлены по .gitea/workflows/docker.yml из закреплённого Git HEAD;образы собраны на сервере без push. Локально docker CLI сейчас отсутствует, на сервере доступен Docker. В корневом .dockerignore исключён backend, поэтому обычный backend build из корня не повторяет CI: использовать отдельный backend context, как main workflow. Не передавать .env.local,backend/.env,ключи и локальные node_modules/.next.
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
{
|
||||
"date": "2026-10-09",
|
||||
"phase": "2 320",
|
||||
"cases": [
|
||||
{
|
||||
"serverId": 1,
|
||||
"width": 1280,
|
||||
"neighborVisible": true,
|
||||
"learnedRouteVisible": true,
|
||||
"urlRestore": true,
|
||||
"documentFits": true
|
||||
},
|
||||
{
|
||||
"serverId": 1,
|
||||
"width": 320,
|
||||
"neighborVisible": true,
|
||||
"learnedRouteVisible": true,
|
||||
"urlRestore": true,
|
||||
"documentFits": true
|
||||
},
|
||||
{
|
||||
"serverId": 2,
|
||||
"width": 1280,
|
||||
"neighborVisible": true,
|
||||
"learnedRouteVisible": true,
|
||||
"urlRestore": true,
|
||||
"documentFits": true
|
||||
},
|
||||
{
|
||||
"serverId": 2,
|
||||
"width": 320,
|
||||
"neighborVisible": true,
|
||||
"learnedRouteVisible": true,
|
||||
"urlRestore": true,
|
||||
"documentFits": true
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
}
|
||||
@@ -0,0 +1,247 @@
|
||||
{
|
||||
"date": "2026-10-09",
|
||||
"name": "mm-ospf85-1791542472111",
|
||||
"observations": [
|
||||
{
|
||||
"serverId": 1,
|
||||
"nativeNeighbor": {
|
||||
".id": "*F3FDDC00",
|
||||
"router-id": "198.18.185.2",
|
||||
"address": "198.18.85.2",
|
||||
"interface": "mm-ospf85-1791542472111",
|
||||
"state": "Full",
|
||||
"state-changes": "6"
|
||||
},
|
||||
"nativeRoute": {
|
||||
".id": "*2014C000",
|
||||
"dst-address": "198.18.185.2/32",
|
||||
"gateway": "198.18.85.2%mm-ospf85-1791542472111",
|
||||
"ospf": "true",
|
||||
"active": "true",
|
||||
"distance": "110"
|
||||
},
|
||||
"catalogNeighbors": [
|
||||
{
|
||||
"id": "*F3FDDC00",
|
||||
"serverId": 1,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"serverCountry": "",
|
||||
"address": "198.18.85.2",
|
||||
"routerId": "198.18.185.2",
|
||||
"instance": "mm-ospf85-1791542472111",
|
||||
"area": "mm-ospf85-1791542472111",
|
||||
"areaId": "0.0.0.0",
|
||||
"interface": "mm-ospf85-1791542472111",
|
||||
"state": "Full",
|
||||
"uptime": "3s",
|
||||
"stateChanges": 6,
|
||||
"priority": null
|
||||
}
|
||||
],
|
||||
"catalogRoutes": [
|
||||
{
|
||||
"id": "*2014C000",
|
||||
"serverId": 1,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"destination": "198.18.185.2/32",
|
||||
"type": "Unknown",
|
||||
"cost": null,
|
||||
"nextHop": "198.18.85.2",
|
||||
"via": "mm-ospf85-1791542472111",
|
||||
"area": ""
|
||||
}
|
||||
],
|
||||
"pingReceived": 3
|
||||
},
|
||||
{
|
||||
"serverId": 2,
|
||||
"nativeNeighbor": {
|
||||
".id": "*F3FDDC00",
|
||||
"router-id": "198.18.185.1",
|
||||
"address": "198.18.85.1",
|
||||
"interface": "mm-ospf85-1791542472111",
|
||||
"state": "Full",
|
||||
"state-changes": "5"
|
||||
},
|
||||
"nativeRoute": {
|
||||
".id": "*2014C000",
|
||||
"dst-address": "198.18.185.1/32",
|
||||
"gateway": "198.18.85.1%mm-ospf85-1791542472111",
|
||||
"ospf": "true",
|
||||
"active": "true",
|
||||
"distance": "110"
|
||||
},
|
||||
"catalogNeighbors": [
|
||||
{
|
||||
"id": "*F3FDDC00",
|
||||
"serverId": 2,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"serverCountry": "",
|
||||
"address": "198.18.85.1",
|
||||
"routerId": "198.18.185.1",
|
||||
"instance": "mm-ospf85-1791542472111",
|
||||
"area": "mm-ospf85-1791542472111",
|
||||
"areaId": "0.0.0.0",
|
||||
"interface": "mm-ospf85-1791542472111",
|
||||
"state": "Full",
|
||||
"uptime": "3s",
|
||||
"stateChanges": 5,
|
||||
"priority": null
|
||||
}
|
||||
],
|
||||
"catalogRoutes": [
|
||||
{
|
||||
"id": "*2014C000",
|
||||
"serverId": 2,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"destination": "198.18.185.1/32",
|
||||
"type": "Unknown",
|
||||
"cost": null,
|
||||
"nextHop": "198.18.85.1",
|
||||
"via": "mm-ospf85-1791542472111",
|
||||
"area": ""
|
||||
}
|
||||
],
|
||||
"pingReceived": 3
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
{
|
||||
"serverId": 1,
|
||||
"/routing/bfd/configuration": true,
|
||||
"/routing/ospf/interface-template": true,
|
||||
"/routing/ospf/area": true,
|
||||
"/routing/ospf/instance": true,
|
||||
"/interface/gre": true,
|
||||
"/interface/bridge": true,
|
||||
"/ip/address": true,
|
||||
"/ip/route": true
|
||||
},
|
||||
{
|
||||
"serverId": 2,
|
||||
"/routing/bfd/configuration": true,
|
||||
"/routing/ospf/interface-template": true,
|
||||
"/routing/ospf/area": true,
|
||||
"/routing/ospf/instance": true,
|
||||
"/interface/gre": true,
|
||||
"/interface/bridge": true,
|
||||
"/ip/address": true,
|
||||
"/ip/route": true
|
||||
}
|
||||
],
|
||||
"currentRoutes": [
|
||||
{
|
||||
".id": "*20145050",
|
||||
"dst-address": "198.18.85.0/30",
|
||||
"gateway": "mm-ospf85-1791542472111",
|
||||
"active": "true",
|
||||
"distance": "0",
|
||||
"routing-table": "main"
|
||||
},
|
||||
{
|
||||
".id": "*2014C000",
|
||||
"dst-address": "198.18.185.1/32",
|
||||
"gateway": "198.18.85.1%mm-ospf85-1791542472111",
|
||||
"active": "true",
|
||||
"ospf": "true",
|
||||
"distance": "110",
|
||||
"routing-table": "main"
|
||||
},
|
||||
{
|
||||
".id": "*20145060",
|
||||
"dst-address": "198.18.185.2/32",
|
||||
"gateway": "mm-ospf85-1791542472111-loop",
|
||||
"active": "true",
|
||||
"distance": "0",
|
||||
"routing-table": "main"
|
||||
}
|
||||
],
|
||||
"bfd": [
|
||||
{
|
||||
"serverId": 1,
|
||||
"native": [
|
||||
{
|
||||
".id": "*1",
|
||||
"state": "up",
|
||||
"remote-address": "198.18.85.2%mm-ospf85-1791542472111",
|
||||
"local-address": "198.18.85.1%mm-ospf85-1791542472111",
|
||||
"desired-tx-interval": "200ms",
|
||||
"required-min-rx": "200ms",
|
||||
"remote-min-rx": "200ms",
|
||||
"multiplier": "3",
|
||||
"packets-rx": "20",
|
||||
"packets-tx": "18",
|
||||
"state-changes": "2",
|
||||
"multihop": "false"
|
||||
}
|
||||
],
|
||||
"catalog": [
|
||||
{
|
||||
"id": "*1",
|
||||
"serverId": 1,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"serverCountry": "",
|
||||
"localAddr": "198.18.85.1",
|
||||
"remoteAddr": "198.18.85.2",
|
||||
"interface": "mm-ospf85-1791542472111",
|
||||
"state": "Up",
|
||||
"uptime": "2s",
|
||||
"multihop": false,
|
||||
"multiplier": 3,
|
||||
"txInterval": 200,
|
||||
"rxInterval": 200,
|
||||
"holdTime": 600,
|
||||
"packetsRx": 17,
|
||||
"packetsTx": 14,
|
||||
"stateChanges": 2
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"serverId": 2,
|
||||
"native": [
|
||||
{
|
||||
".id": "*1",
|
||||
"state": "up",
|
||||
"remote-address": "198.18.85.1%mm-ospf85-1791542472111",
|
||||
"local-address": "198.18.85.2%mm-ospf85-1791542472111",
|
||||
"desired-tx-interval": "200ms",
|
||||
"required-min-rx": "200ms",
|
||||
"remote-min-rx": "200ms",
|
||||
"multiplier": "3",
|
||||
"packets-rx": "20",
|
||||
"packets-tx": "25",
|
||||
"state-changes": "1",
|
||||
"multihop": "false"
|
||||
}
|
||||
],
|
||||
"catalog": [
|
||||
{
|
||||
"id": "*1",
|
||||
"serverId": 2,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"serverCountry": "",
|
||||
"localAddr": "198.18.85.2",
|
||||
"remoteAddr": "198.18.85.1",
|
||||
"interface": "mm-ospf85-1791542472111",
|
||||
"state": "Up",
|
||||
"uptime": "3s",
|
||||
"multihop": false,
|
||||
"multiplier": 3,
|
||||
"txInterval": 200,
|
||||
"rxInterval": 200,
|
||||
"holdTime": 600,
|
||||
"packetsRx": 12,
|
||||
"packetsTx": 17,
|
||||
"stateChanges": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,258 @@
|
||||
{
|
||||
"date": "2026-10-09",
|
||||
"name": "mm-ospf85-1791543377687",
|
||||
"observations": [
|
||||
{
|
||||
"serverId": 1,
|
||||
"nativeNeighbor": {
|
||||
".id": "*F3FDDC00",
|
||||
"router-id": "198.18.185.2",
|
||||
"address": "198.18.85.2",
|
||||
"interface": "mm-ospf85-1791543377687",
|
||||
"state": "Full",
|
||||
"state-changes": "6"
|
||||
},
|
||||
"nativeRoute": {
|
||||
".id": "*2014C000",
|
||||
"dst-address": "198.18.185.2/32",
|
||||
"gateway": "198.18.85.2%mm-ospf85-1791543377687",
|
||||
"ospf": "true",
|
||||
"active": "true",
|
||||
"distance": "110"
|
||||
},
|
||||
"catalogNeighbors": [
|
||||
{
|
||||
"id": "*F3FDDC00",
|
||||
"serverId": 1,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"serverCountry": "",
|
||||
"address": "198.18.85.2",
|
||||
"routerId": "198.18.185.2",
|
||||
"instance": "mm-ospf85-1791543377687",
|
||||
"area": "mm-ospf85-1791543377687",
|
||||
"areaId": "0.0.0.0",
|
||||
"interface": "mm-ospf85-1791543377687",
|
||||
"state": "Full",
|
||||
"uptime": "3s",
|
||||
"stateChanges": 6,
|
||||
"priority": null
|
||||
}
|
||||
],
|
||||
"catalogRoutes": [
|
||||
{
|
||||
"id": "*2014C000",
|
||||
"serverId": 1,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"destination": "198.18.185.2/32",
|
||||
"type": "Unknown",
|
||||
"cost": null,
|
||||
"nextHop": "198.18.85.2",
|
||||
"via": "mm-ospf85-1791543377687",
|
||||
"area": ""
|
||||
}
|
||||
],
|
||||
"pingReceived": 3
|
||||
},
|
||||
{
|
||||
"serverId": 2,
|
||||
"nativeNeighbor": {
|
||||
".id": "*F3FDDC00",
|
||||
"router-id": "198.18.185.1",
|
||||
"address": "198.18.85.1",
|
||||
"interface": "mm-ospf85-1791543377687",
|
||||
"state": "Full",
|
||||
"state-changes": "5"
|
||||
},
|
||||
"nativeRoute": {
|
||||
".id": "*2014C000",
|
||||
"dst-address": "198.18.185.1/32",
|
||||
"gateway": "198.18.85.1%mm-ospf85-1791543377687",
|
||||
"ospf": "true",
|
||||
"active": "true",
|
||||
"distance": "110"
|
||||
},
|
||||
"catalogNeighbors": [
|
||||
{
|
||||
"id": "*F3FDDC00",
|
||||
"serverId": 2,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"serverCountry": "",
|
||||
"address": "198.18.85.1",
|
||||
"routerId": "198.18.185.1",
|
||||
"instance": "mm-ospf85-1791543377687",
|
||||
"area": "mm-ospf85-1791543377687",
|
||||
"areaId": "0.0.0.0",
|
||||
"interface": "mm-ospf85-1791543377687",
|
||||
"state": "Full",
|
||||
"uptime": "3s",
|
||||
"stateChanges": 5,
|
||||
"priority": null
|
||||
}
|
||||
],
|
||||
"catalogRoutes": [
|
||||
{
|
||||
"id": "*2014C000",
|
||||
"serverId": 2,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"destination": "198.18.185.1/32",
|
||||
"type": "Unknown",
|
||||
"cost": null,
|
||||
"nextHop": "198.18.85.1",
|
||||
"via": "mm-ospf85-1791543377687",
|
||||
"area": ""
|
||||
}
|
||||
],
|
||||
"pingReceived": 3
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
{
|
||||
"serverId": 1,
|
||||
"/routing/bfd/configuration": true,
|
||||
"/routing/ospf/interface-template": true,
|
||||
"/routing/ospf/area": true,
|
||||
"/routing/ospf/instance": true,
|
||||
"/interface/gre": true,
|
||||
"/interface/bridge": true,
|
||||
"/ip/address": true,
|
||||
"/ip/route": true
|
||||
},
|
||||
{
|
||||
"serverId": 2,
|
||||
"/routing/bfd/configuration": true,
|
||||
"/routing/ospf/interface-template": true,
|
||||
"/routing/ospf/area": true,
|
||||
"/routing/ospf/instance": true,
|
||||
"/interface/gre": true,
|
||||
"/interface/bridge": true,
|
||||
"/ip/address": true,
|
||||
"/ip/route": true
|
||||
}
|
||||
],
|
||||
"currentRoutes": [
|
||||
{
|
||||
".id": "*20145050",
|
||||
"dst-address": "198.18.85.0/30",
|
||||
"gateway": "mm-ospf85-1791543377687",
|
||||
"active": "true",
|
||||
"distance": "0",
|
||||
"routing-table": "main"
|
||||
},
|
||||
{
|
||||
".id": "*2014C000",
|
||||
"dst-address": "198.18.185.1/32",
|
||||
"gateway": "198.18.85.1%mm-ospf85-1791543377687",
|
||||
"active": "true",
|
||||
"ospf": "true",
|
||||
"distance": "110",
|
||||
"routing-table": "main"
|
||||
},
|
||||
{
|
||||
".id": "*20145060",
|
||||
"dst-address": "198.18.185.2/32",
|
||||
"gateway": "mm-ospf85-1791543377687-loop",
|
||||
"active": "true",
|
||||
"distance": "0",
|
||||
"routing-table": "main"
|
||||
}
|
||||
],
|
||||
"bfd": [
|
||||
{
|
||||
"serverId": 1,
|
||||
"native": [
|
||||
{
|
||||
".id": "*1",
|
||||
"state": "up",
|
||||
"remote-address": "198.18.85.2%mm-ospf85-1791543377687",
|
||||
"local-address": "198.18.85.1%mm-ospf85-1791543377687",
|
||||
"desired-tx-interval": "200ms",
|
||||
"required-min-rx": "200ms",
|
||||
"remote-min-rx": "200ms",
|
||||
"multiplier": "3",
|
||||
"packets-rx": "17",
|
||||
"packets-tx": "16",
|
||||
"state-changes": "2",
|
||||
"multihop": "false"
|
||||
}
|
||||
],
|
||||
"catalog": [
|
||||
{
|
||||
"id": "*1",
|
||||
"serverId": 1,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"serverCountry": "",
|
||||
"localAddr": "198.18.85.1",
|
||||
"remoteAddr": "198.18.85.2",
|
||||
"interface": "mm-ospf85-1791543377687",
|
||||
"state": "Up",
|
||||
"uptime": "2s",
|
||||
"multihop": false,
|
||||
"multiplier": 3,
|
||||
"txInterval": 200,
|
||||
"rxInterval": 200,
|
||||
"holdTime": 600,
|
||||
"packetsRx": 13,
|
||||
"packetsTx": 12,
|
||||
"stateChanges": 2
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"serverId": 2,
|
||||
"native": [
|
||||
{
|
||||
".id": "*1",
|
||||
"state": "up",
|
||||
"remote-address": "198.18.85.1%mm-ospf85-1791543377687",
|
||||
"local-address": "198.18.85.2%mm-ospf85-1791543377687",
|
||||
"desired-tx-interval": "200ms",
|
||||
"required-min-rx": "200ms",
|
||||
"remote-min-rx": "200ms",
|
||||
"multiplier": "3",
|
||||
"packets-rx": "19",
|
||||
"packets-tx": "22",
|
||||
"state-changes": "1",
|
||||
"multihop": "false"
|
||||
}
|
||||
],
|
||||
"catalog": [
|
||||
{
|
||||
"id": "*1",
|
||||
"serverId": 2,
|
||||
"serverName": "CHR",
|
||||
"serverSite": "",
|
||||
"serverCountry": "",
|
||||
"localAddr": "198.18.85.2",
|
||||
"remoteAddr": "198.18.85.1",
|
||||
"interface": "mm-ospf85-1791543377687",
|
||||
"state": "Up",
|
||||
"uptime": "3s",
|
||||
"multihop": false,
|
||||
"multiplier": 3,
|
||||
"txInterval": 200,
|
||||
"rxInterval": 200,
|
||||
"holdTime": 600,
|
||||
"packetsRx": 12,
|
||||
"packetsTx": 13,
|
||||
"stateChanges": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"failureDetection": {
|
||||
"ownedGreDisabled": true,
|
||||
"peerBfdNotUp": true,
|
||||
"privateRouteWithdrawn": true,
|
||||
"elapsedMs": 5245,
|
||||
"deadIntervalMs": 4000,
|
||||
"apiNotUp": true,
|
||||
"apiNeighborNotFull": true,
|
||||
"beforeDeadInterval": false,
|
||||
"fullAndRouteRecovered": true
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 120 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 47 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 121 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 47 KiB |
Reference in new issue
Block a user