Spec-Zone.ru › OpenJDK 21

Класс NetworkInterface

java.lang.Object
java.net.NetworkInterface
public final class NetworkInterface extends Object
Этот класс представляет сетевой интерфейс, состоящий из имени и списка IP-адресов, назначенных этому интерфейсу. Он используется для идентификации локального интерфейса, к которому присоединена группа мультикаста. Интерфейсы обычно известны по именам, таким как "le0".
С тех пор:
1.4

Краткое описание методов

Модификатор и тип Метод Описание
boolean equals(Object obj)
Сравнивает этот объект с указанным объектом.
static NetworkInterface getByIndex(int index)
Получение сетевого интерфейса по его индексу.
static NetworkInterface getByInetAddress(InetAddress addr)
Удобный метод для поиска сетевого интерфейса, к которому привязан указанный IP-адрес.
static NetworkInterface getByName(String name)
Поиск сетевого интерфейса по указанному имени.
String getDisplayName()
Получение отображаемого имени этого сетевого интерфейса.
byte[] getHardwareAddress()
Возвращает физический адрес (обычно MAC) интерфейса, если он есть и доступен при текущих привилегиях.
int getIndex()
Возвращает индекс этого сетевого интерфейса.
Enumeration<InetAddress> getInetAddresses()
Получение перечисления со всеми или подмножеством InetAddresses, привязанных к этому сетевому интерфейсу.
List<InterfaceAddress> getInterfaceAddresses()
Получение списка всех или подмножества InterfaceAddresses этого сетевого интерфейса.
int getMTU()
Возвращает максимальный размер пакета (MTU) этого интерфейса.
String getName()
Получение имени этого сетевого интерфейса.
static Enumeration<NetworkInterface> getNetworkInterfaces()
Возвращает перечисление всех интерфейсов на этом компьютере.
NetworkInterface getParent()
Возвращает родительский сетевой интерфейс этого интерфейса, если это подинтерфейс, или null , если это физический (не виртуальный) интерфейс или у него нет родителя.
Enumeration<NetworkInterface> getSubInterfaces()
Получение перечисления всех подинтерфейсов (также известных как виртуальные интерфейсы), подключенных к этому сетевому интерфейсу.
Stream<InetAddress> inetAddresses()
Получение потока всех или подмножества InetAddresses, привязанных к этому сетевому интерфейсу.
boolean isLoopback()
Возвращает, является ли сетевой интерфейс интерфейсом обратной связи.
boolean isPointToPoint()
Возвращает, является ли сетевой интерфейс интерфейсом точка-точка.
boolean isUp()
Возвращает, работает ли сетевой интерфейс.
boolean isVirtual()
Возвращает, является ли этот интерфейс виртуальным интерфейсом (также называемым подинтерфейсом).
static Stream<NetworkInterface> networkInterfaces()
Возвращает перечисление всех интерфейсов на этом компьютере.
Stream<NetworkInterface> subInterfaces()
Получение потока всех подинтерфейсов (также известных как виртуальные интерфейсы), подключенных к этому сетевому интерфейсу.
boolean supportsMulticast()
Возвращает, поддерживает ли сетевой интерфейс мультикаст.

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Методы

getName

public String getName()
Получить имя этого сетевого интерфейса.
Возвращает:
имя этого сетевого интерфейса

getInetAddresses

public Enumeration<InetAddress> getInetAddresses()
Получить перечисление всех или подмножества адресов InetAddress, связанных с этим сетевым интерфейсом.

Если есть менеджер безопасности, его метод checkConnect вызывается для каждого InetAddress. Только InetAddresses, для которых checkConnect не генерирует SecurityException, будут возвращены в перечислении. Однако, если у вызывающего есть разрешение NetPermission("getNetworkInformation"), то возвращаются все InetAddresses.

Возвращает:
объект перечисления со всеми или подмножеством адресов InetAddress, связанных с этим сетевым интерфейсом
См. также:
  • inetAddresses()

inetAddresses

public Stream<InetAddress> inetAddresses()
Получить поток всех или подмножества адресов InetAddress, связанных с этим сетевым интерфейсом.

Если есть менеджер безопасности, его метод checkConnect вызывается для каждого InetAddress. Только InetAddresses, для которых checkConnect не генерирует SecurityException, будут возвращены в потоке. Однако, если у вызывающего есть разрешение NetPermission("getNetworkInformation"), то возвращаются все InetAddresses.

