There's basically three types of networking config:
- direct with the kernel - don't do this
- some distro-specific abstraction - e.g. /etc/network/interfaces for Debian
- networking manager - wicked, network manager, etc
I do the last one because it's distro-agnostic. I use Network Manager and it works fine.