-
Notifications
You must be signed in to change notification settings - Fork 30
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
General jumbo frame support/Network Refactor #168
Conversation
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.
Nitpick: FIB is variously referred to as FIB, FiB, fib. Please pick one and use it throughout for the sake of consistency.
23bd877
to
080500a
Compare
080500a
to
7a75234
Compare
e2e passed so it's ok to skip further e2e if the only remaining changes are documentation. |
ad338e5
to
4e3f580
Compare
a38a681
to
218582f
Compare
218582f
to
bea5161
Compare
bea5161
to
d6641f2
Compare
ca5c489
to
3d99072
Compare
checks and e2e passed, merging |
Quality Gate passedIssues Measures |
Description of changes:
We have jumbo frame support via virtio/proxmox, but no support for other device types like e1000e (etc.pp.) or software defined networking.
This PR adds general case jumbo frame support via netplan. To achieve this, I've refactored the networking code a little to unify software defined network devices with additional network devices.
While doing this, I removed the limitation of mutually exclusive DHCP and static IP. It's nonsensical and not in netplan.
I also gave all routes a metric and made the metric of default network 100 and other network devices 200. This is still buggy, but less buggy (and dangerous) than having all interfaces add default routes with a metric of 0. This only worked because netplan applies rules in order and was subject to breaking any time.
In a nutshell, this part of netplan https://netplan.readthedocs.io/en/stable/netplan-yaml/#properties-for-all-device-types is now unified in our API and our templating, making the adding of more features much easier. The end goal is to unify AdditionalNetworkDevices with DefaultNetworkDevice, but that's an API breaking change, so I plan on doing that in v1alpha2.
I've also fixed a couple of bugs on the way.
Testing performed:
Testing is still WIP