In regular linux, this is pretty easy (
reference[
^]), in Android... well, nothing is quite as easy as it should be.
So, first off look at the permissions of /dev/net/tun and see whether you'll be able to make a tun# interface in the first place. After that, see if you'll be able to create the interface and assign it an IP address (you can do this with a simple cross-compiled C++ app, you can run as su through adb). Your final obstacle will be to see how the heck you can get permissions to do so from Java (you'll need permissions to make/open a network interface, bring up/down the interface).