Skip to content

Commit b89599b

Browse files
author
Jason Ball
committed
systemvm: ipv6 fw_input — expand established/related to non-routed Isolated
Per upstream review feedback on #13173: drop the is_routed() guard on fw_router_routing_v6() so non-routed Isolated v6 networks also accept established/related return traffic to the VR. Keep the is_vpc() guard (VPC has its own firewall path via fw_vpcrouter_routing). Scope stays narrow: only the established/related rules. v4's service-port rules (tcp/3922, tcp/8080) are not mirrored into the v6 INPUT chain. Tested on staging (4.22.0.0): - Routed Isolated v6 (Filtered offering): BGP v6 sessions reach Established, eth2 established/related rule counter active (81 packets / 9893 bytes). - Non-routed Isolated v6 (DualStack offering with VirtualRouter + SourceNat): fw_input contains lo/eth2/eth0 established/related rules identical to the routed case; counter activity on eth2 (66 packets / 8369 bytes) confirms the rule is reached. Signed-off-by: Jason Ball <jball@resetdata.com>
1 parent 8dcc070 commit b89599b

1 file changed

Lines changed: 4 additions & 6 deletions

File tree

systemvm/debian/opt/cloud/bin/cs/CsAddress.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -716,13 +716,11 @@ def fw_router_routing(self):
716716
'rule': "iifname %s ip saddr %s tcp dport 8080 ct state new counter accept" % (self.dev, guestNetworkCidr)})
717717

718718
def fw_router_routing_v6(self):
719-
if self.config.is_vpc() or not self.config.is_routed():
719+
if self.config.is_vpc():
720720
return
721-
# IPv6 INPUT chain defaults — mirror of fw_router_routing() for v4.
722-
# Without these, return traffic for VR-initiated v6 connections (e.g.
723-
# BGP SYN-ACKs to upstream PE peers) is silently dropped by the
724-
# default-DROP policy on fw_input. PR #10970 added the equivalent
725-
# rule to fw_forward only; this completes that fix for INPUT.
721+
# IPv6 equivalent of fw_router_routing() — without these, return
722+
# traffic for VR-initiated v6 connections is dropped by fw_input's
723+
# default policy.
726724
self.nft_ipv6_fw.append({'type': "", 'chain': 'fw_input',
727725
'rule': "iifname lo counter accept"})
728726
self.nft_ipv6_fw.append({'type': "", 'chain': 'fw_input',

0 commit comments

Comments
 (0)