Retornar endereço físico

2 respostas
wanderley.drumond

Pessoal, eu já fiz um código que retorna endereço IP, mas será que é possível fazer retornar endereço MAC? Se sim, como?

2 Respostas

fantini

Com o java 6 ficou muito fácil obter o macaddress da máquina:

private StringBuffer obterMac() throws Exception {
	Enumeration en = null;
	en = NetworkInterface.getNetworkInterfaces();
	StringBuffer sb = new StringBuffer();
	while (en.hasMoreElements()) {
		NetworkInterface iface = (NetworkInterface) en.nextElement();
		byte separado[] = iface.getHardwareAddress();
		if (iface.isUp() && separado != null && iface.getName().indexOf("eth") > -1) {
			boolean doispontos = false;
			for (byte parte : separado) {
				if (doispontos) sb.append(":");
				doispontos = true;
				sb.append(byteToHexString(parte));
			}
			break;
		}
	}
	return sb;
}

O laço “while” serve para varrer as interfaces presentes na máquina. Vc poderá alterá-lo conforme às suas necessidades. Utilize ou crie algum método para converter de byte para hex (“byteToHexString”) para a visualização.

wanderley.drumond

Valeu cara, muito obrigado. Você realmente me ajudou bastante, vou tentar aqui

Criado 24 de outubro de 2007
Ultima resposta 24 de out. de 2007
Respostas 2
Participantes 2