Elements (and other objects) should be one per line instead of multiple objects in a large line according to:
https://www.spinics.net/lists/netfilter/msg61029.html
I recommend you split that superlong line in your 2_fill_set.nft and 3_fill_set.nft files, for example: # cat ruleset.nft table netdev filter { set mySet { typeof ip saddr flags interval elements={ 1.2.3.1/32, 1.2.6.3/32, 1.2.8.12/32, ... } } } instead of: # cat ruleset.nft table netdev filter { set mySet { typeof ip saddr flags interval elements={1.2.3.1/32,1.2.6.3/32,1.2.8.12/32,... } } }
This way errors such as:
internal:0:0-0: Error: Could not process rule: File exists
would get a better error message of whats actually being wrong.
In this particular case a user with a large ruleset due to use of GeoIP fails to optimize its ruleset with "-o" option as in:
https://forum.vyos.io/t/geoip-optimise-address-ranges/11677
Ref: http://git.netfilter.org/nftables/commit/?id=5e39a34b196d68b803911aa13066fef2f83dc98c