summaryrefslogtreecommitdiff
path: root/docs
AgeCommit message (Collapse)Author
3 daysMerge rolling into claude/pdf-image-conversion (combine constrained apt ↡Yuriy Andamasov
line: imagemagick, librsvg2-bin, poppler-utils) πŸ€– Generated by [robots](https://vyos.io)
4 daysdocs-infra: convert webp/svg images for PDF builds (sphinx.ext.imgconverter ↡Yuriy Andamasov
+ ImageMagick/librsvg) πŸ€– Generated by [robots](https://vyos.io)
4 daysdocs(DMVPN): T4667: Add firewall rule to prevent unencrypted GRE leaks (#2136)zdc
* docs(DMVPN): T4667: Add firewall rule to prevent unencrypted GRE leaks In DMVPN the mGRE tunnel and the IPSec protecting it are handled independently, so GRE can be forwarded while no IPSec SA is active for a peer (e.g. while an SA is still being negotiated or after one expires), allowing unencrypted GRE to leave the router. This is inherent to combining GRE with IPSec and is common to DMVPN implementations in general. Add a "Protecting against unencrypted traffic leaks" section to the DMVPN reference page explaining the behaviour and recommending an output filter rule that drops GRE not matched by an outbound IPSec policy (ipsec match-none-out). Note that this disables unencrypted GRE on the node entirely, so coexisting plain GRE tunnels would stop working. Apply the same rule in the Dual HUB Dual Cloud example on the VyOS nodes. Co-authored-by: Daniil Baturin <daniil@baturin.org> * docs(DMVPN): reflow DMVPN documentation for line length compliance Reformat the DMVPN guide and dual-hub dual-cloud example to wrap long lines and improve readability without changing the documented behavior or configuration guidance. --------- Co-authored-by: Daniil Baturin <daniil@baturin.org>
4 daysdocs: Cloudflare Workers hosting pipeline (apex, content workers, CI, ↡Yuriy Andamasov
previews) (#2140) * docs-infra: scaffold Cloudflare workers workspace (versions.json v2, matrix, toolchain) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: record full Phase-0 plan decision in workers/PLAN.md πŸ€– Generated by [robots](https://vyos.io) * docs-infra: shared content worker β€” asset serving, cache classes, X-Docs-Build, canary no-store πŸ€– Generated by [robots](https://vyos.io) * docs-infra: run worker script before assets; test fetch entrypoint πŸ€– Generated by [robots](https://vyos.io) * docs-infra: apex manifest loader + dispatch map + runtime binding guard (TDD) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: apex redirects (aliases, PDF, trailing-slash) + special paths (TDD) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: PDF redirect honors pdf:null and preserves query πŸ€– Generated by [robots](https://vyos.io) * docs-infra: apex UA gate β€” allowlist-wins, log-only AI crawlers, empty block list at launch πŸ€– Generated by [robots](https://vyos.io) * docs-infra: apex router (pipeline Β§3.2), themed 404/503, /kb seam, env configs + congruence test πŸ€– Generated by [robots](https://vyos.io) * docs-infra: add missing-User-Agent regression test for apex UA gate πŸ€– Generated by [robots](https://vyos.io) * docs-infra: R2-streaming preview worker β€” MIME map, noindex, no-store (TDD) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: preview 404 no-store + fetch handler tests πŸ€– Generated by [robots](https://vyos.io) * docs-infra: bootstrap script β€” binding-target workers must exist before apex deploys πŸ€– Generated by [robots](https://vyos.io) * docs-infra: apex run_worker_first, lockfile for npm ci, PDF Location from manifest πŸ€– Generated by [robots](https://vyos.io) * docs-infra: derive html_baseurl from DOCS_VERSION_SLUG with RTD fallback (canonical gate prereq) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: version picker + status banner + language scaffold (vanilla JS, TDD pure core) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: picker preserves query+hash across switch; valid breadcrumb markup πŸ€– Generated by [robots](https://vyos.io) * docs-infra: Pagefind search wrapper with runtime base-path + preview prefix handling (TDD) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: pagefind wrapper β€” asset-failure notice + UI stylesheet load πŸ€– Generated by [robots](https://vyos.io) * docs-infra: gate Pagefind searchbox to CF builds (RTD keeps stock search until cutover) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: deploy sanity gates β€” limits, critical pages, count-delta, canonical (TDD) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: hermetic gate tests via fixture versions.json πŸ€– Generated by [robots](https://vyos.io) * docs-infra: docs-build workflow β€” candidate/smoke/promote two-stage deploy + registry + rollback Two-stage CF Workers pipeline: build in pinned container, assemble artifact, sanity gates, deploy candidate, scoped pre-traffic smoke via canary apex, promote (rollback-id capture, hostname purge, registry upload), post-promote probe + auto-rollback. DOCS_CF_LIVE repo variable gates every docs.vyos.io production interaction pre-cutover. scripts/docs_gates/smoke.py adds one authorized check beyond the spec: the version's index.html probe asserts the #vyos-search mount div is present in the response body, guarding CI silently forgetting DOCS_VERSION_SLUG (which would otherwise ship stock RTD search without the Pagefind gate noticing). πŸ€– Generated by [robots](https://vyos.io) * docs-infra: build docs image in-workflow with buildx cache (v4.1 β€” digest pin dropped) Plan v4.1 amendment: the ghcr.io digest-pinned image does not exist (workflow would hard-fail at the first docker step on every push). Replace the BUILD_IMAGE env placeholder with an in-workflow docker build from docker/Dockerfile via docker/setup-buildx-action@v3 + docker/build-push-action@v6 (context: docker/, load: true, tags: docs-build:local, GHA cache from/to). The checked-out commit is the pin; buildx GHA cache keeps repeat builds cheap. Sphinx-build step swaps to docs-build:local; inner script unchanged. πŸ€– Generated by [robots](https://vyos.io) * docs-infra: apex/preview deploy workflow β€” canary auto, production behind environment approval * docs-infra: apex-deploy concurrency guard (per-ref, cancel-in-progress) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: fork-safe PR preview pipeline β€” approval record, R2 prefixes, label consumption, cleanup * docs-infra: nightly preview sweep β€” pipefail + per-prefix failure isolation πŸ€– Generated by [robots](https://vyos.io) * docs-infra: nightly canary QA β€” per-entry sweep + URL-parity corpus vs RTD πŸ€– Generated by [robots](https://vyos.io) * docs-infra: parity sweep scoped to CF-built versions; transport-error resilience πŸ€– Generated by [robots](https://vyos.io) * docs-infra: one-off bootstrap workflow (binding targets β€” runs once on this push) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: remove one-off bootstrap workflow (bootstrap complete) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: one-off canary apex + preview deploy (route targets for Task 3.6 step 2c) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: remove one-off canary deploy workflow (targets live) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: address Phase-0 CodeRabbit findings (canonical gate, error caching, registry pointer, validation) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: strengthen manifest tests (full dispatch iteration, mutation-free validate) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: address GitHub CodeRabbit review (pointer-after-probe, fail-closed sweeps, block-precedence UA gate, preview hardening) πŸ€– Generated by [robots](https://vyos.io) * docs-infra: adversarial review fixes β€” error no-store, probe retry, PR-list membership, preview dotted-segment πŸ€– Generated by [robots](https://vyos.io) * docs-infra: serve oversized legacy PDF from R2 via apex (spec Β§5 fallback) The 1.3 PDF (29.2 MiB) exceeds the 25 MiB static-asset cap and is absent from the legacy content Worker's build, so /_/downloads/en/1.3/pdf/ (and the picker's PDF link) 301'd into a dead-end 404 post-cutover. Add the R2 object fallback spec Β§5 already documented but never implemented: a DOCS_PDFS R2 bucket binding on the apex Worker, a manifest pdf_r2_key field (1.3 only), and a router step ahead of version dispatch that streams the object with its own cache class (canary/error still force no-store). πŸ€– Generated by [robots](https://vyos.io) * docs-infra: PDF R2 fallback honors Range + If-None-Match, preserves ETag πŸ€– Generated by [robots](https://vyos.io)
7 days docs: Update Suricata page to VyOS 1.5 standards (#2118)LiudmylaNad
* docs: Update Suricata page to VyOS 1.5 standards * Update suricata.md * Update suricata.md * Update suricata.md
8 daysMerge pull request #2133 from LiudmylaNad/te-ospf-noteViacheslav Hletenko
docs(Traffic Engineering): Clarify OSPF advertisement is not yet supported
11 daysdocs(Traffic Engineering): Clarify OSPF advertisement is not yet supportedMilaNad
11 daysdocs: Add GeoIP ASN support (T5746) (#2124)Grant
* docs: Add GeoIP ASN support (T5746) * Small styling changes --------- Co-authored-by: Daniil Baturin <daniil@baturin.org>
13 days docs: Update UDP broadcast relay page to VyOS 1.5 standards (#2115)LiudmylaNad
* docs: Update UDP broadcast relay page to VyOS 1.5 standards * Remove the implication that something other than IPv4 supports broadcast --------- Co-authored-by: Daniil Baturin <daniil@baturin.org>
2026-06-30bgp: T6573: add input/output queue limit CLI commandsChristian Breunig
2026-06-29 docs: Update TFTP server page to VyOS 1.5 standards (#2119)LiudmylaNad
* docs: Update TFTP server page to VyOS 1.5 standards * Update tftp-server.md
2026-06-29docs: Update Console server page to VyOS 1.5 standards (#2117)LiudmylaNad
* docs: Update Console server page to VyOS 1.5 standards * Minor corrections * Minor corrections * Apply suggestions from code review Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update console-server.md * Apply suggestions from code review Co-authored-by: Daniil Baturin <daniil@baturin.org> * Remove the mention of long-EOL'd VyOS 1.3 --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Daniil Baturin <daniil@baturin.org>
2026-06-23Merge pull request #1865 from alexandr-san4ez/T8540-currentViacheslav Hletenko
pseudo-ethernet: T8540: Add anycast-gateway support for EVPN
2026-06-23docs: Update Config sync page to VyOS 1.5 standards (#2113)LiudmylaNad
* docs: Update Config sync page to VyOS 1.5 standards * Minor corrections * Update config-sync.md * Apply suggestion from @github-actions[bot] Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Apply suggestion from @github-actions[bot] Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-17Fix Cookiebot consent dialog rendering unstyled and breaking the page (#2108)Yuriy Andamasov
On a fresh (no-consent) load the consent banner could render completely unstyled and expand to full page height. Cookiebot delivers its dialog CSS as a constructed stylesheet on document.adoptedStyleSheets; ReadTheDocs' readthedocs-addons.js reassigns that whole-array property with a destructive replace, and when that lands after Cookiebot's network-gated adoption it drops Cookiebot's sheet, leaving #CybotCookiebotDialog at position:static expanded to ~6700px. It is a race, so it is intermittent and clears once consent is given (the dialog then never renders). - layout.html: a small adoptedStyleSheets shim, installed before any page script, that preserves Cookiebot's sheet so another library cannot drop it. - custom.css: a leak-safe safety net that keeps the dialog contained even if its adopted sheet is ever absent. It uses only properties Cookiebot itself sets, so it has verifiably no effect on the normal, styled banner. πŸ€– Generated by [robots](https://vyos.io)
2026-06-16dhcp: Update documentation to sync with DHCPv4/v6 options (#2087)Indrajit Raychaudhuri
* dhcp: Update documentation to sync with DHCPv4/v6 options Sync up with Kea DHCPv4 and DHCPv6 options documentation, and clarify some of the options. * Remove mentions of specific DHCP server implementations Co-authored-by: Daniil Baturin <daniil@baturin.org> --------- Co-authored-by: Daniil Baturin <daniil@baturin.org>
2026-06-16docs: Update IS-IS page to VyOS 1.5 standards (#2102)LiudmylaNad
* docs: Update IS-IS page to VyOS 1.5 standards * Apply suggestions from code review Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update isis.md * Update isis.md --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-12T8973: remove salt from documentation - feature removedChristian Breunig
2026-06-12Use the 'rolling' branch in install.mdQuill Cronwall
Replace mentions of the 'current' Git branch with 'rolling'
2026-06-09docs: Remove stale CLI output examples from build-vyos.mdMilaNad
2026-06-09Update default Git branch in build-vyos.md (#2088)Quill
Update the default Git branch in build-vyos.md from 'current' to 'rolling'
2026-06-09docs: Update OpenFabric page to VyOS 1.5 standards (#2060)LiudmylaNad
* docs: Update OpenFabric page to VyOS 1.5 standards * Update openfabric.md * Update openfabric.md * Update openfabric.md
2026-06-09docs: Update RPKI page to VyOS 1.5 standards (#2061)LiudmylaNad
* docs: Update RPKI page to VyOS 1.5 standards * Update rpki.md * Update rpki.md
2026-06-08docs: Update Traffic Engineering page to VyOS 1.5 standards (#2066)LiudmylaNad
* docs: Update Traffic Engineering page to VyOS 1.5 standards * Update traffic-engineering.md * Update traffic-engineering.md
2026-06-08docs: Update Segment Routing page to VyOS 1.5 standards (#2067)LiudmylaNad
* docs: Update Segment Routing page to VyOS 1.5 standards * docs: Minor corrections * docs: Minor formatting corrections * Update segment-routing.md
2026-06-08docs: Update RIP page to VyOS 1.5 standards (#2068)LiudmylaNad
* docs: Update RIP page to VyOS 1.5 standards * Update rip.md
2026-06-08docs: Update PIM page to VyOS 1.5 standards (#2069)LiudmylaNad
* docs: Update PIM page to VyOS 1.5 standards * Update pim.md
2026-06-08docs: Update MPLS page to VyOS 1.5 standards (#2082)LiudmylaNad
* docs: Update MPLS page to VyOS 1.5 standards * Update mpls.md
2026-06-08Merge pull request #2086 from woodsb02/T8967Viacheslav Hletenko
T8967: Fix update-check URL for rolling
2026-06-07T8967: Fix update-check URL for rollingBen Woods
2026-06-03Merge pull request #2055 from alexandr-san4ez/T8308-rollingViacheslav Hletenko
conntrack: T8308: Enhancements to the `show conntrack table` op-mode command
2026-05-28docs: Update Static page to VyOS 1.5 standards (#2049)LiudmylaNad
* docs: Update Static page to VyOS 1.5 standards * Update static.md * Remove needless words * Fix an incorrect fact about RIB not preserving routes after interface state changes --------- Co-authored-by: Daniil Baturin <daniil@baturin.org>
2026-05-28ipsec: T7555: Documentation of `ikev2-reauth` option for site-to-site peers ↡Alexandr K.
(#2047)
2026-05-26docs: Update BFD page to VyOS 1.5 standards (#2056)LiudmylaNad
* docs: Update BFD page to VyOS 1.5 standards * Update bfd.md * Remove mentions of security from the minimum-ttl section --------- Co-authored-by: Daniil Baturin <daniil@baturin.org>
2026-05-26docs: Update IGMP Proxy page to VyOS 1.5 standards (#2054)LiudmylaNad
* docs: Update IGMP Proxy page to VyOS 1.5 standards * Minor formatting corrections * docs: use RFC 5737 IP range * Apply suggestions from code review Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update igmp-proxy.md --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-05-26docs: Update Multicust page to VyOS 1.5 standards (#2057)LiudmylaNad
2026-05-26docs: Update PIMv6 page to VyOS 1.5 standards (#2059)LiudmylaNad
2026-05-22conntrack: T8308: Enhancements to the `show conntrack table` op-mode commandOleksandr Kuchmystyi
- Display per-flow packet and byte counters (original and reply direction). - Add VRF filter option `show conntrack table <ipv4|ipv6> vrf <vrf-name>`.
2026-05-20Merge pull request #2053 from natali-rs1985/T7059Viacheslav Hletenko
high-availability: T7059: Add persistence-timeout option in virtual-server
2026-05-20high-availability: T7059: Add persistence-timeout option in virtual-serverNataliia Solomko
2026-05-18Update Git branch to 'rolling'Quill Cronwall
Update the upstream Git branch from 'current' to 'rolling in the 'Write Documentation' instructions.
2026-05-14bgp: T8607: Add CLI support for BGP update-delay and establish-wait (#1891)Nataliia S.
* bgp: T8607: Add CLI support for BGP update-delay and establish-wait * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * T8607: Apply Copilot's suggestions --------- Co-authored-by: Christian Breunig <christian@breunig.cc> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-05-14Merge pull request #2024 from vyos/yuriy/cli-aws-doc-fixesYuriy Andamasov
docs: fix CLI typo, orphan fences, CloudWatch case, terraformvyos link labels
2026-05-14docs(cli, aws): hard-wrap pre-existing long prose lines to <=80 charsYuriy Andamasov
doc-lint regression on [vyos-documentation#2024](https://github.com/vyos/vyos-documentation/pull/2024): the CI workflow's `scripts/doc-linter.py` scans every line of every changed file (not just changed lines), so the typo fix on `cli.md:464` and the capitalization fix on `aws.md:118` surfaced 57 pre-existing >80-char violations that have lived on rolling since the MyST migration. `cli.md` β€” 53 prose paragraphs hard-wrapped at word boundaries to 80 chars, preserving content fidelity. List items use hanging-indent continuations under their `- ` marker. No content reworded; only soft-wrap β†’ hard-wrap. `aws.md` β€” wrapped the inline AWS GWLB blog link (L164) and the References section (L185-187) with `% stop_vyoslinter` / `% start_vyoslinter` markers. These are URL-bearing lines that cannot be shortened (URL itself >80 chars). Verified locally: `python3 scripts/doc-linter.py "['docs/cli.md','docs/installation/cloud/aws.md','docs/automation/terraform/terraformvyos.md']"` β†’ exit 0, no violations. πŸ€– Generated by [robots](https://vyos.io)
2026-05-14docs(terraform): wrap long install URL in vyoslinter suppressionYuriy Andamasov
The full HashiCorp install-CLI URL is 79 chars, so any reference definition `[X]: <URL>` form exceeds the 80-char docs-lint limit regardless of label length. Existing `% stop_vyoslinter` / `% start_vyoslinter` markers in this file were back-to-back with no content between them (flagged by Copilot on [vyos-documentation#2021](https://github.com/vyos/vyos-documentation/pull/2021)) β€” put them to work by wrapping the long `[install Terraform]:` reference. The shorter `[Terraform introduction]:` reference (73 chars) sits outside the suppression range. Both Copilot and CodeRabbit flagged the docs-lint regression on [vyos-documentation#2024](https://github.com/vyos/vyos-documentation/pull/2024) β€” verified locally with `python3 scripts/doc-linter.py docs/automation/terraform/terraformvyos.md`: no warnings. πŸ€– Generated by [robots](https://vyos.io)
2026-05-14docs(terraform): replace non-descriptive [link]/[install] reference labelsYuriy Andamasov
Surfaced by CodeRabbit on the circinus RSTβ†’MD conversion PR [vyos-documentation#2021](https://github.com/vyos/vyos-documentation/pull/2021) (`terraformvyos.md:14`). Both labels violate MD059 (descriptive link text) β€” generic words like "link" don't convey the destination to screen-reader users or search indexers. Pre-existing on rolling; out of scope for the conversion port, fixed here at the source. Mergify will backport to circinus and sagitta. Sibling `automation/terraform/index.md` already uses the descriptive form ([Terraform], [Ansible]). πŸ€– Generated by [robots](https://vyos.io)
2026-05-14fix(includes): wrap admonition in `{only} not latex` to preserve PDF suppressionYuriy Andamasov
The original RST `_include/need_improvement.txt` wrapped the admonition in `.. raw:: latex \iffalse / \fi`, intentionally hiding the "Call for Contributions" notice from the LaTeX/PDF builder (see b222a313, 2020). `.readthedocs.yml` enables `formats: - pdf` and `conf.py` configures `latex_elements`/`latex_documents`, so PDF output is a real downstream artifact. The previous commit (82a06e1d) dropped that suppression. Restore it using Sphinx's `only` directive with `not latex`, which is the MyST equivalent of the original RST builder-conditional pattern. Spotted by Copilot inline review on #2016. πŸ€– Generated by [robots](https://vyos.io)
2026-05-14docs: fix CLI typo, orphan colon fences, CloudWatch capitalizationYuriy Andamasov
Three pre-existing rolling docs bugs, surfaced by Copilot review on the sagitta RSTβ†’MD conversion PR #2022 against the byte-for-byte ports of `cli.md` and `aws.md`: - `cli.md` line 464: `set interface ethernet …` is wrong; the CLI command is `set interfaces ethernet …` (plural). Users copying the example verbatim would hit "Configuration path is not valid". - `cli.md` lines 527-528: orphan `:::` / `::::` fence closers after the `{cfgcmd} save` block. The `(save)=` directive opens at line 503 and closes at line 506; the two `` ``` none `` blocks at 508-526 are self-contained; nothing opens these colon fences. MyST/Sphinx tolerates them silently today but they're literal noise. Drop both. - `aws.md` line 118: "Cloudwatch" β†’ "CloudWatch", matching the surrounding correctly-cased uses on lines 115/121/122 and AWS's product naming. Mergify will backport to circinus and sagitta via the standard `@Mergifyio backport circinus sagitta` post-merge. πŸ€– Generated by [robots](https://vyos.io)
2026-05-13fix(includes): rewrite need_improvement.txt as MyST so plain `{include}` ↡Yuriy Andamasov
renders correctly After the RSTβ†’MyST migration, ~45 MD pages use the plain `{include}` MyST directive to pull in `_include/need_improvement.txt`. The included file still contained RST (`.. raw:: html`, `.. raw:: latex`, `:ref:`), and MyST's built-in `{include}` parses the content with the *outer* file's parser β€” i.e. as MyST. RST directives then render as literal paragraphs. Visible symptom on docs.vyos.io/en/rolling (and across 1.5/1.4): the VPP index, VPP subpages, haproxy, isis, bfd, policy, pki, salt, flowtables, webproxy, and others all show: .. raw:: latex \iffalse .. raw:: html Call for Contributions Help improve this section ... For contribution guidelines, see :ref: documentation . Fix: rewrite `_include/need_improvement.txt` as a native MyST admonition (`:::{admonition} Call for Contributions / :class: error / ... / :::`) and drop the now-unnecessary `{eval-rst}` wrapper at the single callsite (`configuration/highavailability/index.md`) that wrapped the include for RST processing. The fix is companion to 9c815d68 (cmdincludemd RST plumbing) but targets the plain-`{include}` path which doesn't route through our custom extension. πŸ€– Generated by [robots](https://vyos.io)
2026-05-13pseudo-ethernet: T8540: Add anycast-gateway support for EVPNOleksandr Kuchmystyi
Introduce 'anycast-gateway' option for pseudo-ethernet interfaces. When set, a local FDB entry is installed on the parent bridge to prevent the shared anycast MAC from leaking over the VXLAN overlay.