udhcpc works only with IPv4 addresses but the current
/usr/share/udhcpc/default.script script interferes with IPv6.
For example, when getting a new lease from an IPv4 address on a given
interface, all the addresses on this interfaces get flushed, including
IPv6. This issue has been reported to the busybox project:
https://bugs.busybox.net/show_bug.cgi?id=9621
This commit prevents udhcpc to act on IPv6 addresses.
We set the metric to 300 + ifindex for wifi and 200 + ifindex for
others. This is basically what dhcpcd does.
Also allow overriding the metric in interfaces file.
This makes multi isp setups easier.