Android 网络接口。 NetworkInterface 名称的含义是什么?
Android NetworkInterface. What are the meanings of names of NetworkInterface?
我想获取当前设备的可用网络,所以我首先获取网络接口列表:
NetworkInterface.getNetworkInterfaces();
然后,迭代每一个:
NetworkInterface intf = en.nextElement();
String name = intf.getName();
问题来了。 'name'的返回值名称为:rmnet_data1、dymmy0、wlan0、rmnet_usb0、intf、lo、p2p0、sit0。 (在我的设备上)我想知道它们的含义。
由于 Android 基于 Linux,Linux 网络接口命名模式适用于 Android 设备。
这里有一些关于 *nix 网络接口命名的资源
- a tour of classic Linux network interface names
- new predictable interface names
- a good Whosebug question
总结一下:
lo
通常代表环回接口(localhost)
wlan
通常代表无线网络接口
rmnet
接口通常与 cellular connections and usb tethering
关联
sit
接口与 tunneling IPv6 over IPv4
关联
p2p
接口通常与点对点连接相关联(也许是您的 Android 设备的 WiFi Direct 支持?)
ap
或 swlan
接口(取决于 Android 分布)可以在 Android 设备上激活移动热点(接入点)时找到。它也可能与常规 wlan
界面相关联(在无法同时激活 WiFi 连接和移动热点的设备上观察到,例如 Galaxy Tab S2 上的 Android 9)。
我想获取当前设备的可用网络,所以我首先获取网络接口列表:
NetworkInterface.getNetworkInterfaces();
然后,迭代每一个:
NetworkInterface intf = en.nextElement();
String name = intf.getName();
问题来了。 'name'的返回值名称为:rmnet_data1、dymmy0、wlan0、rmnet_usb0、intf、lo、p2p0、sit0。 (在我的设备上)我想知道它们的含义。
由于 Android 基于 Linux,Linux 网络接口命名模式适用于 Android 设备。
这里有一些关于 *nix 网络接口命名的资源
- a tour of classic Linux network interface names
- new predictable interface names
- a good Whosebug question
总结一下:
lo
通常代表环回接口(localhost)
wlan
通常代表无线网络接口
rmnet
接口通常与 cellular connections and usb tethering
sit
接口与 tunneling IPv6 over IPv4
p2p
接口通常与点对点连接相关联(也许是您的 Android 设备的 WiFi Direct 支持?)
ap
或 swlan
接口(取决于 Android 分布)可以在 Android 设备上激活移动热点(接入点)时找到。它也可能与常规 wlan
界面相关联(在无法同时激活 WiFi 连接和移动热点的设备上观察到,例如 Galaxy Tab S2 上的 Android 9)。