Получите имя конкретного сетевого интерфейса на JavaJAVA

Программисты JAVA общаются здесь
Anonymous
Получите имя конкретного сетевого интерфейса на Java

Сообщение Anonymous »

Я использую Windows 10, и я хотел бы подключить устройство к своему компьютеру (который создал новый сетевой интерфейс с именем «Ethernet 12» и описание «Foobar») и иметь возможность установить IP -адрес этого интерфейса с помощью Java. Используя эту ссылку: изменить IP -адрес компьютера с помощью Java, я могу настроить IP -адрес интерфейса. У меня проблема в том, что в Java я не могу получить имя интерфейса, созданного устройством. Из документации, которую я нашел, я сделал следующее: < /p>

Enumeration networkInterfaces = NetworkInterface.getNetworkInterfaces();

while(networkInterfaces.hasMoreElements())
{
NetworkInterface networkInterface = networkInterfaces.nextElement();

if (networkInterface.isUp())
System.out.println("Display name: " + networkInterface.getDisplayName() + "\nName: " + networkInterface.getName() + "\nAddress: " + networkInterface.getInterfaceAddresses().get(0));
}
< /code>

и получил следующий результат: < /p>

Display name: foobar
Name: eth15
Address 111.116.15.4
< /code>

Я ожидал, что имя будет «Ethernet 12», а не «Eth15», что, похоже, не имеет никакого смысла. Я заметил то же самое для всего другого моего интерфейса (Wi -Fi, Ethernet и т. Д.). Поскольку мне нужно настоящее имя моего интерфейса (Ethernet 12) для настройки IP -адреса с помощью Netsh (и не случайного, подобного «eth15»), я застрял ... < /p>

Есть ли причина, почему я получаю «eth15» как имя моего интерфейса?>

Подробнее здесь: https://stackoverflow.com/questions/586 ... ce-in-java

Вернуться в «JAVA»