Commit 992fbf5
Jason Ball
systemvm: ipv6 fw_input — accept return traffic from established,related connections
The systemvm Virtual Router's nftables `ip6 ip6_firewall fw_input`
chain is created with policy=drop and only ICMPv6 accept rules.
The IPv4 INPUT chain has the equivalent `iifname "eth2" ct state
established,related accept` rule (added by `fw_router_routing()`);
the IPv6 path has no such rule.
Effect: any v6 connection the VR itself initiates outbound (BGP
to upstream PE peers, NTP, DNS lookups, etc.) has its return
traffic silently dropped at the v6 INPUT hook before TCP processes
it. For Isolated v6 ROUTED networks this is fatal — BGP IPv6
sessions cannot establish, tenant /64 prefixes are never
advertised upstream, and VMs in the network are unreachable from
the IPv6 internet.
PR #10970 added the equivalent rule to the FORWARD chain only
(covering tenant VM return traffic). This commit adds the matching
rule to the INPUT chain (covering VR-originated return traffic) by
introducing `fw_router_routing_v6()` as the IPv6 mirror of
`fw_router_routing()`.
Verified end-to-end on ACS 4.22.0.0 KVM: before the patch, v6 BGP
sessions stay in `Connect` indefinitely; tcpdump confirms PE
responds with SYN-ACK but VR's TCP stack never sees the SYN-ACK
(MD5 counters zero — drop happens at netfilter). After the patch,
v6 BGP sessions reach `Established` within seconds and remain
stable across subsequent tenant firewall rule updates.
Fixes: #13171
Signed-off-by: Jason Ball <jball@resetdata.com>1 parent 5893ba5 commit 992fbf5
1 file changed
Lines changed: 18 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
326 | 326 | | |
327 | 327 | | |
328 | 328 | | |
| 329 | + | |
329 | 330 | | |
330 | 331 | | |
331 | 332 | | |
| |||
714 | 715 | | |
715 | 716 | | |
716 | 717 | | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
717 | 734 | | |
718 | 735 | | |
719 | 736 | | |
| |||
839 | 856 | | |
840 | 857 | | |
841 | 858 | | |
| 859 | + | |
842 | 860 | | |
843 | 861 | | |
844 | 862 | | |
| |||
0 commit comments