-
Notifications
You must be signed in to change notification settings - Fork 347
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
T6841: firewall: improve config parsing for ZBF when using VRFs and interfaces attached to VRFs #4180
Conversation
👍 |
✅ No issues found in unused-imports check.. Please refer the workflow run |
3359f05
to
409766f
Compare
Should I also change these files? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suggest a different syntax that I think is more intuitive (or less counter-intuitive ;) and there are some missing cases in the migration script logic.
…nterfaces attached to VRFs
Improve config parsing for ZBF when using VRFs and interfaces attached to VRFs
VRF support was introduced in VyOS 1.4.0. If a VRF is added as an interface in the zone based firewall, it will be migrated to the new syntax. OLD: set firewall zone FOO interface RED set firewall zone FOO interface eth0 NEW: set firewall zone FOO member vrf RED set firewall zone FOO member interface eth0
CI integration ❌ failed! Details
|
Change Summary
Improve config parsing for ZBF when using VRFs and interfaces attached to VRFs
Types of changes
Related Task(s)
Related PR(s)
Component(s) name
firewall
Proposed changes
For zone based firewall, everything is related to matching inbound and outbound interface. The problem is that in Linux, if an interface is attached to a non-default VRF, then:
Before this PR, what was written under
set firewall zone <zone> interface <iface>
was exactly written for inbound|outbound interface in nftables.Now we have provide more options so we can specify
interface name
andinterfave vrf
while defining interfaces in a zone.interface name <iface>
--> it still writes exactly that interfaces for inbound|outbound interface in nftablesinterface vrf <vrf_name>
--> in nftables it writes:How to test
Smoketest result
Checklist: