fix(shelly-manager): keep firmware traffic off the IoT macvlan #1516

Merged
k.renner merged 1 commits from shelly-manager-net1-no-ra into main 2026-10-28 15:38:04 +00:00
2 changed files with 16 additions and 0 deletions
@@ -44,6 +44,9 @@ spec:
# reachable over net1. The mDNS resolver is a separate
# ZeroconfResolver socket set and is unaffected.
k8s.v1.cni.cncf.io/networks: shelly-manager-iot
# Changing this rolls the pod, which is the only way a change to the
# shelly-manager-iot attachment takes effect.
net.renner.uno/iot-attachment-config: "tuning-no-ra"
spec:
# eth0 (Cilium-managed pod network) is still the primary — it
# carries the ingress, mosquitto LB return path, etc. The macvlan
@@ -44,6 +44,12 @@ spec:
# the pod goes NotReady and its ingress returns 504. Static IPAM used to
# dodge this by simply never setting a gateway; leased addresses come with
# one, so it has to be confined instead of omitted.
#
# sbr covers IPv4 only. With Router Advertisements net1 gets global IPv6
# addresses plus on-link and default routes in the main table, and replies
# to IPv6 clients on v30iot leave via net1, bypassing Cilium's LoadBalancer
# reverse NAT. tuning turns RA processing off on net1; the link-local
# address mDNS uses stays.
config: |
{
"cniVersion": "0.3.1",
@@ -57,6 +63,13 @@ spec:
"type": "dhcp"
}
},
{
"type": "tuning",
"sysctl": {
"net.ipv6.conf.IFNAME.accept_ra": "0",
"net.ipv6.conf.IFNAME.autoconf": "0"
}
},
{
"type": "sbr"
}