diff --git a/frontend/src/RouteOptimizerPage.jsx b/frontend/src/RouteOptimizerPage.jsx index b0cf8c1..ef09212 100644 --- a/frontend/src/RouteOptimizerPage.jsx +++ b/frontend/src/RouteOptimizerPage.jsx @@ -320,80 +320,86 @@ export default function RouteOptimizerPage() {
-

Оптимизированные маршруты Home -> JumpHost -> Exit по BGP community

-
- Таблица показывает лучший полный маршрут для каждой community с учетом рекомендованного - gateway на Jumphost. -
-
- - - - - - - - - - - - - {communityFullRoutes.length === 0 ? ( - - - - ) : communityFullRoutes.map((r, idx) => ( - - - - - - - - ))} - -
CommunityМаршрут (Home -> JumpHost -> Exit)СегментыGateway / ДействиеВероятность
Недостаточно данных для построения полных маршрутов по community.
-
{r.community}
- {(r.communityInfo?.name || r.communityInfo?.description) && ( -
{r.communityInfo?.name || r.communityInfo?.description}
- )} -
- {r.home?.label || r.home?.dns || r.home?.ip || 'home'} - - {r.jumphost?.label || r.jumphost?.dns || r.jumphost?.ip || 'jumphost'} - - {r.exit?.label || r.exit?.dns || r.exit?.ip || 'exit'} - -
- H→J: ping {r.homeToJumphost?.pingMs ?? '—'} ms, {fmtSpeed( - r.homeToJumphost?.speedDownloadMbps, - r.homeToJumphost?.speedUploadMbps, - r.homeToJumphost?.speedMbps - )} -
-
- J→E: ping {r.jumphostToExit?.pingMs ?? '—'} ms, {fmtSpeed( - r.jumphostToExit?.speedDownloadMbps, - r.jumphostToExit?.speedUploadMbps, - r.jumphostToExit?.speedMbps - )} -
-
-
{r.recommendedGateway || '—'}
- {r.tunnelGateway &&
{'->'} {r.tunnelGateway}
} -
- {r.pinnedBySettings ? ( - pin - ) : r.shouldSwitch ? ( - switch - ) : ( - ok - )} -
-
-
{fmtProb(r.fullRouteProbability)}
-
score {r.fullRouteScore} / conf {r.fullRouteConfidence ?? '—'}
-
+
+
+

Оптимизированные маршруты Home -> JumpHost -> Exit по BGP community

+
+
+
+ Таблица показывает лучший полный маршрут для каждой community с учетом рекомендованного + gateway на Jumphost. +
+
+ + + + + + + + + + + + + {communityFullRoutes.length === 0 ? ( + + + + ) : communityFullRoutes.map((r, idx) => ( + + + + + + + + ))} + +
CommunityМаршрут (Home -> JumpHost -> Exit)СегментыGateway / ДействиеВероятность
Недостаточно данных для построения полных маршрутов по community.
+
{r.community}
+ {(r.communityInfo?.name || r.communityInfo?.description) && ( +
{r.communityInfo?.name || r.communityInfo?.description}
+ )} +
+ {r.home?.label || r.home?.dns || r.home?.ip || 'home'} + + {r.jumphost?.label || r.jumphost?.dns || r.jumphost?.ip || 'jumphost'} + + {r.exit?.label || r.exit?.dns || r.exit?.ip || 'exit'} + +
+ H→J: ping {r.homeToJumphost?.pingMs ?? '—'} ms, {fmtSpeed( + r.homeToJumphost?.speedDownloadMbps, + r.homeToJumphost?.speedUploadMbps, + r.homeToJumphost?.speedMbps + )} +
+
+ J→E: ping {r.jumphostToExit?.pingMs ?? '—'} ms, {fmtSpeed( + r.jumphostToExit?.speedDownloadMbps, + r.jumphostToExit?.speedUploadMbps, + r.jumphostToExit?.speedMbps + )} +
+
+
{r.recommendedGateway || '—'}
+ {r.tunnelGateway &&
{'->'} {r.tunnelGateway}
} +
+ {r.pinnedBySettings ? ( + pin + ) : r.shouldSwitch ? ( + switch + ) : ( + ok + )} +
+
+
{fmtProb(r.fullRouteProbability)}
+
score {r.fullRouteScore} / conf {r.fullRouteConfidence ?? '—'}
+
+
+