Spec-Zone .ru
спецификации, руководства, описания, API
След: Пользовательские Сети
Урок: Программируемый Доступ к Сетевым Параметрам
Параметры Сетевого интерфейса
Домашняя страница > Пользовательские Сети > Программируемый Доступ к Сетевым Параметрам

Параметры Сетевого интерфейса

Можно получить доступ к сетевым параметрам о сетевом интерфейсе вне имени и IP-адресов, присвоенных этому

Можно обнаружить, возрос ли сетевой интерфейс (то есть, работая) с isUP() метод. Следующие методы указывают на тип сетевого интерфейса:

supportsMulticast() метод указывает, поддерживает ли сетевой интерфейс многоадресную передачу. getHardwareAddress() метод возвращает физический аппаратный адрес сетевого интерфейса, обычно вызываемый Мак адрес, когда это доступно. getMTU() метод возвращает Максимальный Модуль Передачи (MTU), который является самым большим пакетным размером.

Следующий пример подробно останавливается на примере в Перечислении Адресов Сетевого интерфейса, добавляя дополнительные сетевые параметры, описанные на этой странице:

import java.io.*;
import java.net.*;
import java.util.*;
import static java.lang.System.out;

public class ListNetsEx {

    public static void main(String args[]) throws SocketException {
        Enumeration<NetworkInterface> nets = NetworkInterface.getNetworkInterfaces();
        for (NetworkInterface netint : Collections.list(nets))
            displayInterfaceInformation(netint);
    }

    static void displayInterfaceInformation(NetworkInterface netint) throws SocketException {
        out.printf("Display name: %s\n", netint.getDisplayName());
        out.printf("Name: %s\n", netint.getName());
        Enumeration<InetAddress> inetAddresses = netint.getInetAddresses();
        
        for (InetAddress inetAddress : Collections.list(inetAddresses)) {
            out.printf("InetAddress: %s\n", inetAddress);
        }
       
        out.printf("Up? %s\n", netint.isUp());
        out.printf("Loopback? %s\n", netint.isLoopback());
        out.printf("PointToPoint? %s\n", netint.isPointToPoint());
        out.printf("Supports multicast? %s\n", netint.supportsMulticast());
        out.printf("Virtual? %s\n", netint.isVirtual());
        out.printf("Hardware address: %s\n",
                    Arrays.toString(netint.getHardwareAddress()));
        out.printf("MTU: %s\n", netint.getMTU());
        out.printf("\n");
     }
}  

Следующее является демонстрационным выводом из примера программы:

Display name: bge0
Name: bge0
InetAddress: /fe80:0:0:0:203:baff:fef2:e99d%2
InetAddress: /129.156.225.59
Up? true
Loopback? false
PointToPoint? false
Supports multicast? false
Virtual? false
Hardware address: [0, 3, 4, 5, 6, 7]
MTU: 1500

Display name: lo0
Name: lo0
InetAddress: /0:0:0:0:0:0:0:1%1
InetAddress: /127.0.0.1
Up? true
Loopback? true
PointToPoint? false
Supports multicast? false
Virtual? false
Hardware address: null
MTU: 8232

Проблемы с примерами? Попытайтесь Компилировать и Выполнить Примеры: FAQ.
Жалобы? Поздравление? Предложения? Дайте нам свою обратную связь.

Предыдущая страница: Перечисление Адресов Сетевого интерфейса
Следующая страница: Работа С Cookie