A route tie should preserve uncertainty
Equal prefix length and metric leave multiple route candidates; learn why input order and a static table cannot establish a live next hop.
The original question has two levels
The author asks how IPv6 routes are ranked, then reports a same-subnet reply unexpectedly sent through a gateway. Answers discuss prefix length, metric, and later redirects or cache. Only the declared ranking can be reproduced from the scoped table.
Combining those levels into one diagnosis would turn a valid ranking report into apparent evidence for an unverified live-system cause. The source does not provide all state needed to verify that cause.
Equal prefix and metric do not supply another rule
Two /64 routes with metric 10 remain equal in this model. Choosing the first would invent a third criterion. Keeping both makes the missing policy or packet-selection information visible.
hopLimit likewise supplies no declared preference here. Recording it without using it tells readers precisely which input attributes support the result.
Complete evidence is more useful than one next hop
Every unselected route has a reason: shorter prefix, higher metric, another family or no match. The original lets another reader inspect whether important actual-system fields were omitted.
Terminal actions and mixed ties also prevent a discard route being mistaken for a forwarding next hop. Real troubleshooting still needs actual policy, cache and interface state, without inventing them inside this result.
Use the active native source and retain the handoff
Native route text requires manual structuring into the declared JSON fields. This tool reads one static table and cannot repair a live route, cache, redirect or policy.
Only the active paste/file source is processed. Active filenames allow 512 UTF-8 bytes and MIME labels 128; strict byte-exact originals and provenance SHA256 remain downloadable.
A whole 10-second absolute deadline starts before metadata validation and native file reading and continues through Worker loading and publication. Cancel, timeout or a source change clears every old artifact; retain the same complete source to rerun.
Complete JSON report, formula-safe CSV, original and copy total 16 MiB. Output sizes are reserved before large serialization; typed report/table JSON has a separate 16 MiB work cap. No partial output is published.
| Artifact | Purpose |
|---|---|
| report.json | All routes, destinations, comparisons and provenance |
| routes.csv | Every route/destination comparison; formula-safe quoted cells |
| route-source.json | Byte-exact active JSON source |
| Copy | Complete report, unchanged by preview |
- Choose paste or one native JSON file. Switching source invalidates the old result.
- Review all tied candidates, download the byte-exact source and full report/CSV, then check the actual system separately.
- After unfinished cancel or timeout, rerun the same complete source; a 4,000-codepoint preview does not shorten copy or downloads.
References
- Original request
Complete question, answers and author feedback read. The author asks ranking and reports same-subnet replies through a gateway; this declared-table task explains ranking without determining the live cache/redirect cause.
- Primary implementation reference
ipaddr.js provides address/CIDR parsing; this tool separately declares its single-table ranking model.
Tools in this category
Expand a tool to see its steps, options and supported formats, then open its workspace.
Explain declared route selectionCompare a declared IPv4/IPv6 route table against destinations; retain longest-prefix and metric decisions, equal-rank candidates, terminal actions and every comparison.
Compare a declared IPv4/IPv6 route table against destinations; retain longest-prefix and metric decisions, equal-rank candidates, terminal actions and every comparison.
Steps
- Choose paste or file mode.
- Provide declared routes and destinations.
- Inspect every comparison and all equal-rank candidates.
- Download originals and full JSON/CSV before checking actual system state.
Available options
- Source mode
- Paste · Files
Capabilities and limits
- Explicit paste or one UTF-8 JSON file mode; only the selected mode is processed. Raw input is at most 1 MiB. BOM, malformed UTF-8, duplicate keys and lossy numbers refuse.
- 1–4096 routes and 1–256 destinations; their product is at most 16384. id/interface use 1–128 UTF-16 units; metric is an integer 0–4294967295 and hopLimit an integer 0–255.
- unicast, blackhole, unreachable and prohibit are supported. A unicast nextHop must have the same family. CIDR host-bit normalization is recorded; IPv4-mapped IPv6 stays IPv6.
- Rank by longest prefix, then lowest metric. Keep every equal-rank candidate; order and hopLimit never resolve a tie. Mixed terminal actions remain explicit.
- All complete JSON, CSV, original and copy text total at most 16 MiB. CSV prefixes formula-leading cells with an apostrophe; JSON and original preserve values. Over-budget work refuses atomically.
- The declared table omits actual policy, cache, redirects, interface state and packet-level ECMP. It cannot establish or repair a live packet path.
- Native route text requires manual structuring into the declared JSON fields. This tool reads one static table and cannot repair a live route, cache, redirect or policy.
- Only the active paste/file source is processed. Active filenames allow 512 UTF-8 bytes and MIME labels 128; strict byte-exact originals and provenance SHA256 remain downloadable.
- A whole 10-second absolute deadline starts before metadata validation and native file reading and continues through Worker loading and publication. Cancel, timeout or a source change clears every old artifact; retain the same complete source to rerun.
- Complete JSON report, formula-safe CSV, original and copy total 16 MiB. Output sizes are reserved before large serialization; typed report/table JSON has a separate 16 MiB work cap. No partial output is published.