Возвращает:
объект потока со всеми или подмножеством адресов InetAddress, связанных с этим сетевым интерфейсом
С момента:
9

getInterfaceAddresses

public List<InterfaceAddress> getInterfaceAddresses()
Получить список всех или подмножества InterfaceAddresses этого сетевого интерфейса.

Если есть менеджер безопасности, его метод checkConnect вызывается с InetAddress для каждого InterfaceAddress. Только InterfaceAddresses, для которых checkConnect не генерирует SecurityException, будут возвращены в списке.

Возвращает:
объект списка со всеми или подмножеством InterfaceAddress этого сетевого интерфейса
С момента:
1.6

getSubInterfaces

public Enumeration<NetworkInterface> getSubInterfaces()
Получить перечисление всех подчиненных интерфейсов (также известных как виртуальные интерфейсы), подключенных к этому сетевому интерфейсу.

Например, eth0:1 будет подчиненным интерфейсом к eth0.

Возвращает:
объект перечисления со всеми подчиненными интерфейсами этого сетевого интерфейса
С момента:
1.6
См. также:
  • subInterfaces()

subInterfaces

public Stream<NetworkInterface> subInterfaces()
Получить поток всех подчиненных интерфейсов (также известных как виртуальные интерфейсы), подключенных к этому сетевому интерфейсу.
Возвращает:
объект потока со всеми подчиненными интерфейсами этого сетевого интерфейса
С момента:
9

getParent

public NetworkInterface getParent()
Возвращает родительский NetworkInterface этого интерфейса, если это подчиненный интерфейс, или null если это физический (не виртуальный) интерфейс или у него нет родителя.
Возвращает:
родительский NetworkInterface этого интерфейса.
С момента:
1.6

getIndex

public int getIndex()
Возвращает индекс этого сетевого интерфейса. Индекс — это целое число, большее или равное нулю, или -1 для неизвестного. Это значение специфично для системы, и интерфейсы с одинаковым именем могут иметь разные индексы на разных машинах.
Возвращает:
индекс этого сетевого интерфейса или -1 если индекс неизвестен
С момента:
1.7
См. также:
  • getByIndex(int)

getDisplayName

public String getDisplayName()
Получить отображаемое имя этого сетевого интерфейса. Отображаемое имя — это читаемая человеком строка, описывающая сетевое устройство.
Возвращает:
непустую строку, представляющую отображаемое имя этого сетевого интерфейса, или null, если отображаемое имя недоступно.

getByName

public static NetworkInterface getByName(String name) throws SocketException
Ищет сетевой интерфейс с заданным именем.
Параметры:
name - Имя сетевого интерфейса.
Возвращает:
сетевой интерфейс с заданным именем или null если нет сетевого интерфейса с заданным именем.
Исключения:
SocketException - Если происходит ошибка ввода-вывода.
NullPointerException - Если заданное имя null.

getByIndex

public static NetworkInterface getByIndex(int index) throws SocketException
Получить сетевой интерфейс по его индексу.
Параметры:
index - целое число, индекс интерфейса
Возвращает:
сетевой интерфейс, полученный по его индексу, или null если на системе нет интерфейса с таким индексом
Исключения:
SocketException - если происходит ошибка ввода-вывода.
IllegalArgumentException - если индекс имеет отрицательное значение
С момента:
1.7
См. также:
  • getIndex()

getByInetAddress

public static NetworkInterface getByInetAddress(InetAddress addr) throws SocketException
Метод-утилита для поиска сетевого интерфейса, к которому привязан указанный адрес Интернет-протокола (IP).

Если указанный IP-адрес привязан к нескольким сетевым интерфейсам, не определено, какой сетевой интерфейс будет возвращён.

Параметры:
addr - Искомый InetAddress.
Возвращает:
сетевой интерфейс или null если нет сетевого интерфейса с указанным IP-адресом.
Исключения:
SocketException - Если происходит ошибка ввода-вывода.
NullPointerException - Если указанный адрес null.

getNetworkInterfaces

public static Enumeration<NetworkInterface> getNetworkInterfaces() throws SocketException
Возвращает Enumeration всех интерфейсов на этой машине. Enumeration содержит как минимум один элемент, возможно, представляющий обратный интерфейс, который поддерживает только взаимодействие между сущностями на этой машине.
Примечание API:
Этот метод можно использовать в сочетании с getInetAddresses() для получения всех IP-адресов для этого узла
Возвращает:
перечисление NetworkInterfaces, найденных на этой машине
Исключения:
SocketException - если произошла ошибка ввода-вывода или платформа не имеет как минимум одного настроенного сетевого интерфейса.
См. также:
  • networkInterfaces()

