2012-10-05 2 views

답변

1

외부 시스템 호출을 사용하지 않고이 문제를 해결할 수있는 한 가지 방법은 모든 가능한 단일 IP 주소를 시도하는 것입니다. 이런 식으로 뭔가를 사용하여 각 하나에 데이터를 전송 주소를 통해

으로 반복, ...

for (int i =0; i<100; i++) { 
    String ip = "192.168.1." + i 
    InetAddress address = InetAddress.getByAddress(ip); 
} 

당신이 활성 IP를 나타냅니다 얻을 모든 응답. 그러나이 방법에서는 서브넷에 의해 제한을 받게됩니다.

+0

다른 해결책이 있습니까? –

+0

이것이 내가 생각할 수있는 유일한 방법입니다. 나는 Inet 클래스가 네트워크를 스캔 할 수 있다고 생각하지 않는다. 이것이 작동하지 않을 이유가 없습니다. – Max

+0

@EdwardJones - 네트워크 그래프에 대한 추가 지식이없는 것은 아닙니다. 예를 들어 DHCP/DNS 서버에서 실행중인 경우 IP를 할당 한 시스템을 쿼리 할 수 ​​있지만 네트워크의 일반 시스템 인 경우 모든 시스템을 폴링하는 것으로 제한됩니다 서브넷의 IP. – dimo414