Это повторяет все локальные интерфейсы:
Dim theNetworkInterfaces() as System.Net.NetworkInformation.NetworkInterface = System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces()
for each curInterface as System.Net.NetworkInformation.NetworkInterface in theNetworkInterfaces
MessageBox.Show(curInterface.GetPhysicalAddress().ToString())
Физический адрес - это то, что вы хотите.
Линия
final NetworkInterface ni = NetworkInterface.getByInetAddress(address);
просто захватывает определенный сетевой интерфейс по адресу
Допустим, вы храните свой локальный адрес в переменной localIa, а затем можете использовать ее:
NetworkInterface ni = NetworkInterface.getByInetAddress(localIa)
ni.GetPhysicalAddress().ToString()