inetaddress 클래스를 사용하여 LAN에서 모든 장치 IP 주소를 가져올 수 있습니다. 내가 뭘해야 역방향 조회 IP 주소이며, 같은 네트워크 장치 이름으로 찾기 :Android에서 역방향 DNS를 사용하여 네트워크 장치 이름을 얻으려고 시도합니다.
private ArrayList<String> scanSubNet(String subnet) {
ArrayList<String> hosts = new ArrayList<>();
InetAddress inetAddress;
for (int i = 1; i <= 255; i++) {
try {
inetAddress = InetAddress.getByName(subnet + String.valueOf(i));
if (inetAddress.isReachable(1000)) {
hosts.add(inetAddress.getHostName());
Log.d(TAG, InetAddress.getByAddress(inetAddress.getAddress()).getHostAddress());
Log.d(TAG, InetAddress.getByAddress(inetAddress.getAddress()).getCanonicalHostName());
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
return hosts;
}
"지미의 맥북"
내 코드 블록 로컬 네트워크 범위에서 모든 IP 주소를 가져올 수있는 그리고 나는 나의 방법을 다음과 같이 부르고있다. Log.d (TAG에
ArrayList<String> subnetList = scanSubNet("192.168.1.");ArrayList<String> subnetList = scanSubNet("192.168.1.");
, 내가 역 DNS와 장치 이름을 얻기 위해 노력하고 있어요.하지만 라인의 모두 나에게 문자열로 IP 주소 (안 장치-이름)
이있는 한 출력을 제공 어떤 기회를 성공?
안부, Onder을.
연구에 따르면 LocalNetwork DNS 역방향 장치 이름을 직접 가져올 방법이 없습니다. Samba 프로토콜을 사용하는 공유 1 파일과 같은 피어 투 피어 장치로 핸드 셰이크를 만들어야합니다. –