|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public final class Inet6Address extends InetAddress
Привилегированная форма является x:x:x:x:x:x:x:x, где 'x's является шестнадцатеричными значениями восьми 16-разрядных частей адреса. Это - полная форма. Например,
1080:0:0:0:8:800:200C:417A
Отметьте, что не необходимо записать начальные нули в отдельном поле. Однако, должна быть по крайней мере одна цифра в каждом поле, за исключением описанного ниже.
Из-за некоторых методов выделения определенных стилей адресов IPv6, адресам будет свойственно содержать длинные строки нулевых битов. Чтобы сделать адреса записи, содержащие нулевые биты легче, специальный синтаксис доступен, чтобы сжать нули. Использование "::" указывает на многократные группы 16 битов нулей. "::" может только появиться однажды в адресе. "::" может также использоваться, чтобы сжать начальные и/или конечные нули в адресе. Например,
1080::8:800:200C:417A
Альтернативная форма, которая иногда более удобна, имея дело со смешанной средой IPv4 и узлов IPv6, является x:x:x:x:x:x:d.d.d.d, где 'x's является шестнадцатеричными значениями шести старших разрядов 16-разрядные части адреса, и 'd's является десятичными значениями четырех младших разрядов 8-разрядные части стандартного адреса представления IPv4, например,
::FFFF:129.144.52.38 ::129.144.52.38
где ":: FFFF:d.d.d.d" и ":: d.d.d.d" являются, соответственно, общими формами отображенного на IPv4 адреса IPv6 и совместимого с IPv4 адреса IPv6. Отметьте, что часть IPv4 должна быть в форме "d.d.d.d". Следующие формы недопустимы:
::FFFF:d.d.d ::FFFF:d.d ::d.d.d ::d.d
Следующая форма:
::FFFF:d
допустимо, однако это - нетрадиционное представление совместимого с IPv4 адреса IPv6,
::255.255.0.d
в то время как ":: d" соответствует общему адресу IPv6 "0:0:0:0:0:0:0:d".
Для методов, которые возвращают текстовое представление как выходное значение, используется полная форма. Inet6Address возвратит полную форму, потому что это однозначно когда использующийся в комбинации с другими текстовыми данными.
Отображенный на IPv4 адрес Из формы:: ffff:w.x.y.z, этот адрес IPv6 используется, чтобы представить адрес IPv4. Это позволяет собственной программе использовать ту же самую структуру данных адреса и также тот же самый сокет, связываясь и с IPv4 и с узлами IPv6. В InetAddress и Inet6Address, это используется для внутреннего представления; у этого нет никакой функциональной роли. Java никогда не будет возвращать отображенный на IPv4 адрес. Эти классы могут взять отображенный на IPv4 адрес как входной, и в байтовом массиве и в текстовом представлении. Однако, это будет преобразовано в адрес IPv4.
Текстовое представление адресов IPv6 как описано выше может быть расширено, чтобы определить IPv6 определяющие контекст адреса. Это расширение основной архитектуры адресации описывается в [draft-ietf-ipngwg-scoping-arch-04.txt].
Поскольку локальные для ссылки и локальные для сайта адреса являются неглобальной переменной, возможно, что различные узлы могут иметь тот же самый адрес получателя и могут быть достижимыми через различные интерфейсы на той же самой инициирующей системе. В этом случае инициирующая система, как говорят, соединяется с многократными зонами того же самого контекста. Чтобы снять неоднозначность, который является намеченной целевой зоной, возможно добавить зональный идентификатор (или scope_id) к адресу IPv6.
Общий формат для того, чтобы определить scope_id является следующим:
IPv6-address%scope_id
Адресным IPv6 является литеральный адрес IPv6 как описано выше. scope_id обращается к интерфейсу на локальной системе, и это может быть определено двумя способами.
NetworkInterface.getName() для определенного рассматриваемого интерфейса. Когда Inet6Address создается таким образом, числовой идентификатор контекста определяется в то время, когда объект создается, запрашивая соответствующий NetworkInterface.Отметьте также, что числовой scope_id может быть получен от экземпляров Inet6Address, возвращенных из NetworkInterface class. Это может использоваться, чтобы узнать текущие идентификаторы контекста, сконфигурированные на системе.
| Модификатор и Тип | Метод и Описание |
|---|---|
boolean |
equals(Object obj)
Сравнивает этот объект с указанным объектом.
|
byte[] |
getAddress()
Возвращает необработанный IP-адрес этого
InetAddress объект. |
static Inet6Address |
getByAddress(String host, byte[] addr, int scope_id)
Создайте Inet6Address точным способом
InetAddress.getByAddress(String,byte[]) за исключением того, что IPv6 scope_id устанавливается в данное числовое значение. |
static Inet6Address |
getByAddress(String host, byte[] addr, NetworkInterface nif)
Создайте Inet6Address точным способом
InetAddress.getByAddress(String,byte[]) за исключением того, что IPv6 scope_id устанавливается в значение, соответствующее данному интерфейсу для типа адреса, определенного в addr. |
Строка |
getHostAddress()
Возвращает строку IP-адреса в текстовом представлении.
|
NetworkInterface |
getScopedInterface()
Возвращает определяющий контекст интерфейс, если этот экземпляр создавался с с определяющим контекст интерфейсом.
|
int |
getScopeId()
Возвращает числовой scopeId, если этот экземпляр связывается с интерфейсом.
|
int |
hashCode()
Возвращает хэш-код для этого IP-адреса.
|
boolean |
isAnyLocalAddress()
Служебная подпрограмма, чтобы проверить, если InetAddress в подстановочный адрес.
|
boolean |
isIPv4CompatibleAddress()
Служебная подпрограмма, чтобы проверить, является ли InetAddress IPv4 совместимый адрес IPv6.
|
boolean |
isLinkLocalAddress()
Служебная подпрограмма, чтобы проверить, является ли InetAddress ссылкой локальный адрес.
|
boolean |
isLoopbackAddress()
Служебная подпрограмма, чтобы проверить, является ли InetAddress петлевым адресом.
|
boolean |
isMCGlobal()
Служебная подпрограмма, чтобы проверить, есть ли у многоадресного адреса глобальная область видимости.
|
boolean |
isMCLinkLocal()
Служебная подпрограмма, чтобы проверить, есть ли у многоадресного адреса контекст ссылки.
|
boolean |
isMCNodeLocal()
Служебная подпрограмма, чтобы проверить, есть ли у многоадресного адреса контекст узла.
|
boolean |
isMCOrgLocal()
Служебная подпрограмма, чтобы проверить, есть ли у многоадресного адреса организационный контекст.
|
boolean |
isMCSiteLocal()
Служебная подпрограмма, чтобы проверить, есть ли у многоадресного адреса контекст сайта.
|
boolean |
isMulticastAddress()
Служебная подпрограмма, чтобы проверить, является ли InetAddress многоадресным адресом IP.
|
boolean |
isSiteLocalAddress()
Служебная подпрограмма, чтобы проверить, является ли InetAddress сайтом локальный адрес.
|
getAllByName, getByAddress, getByAddress, getByName, getCanonicalHostName, getHostName, getLocalHost, getLoopbackAddress, isReachable, isReachable, toStringpublic static Inet6Address getByAddress(String host, byte[] addr, NetworkInterface nif) throws UnknownHostException
InetAddress.getByAddress(String,byte[]) за исключением того, что IPv6 scope_id устанавливается в значение, соответствующее данному интерфейсу для типа адреса, определенного в addr. Вызов перестанет работать с UnknownHostException, если данному интерфейсу не присвоят числовой scope_id для данного типа адреса (eg. локальный для ссылки или локальный для сайта). См. здесь для описания IPv6 определяющие контекст адреса.host - указанный узелaddr - необработанный IP-адрес в сетевом порядке байтовnif - интерфейс этот адрес должен быть связан с.UnknownHostException - если IP-адрес имеет недопустимую длину, или если интерфейсу не присваивали числовой scope_id для данного типа адреса.public static Inet6Address getByAddress(String host, byte[] addr, int scope_id) throws UnknownHostException
InetAddress.getByAddress(String,byte[]) за исключением того, что IPv6 scope_id устанавливается в данное числовое значение. scope_id не проверяется, чтобы определить, соответствует ли он какому-либо интерфейсу на системе. См. здесь для описания IPv6 определяющие контекст адреса.host - указанный узелaddr - необработанный IP-адрес в сетевом порядке байтовscope_id - числовой scope_id для адреса.UnknownHostException - если IP-адрес имеет недопустимую длину.public boolean isMulticastAddress()
isMulticastAddress в class InetAddressboolean указание, является ли InetAddress многоадресным адресом IPpublic boolean isAnyLocalAddress()
isAnyLocalAddress в class InetAddressboolean указание, является ли Inetaddress подстановочным адресом.public boolean isLoopbackAddress()
isLoopbackAddress в class InetAddressboolean указание, является ли InetAddress петлевым адресом; или ложь иначе.public boolean isLinkLocalAddress()
isLinkLocalAddress в class InetAddressboolean указание, является ли InetAddress ссылкой локальный адрес; или ложь, если адрес не является ссылкой локальный одноадресный адрес.public boolean isSiteLocalAddress()
isSiteLocalAddress в class InetAddressboolean указание, является ли InetAddress сайтом локальный адрес; или ложь, если адрес не является сайтом локальный одноадресный адрес.public boolean isMCGlobal()
isMCGlobal в class InetAddressboolean указание, если адрес имеет, является многоадресным адресом глобальной области видимости, ложь, если это не имеет глобальной области видимости или это не многоадресный адресpublic boolean isMCNodeLocal()
isMCNodeLocal в class InetAddressboolean указание, если адрес имеет, является многоадресным адресом локального для узла контекста, ложь, если это не имеет локального для узла контекста или это не многоадресный адресpublic boolean isMCLinkLocal()
isMCLinkLocal в class InetAddressboolean указание, если адрес имеет, является многоадресным адресом локального для ссылки контекста, ложь, если это не имеет локального для ссылки контекста или это не многоадресный адресpublic boolean isMCSiteLocal()
isMCSiteLocal в class InetAddressboolean указание, если адрес имеет, является многоадресным адресом локального для сайта контекста, ложь, если это не имеет локального для сайта контекста или это не многоадресный адресpublic boolean isMCOrgLocal()
isMCOrgLocal в class InetAddressboolean указание, если адрес имеет, является многоадресным адресом локального для организации контекста, ложь, если это не имеет локального для организации контекста или это не многоадресный адресpublic byte[] getAddress()
InetAddress объект. Результат находится в сетевом порядке байтов: самый высокий байт порядка адреса находится в getAddress()[0].getAddress в class InetAddresspublic int getScopeId()
public NetworkInterface getScopedInterface()
public String getHostAddress()
getHostAddress в class InetAddresspublic int hashCode()
hashCode в class InetAddressObject.equals(java.lang.Object), System.identityHashCode(java.lang.Object)public boolean equals(Object obj)
true если и только если параметр не null и это представляет тот же самый IP-адрес как этот объект. Два экземпляра InetAddress представьте тот же самый IP-адрес если длина байтовых массивов, возвращенных getAddress то же самое для обоих, и каждый из компонентов массива является тем же самым для байтовых массивов.
equals в class InetAddressobj - объект сравниться с.true если объекты являются тем же самым; false иначе.InetAddress.getAddress()public boolean isIPv4CompatibleAddress()
boolean указание, является ли InetAddress IPv4 совместимый адрес IPv6; или ложь, если адрес является адресом IPv4.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92