Como su nombre lo indica es para obtener la MAC es codigo java puro, ya que la mayoria de los que hay en la web hacen uso de ipconfig, y creo es muy ineficiente ya que habria que hacer un codigo para cada sistema operativo, es decir uno para linux y windows, pero con este pequeño codigo sirve para ambos y en todas las versiones.
Lo hice anoche espero les agrade a los que les gusta java XD
[syntax="java"]
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.logging.Level;
import java.util.logging.Logger;
/* Autor: Adwind
* Descripcion: Codigo para obtener la MAC de cualquier PC
* funciona en todas las versiones de Windows y Linux
* Fecha: 16-Noviembre-2011
* NOTA: Las versiones que existen en la red hacen uso de "ipconfig" para obtener
* la MAC, haciendo mas extenso el codigo. Este codigo es corto y flexible XD
* NOTA2: Lenguaje JAVA XD para los N00BS XD
* Pagina: http://www.indetectables.net
* Derechos Reservados: Este codigo es de uso educativo y esta prohibido
* sea distribuido fuera de http://www.indetectables.net a menos que me pidas permiso
*
* NOTA3: No se crean XD
*/
public class MACAddress{
public static void main(String[] args) throws UnknownHostException, SocketException {
//Obtenemos la interface en la cual estamos conectados.
NetworkInterface a = NetworkInterface.getByInetAddress(InetAddress.getLocalHost());
//Obtenemos su MAC Address, pero nos devuelve un array de bytes
//Por lo que hay que convertirlos a Hexadecimal
byte[] b = a.getHardwareAddress();
for (int i = 0; i < b.length; i++) {
//Tratamos los valores que devuelven < 0 normalmente son el "3 y 5 par"
if (b < 0) {
//Convertimos el byte a Hexadecimal con la clase Integer
String tmp = Integer.toHexString(b);
/*Los numeros que son menores a cero al momento de convertirlo a string nos devuelven
una cadena de este tipo ffffffAA por lo que unicamente tomamos los ultimos 2 caracteres
que son lo que buscamos. y obtenemos esos ultimos caracteres con substring*/
System.out.print(tmp.substring(tmp.length() - 2).toUpperCase());
continue;
}
//Aqui imprimimos directamente los bytes que son mayores a cero.
System.out.print(Integer.toHexString(b));
}
} }
[/syntax]
¿ Sabrías implementar y hacer uno que obtenga la mac en vez del adaptador de red fuera de la RTPC-UART ( de los modelos posibles ), más añadir un filtrado del tráfico ?
¿ A trabes de una ip podrías conseguir información con un soft ?
Mucha Suerte...Espero alentarte..
¿ A trabes de una ip podrías conseguir información con un soft ?
Mucha Suerte...Espero alentarte..
La felicidad es una cualidad evasiva. Si la buscas, no la encuentras.


Un sniffer? Todo se puede en java, con el soporte de JNI para usar plugins en C/c++ y JNA para llamar a las apis de los sistemas operativos como por ejemplo shell32 etc.

Una mezcla entre este y el ip full
La felicidad es una cualidad evasiva. Si la buscas, no la encuentras.



Una mezcla entre este y el ip full plus cambio de firmware, modificaciones del mismo. O al menos entrar en el moden/router
La felicidad es una cualidad evasiva. Si la buscas, no la encuentras.

