Android NetworkInterface. What are the meanings of names of NetworkInterface?

Allen picture Allen · Nov 17, 2015 · Viewed 27.4k times · Source

I want to get available network of the current device, so I firstly get networkinterfaces list:

NetworkInterface.getNetworkInterfaces();

Then, iterate every one:

NetworkInterface intf = en.nextElement();
String name = intf.getName();

Here is the problem. The names of returned value of 'name' are: rmnet_data1, dymmy0, wlan0, rmnet_usb0, intf, lo, p2p0, sit0. (on my device) I want to know what are the meanings of them.

Answer

jeyoor picture jeyoor · Nov 17, 2015

Since Android is based on Linux, Linux network interface naming patterns apply to Android devices.

Here's some resources on *nix network interface naming

To summarize:

lo usually stands for the loopback interface (localhost)

wlan usually stands for a wireless networking interface

rmnet interfaces are usually associated with cellular connections and usb tethering

sit interfaces are associated with tunneling IPv6 over IPv4

p2p interfaces are usually associated with peer-to-peer connections (perhaps your Android device's WiFi Direct support?)

dummy interfaces provide special aliases for the loopback interface