your description is slightly confusing … so if you use ubuntu core attached to a windows host all is fine and you get an IP for usb0 … if you connect to something else (i.e. an ubuntu desktop) you do not get an IP ?
typically the counterpart (the PC) is responsible for handing out the IP to the usb0 device … on an Ubuntu Desktop you’d go to the network-manager applet, select the usb connection and mark it “shared” in the ipv4 settings (in the pulldown menu) and also tick the checkbox at the bottom of the ipv4 page to tell it that an address is required to establish the connection.
Sorry for any confusion. The use case I need to get working is the pi connected to ubuntu core (not desktop).
So from your description, the ubuntu core box would be handing out the IP address? My issue above is the USB0 adapter doesn’t “connect” on ubuntu, it does however show up with an IP on the pi
if the Pi runs desktop/server and another (ubuntu core) board connects to it, the pi needs to have a dhcp server running to hand out an IP to the usb0 device when the connection comes up …
alternatively you can manually configure fixed IP settings on both sides of the USB cable …