Получение интерфейса NAME из java

Моя ОС — CentOS 6. В моем файле /etc/sysconfig/network-scripts/ifcfg-eth0 я указал сетевой интерфейс с "NAME" по "foo" (допустим).

NAME=foo

Я хочу иметь возможность получить этот интерфейс "NAME" из java. Я пробовал следующее, безрезультатно:


     for (Enumeration nis = NetworkInterface.getNetworkInterfaces(); nis.hasMoreElements();) {
         NetworkInterface ni = nis.nextElement();
     System.out.println(ni.getDisplayName() + " " + ni.getName());
     }

Он отображает то же самое:

eth0 eth0

Может ли кто-нибудь сказать мне, можно ли получить значение NAME, свойства сетевого интерфейса, в java?

Спасибо.

ПРИМЕЧАНИЕ. При указании NAME=foo имя этого интерфейса на сетевой панели, расположенной в правом верхнем углу экрана, будет foo.


person artaxerxe    schedule 05.01.2012    source источник
comment
Вы пытались перезапустить сеть после установки нового значения имени сетевого интерфейса?   -  person Kohányi Róbert    schedule 05.01.2012
comment
@KohányiRóbert Да. Но методы getName() и getDisplayName() класса NetworkInterface, насколько я вижу, не имеют ничего со свойством NAME.   -  person artaxerxe    schedule 05.01.2012
comment
Да, в методах, вероятно, не указано, возвращают ли они вещи из значения ключа файла конфигурации *nix или нет, потому что они пытаются быть независимыми. Кроме того, по определению NetworkInterface.getName() будет/должно возвращать имя сетевого интерфейса. В вашем случае, я думаю, NAME — это не имя вашего сетевого интерфейса, а метка, которой вы пометили eth0, которая является вашим настоящим сетевым интерфейсом и его настоящим именем. (Хотя я не специалист по *nix и у меня недостаточно знаний о сетевых интерфейсах и их именах в частности.)   -  person Kohányi Róbert    schedule 05.01.2012


Ответы (1)


Вы уверены, что правильно изменили имя сетевой карты? Пожалуйста, проверьте следующую ссылку CentOS изменение имени сетевой карты

person NiranjanBhat    schedule 05.01.2012
comment
Я не имел в виду имя ethN. Я ссылаюсь на свойство NAME из файла ifcfg-ethN. Как я могу получить к нему доступ из java? Это моя проблема. - person artaxerxe; 05.01.2012