networkInterfaces

public static Stream<NetworkInterface> networkInterfaces() throws SocketException
Возвращает Stream всех интерфейсов на этой машине. Stream содержит как минимум один интерфейс, возможно, представляющий обратный интерфейс, который поддерживает только взаимодействие между сущностями на этой машине.
Примечание API:
Этот метод можно использовать в сочетании с inetAddresses()} для получения потока всех IP-адресов для этого узла, например:
 
 Stream<InetAddress> addrs = NetworkInterface.networkInterfaces()
     .flatMap(NetworkInterface::inetAddresses);
 
Возвращает:
поток NetworkInterfaces, найденных на этой машине
Исключения:
SocketException - если произошла ошибка ввода-вывода или платформа не имеет как минимум одного настроенного сетевого интерфейса.
С момента:
9

isUp

public boolean isUp() throws SocketException
Возвращает, является ли сетевой интерфейс активным и работающим.
Возвращает:
true если интерфейс активен и работает.
Исключения:
SocketException - если произошла ошибка ввода-вывода.
С момента:
1.6

isLoopback

public boolean isLoopback() throws SocketException
Возвращает, является ли сетевой интерфейс обратным интерфейсом.
Возвращает:
true если интерфейс является обратным интерфейсом.
Исключения:
SocketException - если произошла ошибка ввода-вывода.
С момента:
1.6

isPointToPoint

public boolean isPointToPoint() throws SocketException
Возвращает, является ли сетевой интерфейс интерфейсом «точка-точка». Типичным интерфейсом «точка-точка» является подключение PPP через модем.
Возвращает:
true если интерфейс является интерфейсом «точка-точка».
Исключения:
SocketException - если произошла ошибка ввода-вывода.
С момента:
1.6

supportsMulticast

public boolean supportsMulticast() throws SocketException
Возвращает, поддерживает ли сетевой интерфейс многоадресную рассылку.
Возвращает:
true если интерфейс поддерживает многоадресную рассылку.
Исключения:
SocketException - если произошла ошибка ввода-вывода.
С момента:
1.6

getHardwareAddress

public byte[] getHardwareAddress() throws SocketException
Возвращает аппаратный адрес (обычно MAC) интерфейса, если он есть и доступен с текущими привилегиями. Если установлен менеджер безопасности, то у вызывающего должен быть разрешение NetPermission("getNetworkInformation").
Возвращает:
массив байтов, содержащий адрес, или null если адрес не существует, недоступен или установлен менеджер безопасности, и у вызывающего нет разрешения NetPermission("getNetworkInformation")
Исключение:
SocketException - если произошла ошибка ввода-вывода.
С:
1.6

getMTU

public int getMTU() throws SocketException
Возвращает максимальный размер блока (MTU) этого интерфейса.
Возвращает:
значение MTU для данного интерфейса.
Исключение:
SocketException - если произошла ошибка ввода-вывода.
С:
1.6

isVirtual

public boolean isVirtual()
Возвращает значение, указывающее, является ли этот интерфейс виртуальным интерфейсом (также называемым подинтерфейсом). Виртуальные интерфейсы на некоторых системах создаются как дочерние интерфейсы физического интерфейса и имеют различные настройки (например, адрес или MTU). Обычно имя интерфейса будет именем родительского интерфейса, за которым следует двоеточие (:) и число, идентифицирующее дочерний интерфейс, поскольку к одному физическому интерфейсу может быть подключено несколько виртуальных интерфейсов.
Возвращает:
true если этот интерфейс является виртуальным интерфейсом.
С:
1.6

equals

public boolean equals(Object obj)
Сравнивает этот объект с указанным объектом. Результат равен true тогда и только тогда, когда аргумент не null и представляет тот же сетевой интерфейс, что и этот объект.

Два экземпляра NetworkInterface представляют один и тот же сетевой интерфейс, если равны как имя, так и набор InetAddressов, привязанных к интерфейсам.

Переопределяет:
equals в классе Object
Примечание API:
Два объекта NetworkInterface, ссылающиеся на один и тот же базовый интерфейс, могут не сравниваться как равные, если адреса базового интерфейса динамически обновляются системой.
Параметры:
obj - объект для сравнения.
Возвращает:
true если объекты одинаковы; false в противном случае.
См. также:
  • InetAddress.getAddress()

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/net/NetworkInterface.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API