Класс NetworkInterface
public final class NetworkInterface extends Object
- Since:
- 1.4
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Сравнивает этот объект с указанным объектом. |
static NetworkInterface |
getByIndex |
Получение сетевого интерфейса по его индексу. |
static NetworkInterface |
getByInetAddress |
Удобный метод для поиска сетевого интерфейса, к которому привязан указанный IP-адрес. |
static NetworkInterface |
getByName |
Поиск сетевого интерфейса по заданному имени. |
String |
getDisplayName() |
Получение отображаемого имени этого сетевого интерфейса. |
byte[] |
getHardwareAddress() |
Возвращает физический адрес (обычно MAC) интерфейса, если он есть и доступен при текущих разрешениях. |
int |
getIndex() |
Возвращает индекс этого сетевого интерфейса. |
Enumeration<InetAddress> |
getInetAddresses() |
Получение перечисления всех или подмножества InetAddresses, привязанных к этому сетевому интерфейсу. |
List<InterfaceAddress> |
getInterfaceAddresses() |
Получение списка всех или подмножества InterfaceAddresses этого сетевого интерфейса. |
int |
getMTU() |
Возвращает максимальное значение MTU (Maximum Transmission Unit) этого интерфейса. |
String |
getName() |
Получение имени этого сетевого интерфейса. |
static Enumeration<NetworkInterface> |
getNetworkInterfaces() |
Возвращает перечисление всех интерфейсов на этом компьютере. |
NetworkInterface |
getParent() |
Возвращает родительский NetworkInterface этого интерфейса, если это дочерний интерфейс, или 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() |
Возвращает, поддерживает ли сетевой интерфейс многоадресную рассылку. |
Подробное описание методов
getName
public String getName()
- Возвращает:
- имя этого сетевого интерфейса
getInetAddresses
public Enumeration<InetAddress> getInetAddresses()
Если существует менеджер безопасности, его метод checkConnect вызывается для каждого InetAddress. Только InetAddresses, для которых checkConnect не выбросит SecurityException, будут возвращены в перечислении. Однако, если вызывающий обладает разрешением NetPermission("getNetworkInformation"), то возвращаются все InetAddresses.
- Возвращает:
- объект перечисления со всеми или подмножеством адресов InetAddress, привязанных к этому сетевому интерфейсу
- См. также:
inetAddresses
public Stream<InetAddress> inetAddresses()
Если существует менеджер безопасности, его метод checkConnect вызывается для каждого InetAddress. Только InetAddresses, для которых checkConnect не выбросит SecurityException, будут возвращены в потоке. Однако, если вызывающий обладает разрешением NetPermission("getNetworkInformation"), то возвращаются все InetAddresses.
- Возвращает:
- объект потока со всеми или подмножеством адресов InetAddresses, привязанных к этому сетевому интерфейсу
- С тех пор как:
- 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
public Stream<NetworkInterface> subInterfaces()
- Возвращает:
- объект потока со всеми подсетевыми интерфейсами этого сетевого интерфейса
- С тех пор как:
- 9
getParent
public NetworkInterface getParent()
null если это физический (не виртуальный) интерфейс или у него нет родителя.- Возвращает:
- родительский интерфейс, к которому подключен этот интерфейс.
- С тех пор как:
- 1.6
getIndex
public int getIndex()
-1 для неизвестного. Это значение, специфичное для системы, и интерфейсы с одинаковыми именами могут иметь разные индексы на разных машинах.- Возвращает:
- индекс этого сетевого интерфейса или
-1если индекс неизвестен - С тех пор как:
- 1.7
- См. также:
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
- См. также:
getByInetAddress
public static NetworkInterface getByInetAddress(InetAddress addr) throws SocketException
Если указанный IP-адрес привязан к нескольким сетевым интерфейсам, не определено, какой сетевой интерфейс будет возвращен.
- Параметры:
-
addr- IP-адрес для поиска. - Возвращает:
- сетевой интерфейс или
nullесли сетевого интерфейса с указанным IP-адресом нет. - Выбрасывает:
-
SocketException- Если произошла ошибка ввода-вывода. -
NullPointerException- Если указанный адресnull.
getNetworkInterfaces
public static Enumeration<NetworkInterface> getNetworkInterfaces() throws SocketException
- Примечание API:
- Этот метод можно использовать в сочетании с
getInetAddresses()для получения всех IP-адресов для этого узла - Возвращает:
- перечисление NetworkInterfaces, найденных на этой машине
- Выбрасывает:
-
SocketException- если произошла ошибка ввода-вывода или платформа не имеет по крайней мере одного настроенного сетевого интерфейса. - См. также:
networkInterfaces
public static Stream<NetworkInterface> networkInterfaces() throws SocketException
- Примечание 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
- Возвращает:
-
trueесли интерфейс является интерфейсом «точка-точка». - Выбрасывает:
-
SocketException- если произошла ошибка ввода-вывода. - С тех пор как:
- 1.6
supportsMulticast
public boolean supportsMulticast() throws SocketException
- Возвращает:
-
trueесли интерфейс поддерживает мультимедиа-трансляцию. - Выбрасывает:
-
SocketException- если произошла ошибка ввода-вывода. - С тех пор как:
- 1.6
getHardwareAddress
public byte[] getHardwareAddress() throws SocketException
NetPermission("getNetworkInformation").- Возвращает:
- массив байтов, содержащий адрес, или
nullесли адрес не существует, недоступен или менеджер безопасности установлен, и вызывающий метод не имеет разрешения NetPermission("getNetworkInformation") - Изначает исключение:
-
SocketException- если произошла ошибка ввода-вывода. - С:
- 1.6
getMTU
public int getMTU() throws SocketException
- Возвращает:
- значение MTU для данного интерфейса.
- Изначает исключение:
-
SocketException- если произошла ошибка ввода-вывода. - С:
- 1.6
isVirtual
public boolean isVirtual()
- Возвращает:
-
trueесли этот интерфейс является виртуальным интерфейсом. - С:
- 1.6
equals
public boolean equals(Object obj)
true тогда и только тогда, когда аргумент не null и представляет тот же NetworkInterface, что и этот объект. Два экземпляра NetworkInterface представляют один и тот же NetworkInterface, если имя и набор InetAddress интерфейсов равны.
- Переопределяет:
-
equalsв классеObject - Примечание API:
- два объекта
NetworkInterface, ссылающиеся на один и тот же базовый интерфейс, могут не сравниваться как равные, если адреса базового интерфейса динамически обновляются системой. - Параметры:
-
obj- объект для сравнения. - Возвращает:
-
trueесли объекты идентичны;falseв противном случае. - См. также:
© 1993, 2021, 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/17/docs/api/java.base/java/net/NetworkInterface.html