1
我想在本地網絡從192.168.1.0
到192.168.1.255
5000端口和一個Arduino板也連接到5000端口的網絡。我有Mac的Mac地址並嘗試查找IP地址。這是我的代碼Pinging整個網絡找到設備
static void pingLocal() {
for (int i = 0; i <= 255; i++) {
ping("192.168.1." + i + ":5000");
}
}
private static void ping(String url) {
try {
Process mIpAddrProcess = Runtime.getRuntime().exec("/system/bin/ping -c 1 " + url);
int mExitValue = mIpAddrProcess.waitFor();
System.out.println(" mExitValue " + mExitValue);
if (mExitValue == 0) {
Log.d("log", "true");
} else {
Log.d("log", "false");
}
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
static String getIPFromArpCache(String mac) {
if (mac == null)
return null;
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader("/proc/net/arp"));
String line;
while ((line = br.readLine()) != null) {
Log.d("line", line);
String[] splitted = line.split(" +");
if (splitted.length >= 4 && mac.equals(splitted[3])) {
String ip = splitted[0];
if (ip.split(".").length == 4) {
return ip;
} else {
return null;
}
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
assert br != null;
br.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
,這是結果
02-20 19:57:07.465 12103-12103/ir.shafadoc.handset D/line: IP address HW type Flags HW address Mask Device
02-20 19:57:07.466 12103-12103/ir.shafadoc.handset D/line: 192.168.1.33 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.466 12103-12103/ir.shafadoc.handset D/line: 192.168.1.26 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.467 12103-12103/ir.shafadoc.handset D/line: 192.168.1.19 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.467 12103-12103/ir.shafadoc.handset D/line: 192.168.1.12 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.467 12103-12103/ir.shafadoc.handset D/line: 192.168.1.31 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.468 12103-12103/ir.shafadoc.handset D/line: 192.168.1.24 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.468 12103-12103/ir.shafadoc.handset D/line: 192.168.1.17 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.469 12103-12103/ir.shafadoc.handset D/line: 192.168.1.10 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.470 12103-12103/ir.shafadoc.handset D/line: 192.168.1.29 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.470 12103-12103/ir.shafadoc.handset D/line: 192.168.1.22 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.470 12103-12103/ir.shafadoc.handset D/line: 192.168.1.15 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.471 12103-12103/ir.shafadoc.handset D/line: 192.168.1.8 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.471 12103-12103/ir.shafadoc.handset D/line: 192.168.1.1 0x1 0x2 c0:a0:bb:9a:e4:ad * wlan0
02-20 19:57:07.472 12103-12103/ir.shafadoc.handset D/line: 192.168.1.27 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.472 12103-12103/ir.shafadoc.handset D/line: 192.168.1.20 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.472 12103-12103/ir.shafadoc.handset D/line: 192.168.1.13 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.473 12103-12103/ir.shafadoc.handset D/line: 192.168.1.32 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.473 12103-12103/ir.shafadoc.handset D/line: 192.168.1.25 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.473 12103-12103/ir.shafadoc.handset D/line: 192.168.1.18 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.474 12103-12103/ir.shafadoc.handset D/line: 192.168.1.11 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.474 12103-12103/ir.shafadoc.handset D/line: 192.168.1.30 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.475 12103-12103/ir.shafadoc.handset D/line: 192.168.1.23 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.475 12103-12103/ir.shafadoc.handset D/line: 192.168.1.16 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.475 12103-12103/ir.shafadoc.handset D/line: 192.168.1.9 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.476 12103-12103/ir.shafadoc.handset D/line: 192.168.1.28 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.476 12103-12103/ir.shafadoc.handset D/line: 192.168.1.21 0x1 0x0 00:00:00:00:00:00 * wlan0
02-20 19:57:07.477 12103-12103/ir.shafadoc.handset D/line: 192.168.1.14 0x1 0x0 00:00:00:00:00:00 * wlan0
,你只能看到調制解調器具有MAC地址arp緩存。哪裏不對?我如何發現網絡並從Mac上查找IP地址?
目前尚不清楚你的要求。你在期待什麼? – zed
我的主板Mac地址應該出現在arp cache @zed –
這是哪個IP地址?它是否出現在這個日誌中? – zed