Filtro CPL Polarizado ventajas

Escanear una red con Java - Scanning a network with Java

Escanear una red con Java usando InetAddress.
Hacer ping a una IP con Java


En esta entrada mostraré una manera de escanear una red usando Java.
Haremos uso de InetAddress para poder hacer una seria de "pings" a cada IP dentro del rango valido. Es decir mandaremos pings a un segmento de red, en este caso, en el segmento de red que nos encontremos.
Para saber el segmento de red en el que nos encontramos, primero debemos saber nuestra IP. Para saber mi IP en LINUX se teclea el comando ifconfig en una terminal, en Windows se teclea ipconfig en el CMD (símbolo del sistema).

En la imagen anterior esta marcado la IP, si observamos el segmento de red fijo es "192.168.1", y el segmento que nuestra red utiliza es de 0 - 255. Es decir;
192.168.1.0
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
....
192.168.1.253
192.168.1.255
 Por tanto, nosotros escanearemos dicha red. Si observamos son en total 256 IPs que se van a escanear. Por tanto podemos hacerlo con un ciclo for para realizarlo.


 En la linea 4 y 5, declaramos dos contadores, en las cuales se almacenaran el total de IPs que están disponibles y no disponibles.
En la linea 7 declaramos un String, en la cual se asigna el segmento de red fijo, ya que con el for le asignaremos el rango variable y de esta manera se formaría la IP completa.
En la linea 8, declaramos el atributo InetAddress, dicho atributo se construye con la IP que se va a escanear, pero en este caso como van a ser varias las que se van a escanear, la dejamos como null.
Ya dentro del for en la linea 11 se construye la variable InetAddress con la IP que se va a escanear en ese momento. Se concatena el rango filo "192.168.1." con el rango variable i, en la primera iteración del for i=0, por tanto será la IP 192.168.1.0 y en la otra iteración i=1, y así sucesivamente hasta 255.
En la linea 12 se compara, si la ip que en ese momento corre se encuentra disponible.El método es isReachable() que recibe un valor entero que indica el tiempo en milisegundos que tardará enviando paquetes a dicha IP.

Todo lo explicado anteriormente es lo mas importante. Lo demás es programación básica.
Si hubiese alguna duda quedo a sus órdenes.

Created By Ivanovich.

Comentarios