Skip to content

[th/nmcli-validate-default-route] cli: drop invalid validation for default-routes in nmcli

Thomas Haller requested to merge th/nmcli-validate-default-route into master

Currently, default-routes cannot be added like regular static-routes as ipv4.routes setting. Instead, one has to configure "ipv4.gateway" and "ipv4.never-default". That of course should be fixed, for example to configure a default-route in different routing tables.

As it is, both nmcli's parse function and libnm's NMSettingIPConfig:verify() functions reject default-routes.

But nmcli goes way beyond that, it also rejects all networks with "0.0.0.0"/"::" even if their prefix length is not zero. Such routes are not default-routes, and nmcli has no business rejecting them. The correct way for checking for a default-route is to check the prefix-length for zero.

Drop the wrong validation in nmcli.

Note, it may still not be the best idea to add catch-all routes like "0.0.0.0/1" and "128.0.0.0/1". It just defeats what counts as a default-route. NM has other means (like configuring the route-metric) to handle routing in face of multiple interfaces. But sure, whatever works for you.

#114 (closed)

Merge request reports