Объясните свойства экземпляра System.Net.IPAddress - PullRequest
6 голосов
/ 24 июня 2011

У меня небольшие проблемы с пониманием System.Net.IPAddress класса , потому что я не знаю, где искать определение того, на что ссылаются некоторые свойства.В частности, что:

 IPAddress.IsIPv6LinkLocal
 IPAddress.IsIPv6Multicast
 IPAddress.IsIPv6SiteLocal
 IPAddress.IsIPv6Teredo

Я также с радостью приму ответ, который указывает на ресурс, который объясняет эти понятия.Сайт MSDN оказался недостаточным.

Ответы [ 3 ]

8 голосов
/ 24 июня 2011

IPAddress.IsIPv6LinkLocal

Ссылочный локальный адрес - это IP-адрес это предназначено только для связь в местном подсеть. Маршрутизаторы не пересылают пакеты с локальными адресами.

IPAddress.IsIPv6Multicast

Адрес многоадресной рассылки является логическим идентификатор группы хостов в компьютерная сеть, которая доступна обрабатывать дейтаграммы или кадры предназначен для многоадресной рассылки для назначенный сетевой сервис. Multicast адресация может быть использована в ссылке Уровень (уровень 2 в модели OSI), такой как многоадресный Ethernet, так и на Интернет-уровень (уровень 3 для OSI) для Интернет-протокол версии 4 (IPv4) или Многоадресная рассылка версии 6 (IPv6).

IPAddress.IsIPv6SiteLocal

Уникальный локальный адрес (ULA) является IPv6 адрес в блоке fc00 :: / 7, определено в RFC 4193. Это IPv6 аналог IPv4 частного адрес. Уникальные локальные адреса доступны для использования в частных сетях, например внутри одного сайта или организация или охват ограниченного количество сайтов или организаций. Oни не маршрутизируются в глобальном IPv6 Интернет.

IPAddress.IsIPv6Teredo

В компьютерной сети Teredo является технология перехода, которая дает полный Возможность подключения по IPv6 для IPv6-совместимых хосты которые находятся в интернете IPv4 но которые не имеют прямого родного подключение к сети IPv6. По сравнению с другими аналогичными протоколами его отличительной чертой является то, что он способен выполнять свою функцию даже из-за сетевого адреса устройства для перевода (NAT), такие как домашние маршрутизаторы.

4 голосов
/ 24 июня 2011

Ответ CodeNaked почти правильный, но, пожалуйста, следите за IPAddress.IsIPv6SiteLocal. Первоначальные локальные адреса сайтов IPv6 (fec0 :: / 10) устарели.

В эти дни вместо локального сайта используются уникальные локальные адреса (ULA). У ULA есть два варианта: fc00 :: / 8 еще не определен, но может использоваться в будущем для адресов внутреннего использования, которые зарегистрированы в центральном месте (ULA Central). fd00 :: / 8 используется и не должен нигде регистрироваться. Префиксы из этого диапазона генерируются случайным образом.

К сожалению, IsIPv6SiteLocal проверяет только оригинальную устаревшую версию:

PS C:\Users\Administrator> [System.Net.IPAddress]'fec0::'

Address           :
AddressFamily     : InterNetworkV6
ScopeId           : 0
IsIPv6Multicast   : False
IsIPv6LinkLocal   : False
IsIPv6SiteLocal   : True
IPAddressToString : fec0::

Не распознает ULA Central:

PS C:\Users\Administrator> [System.Net.IPAddress]'fc00::'

Address           :
AddressFamily     : InterNetworkV6
ScopeId           : 0
IsIPv6Multicast   : False
IsIPv6LinkLocal   : False
IsIPv6SiteLocal   : False
IPAddressToString : fc00::

Или локально назначенный ULA:

PS C:\Users\Administrator> [System.Net.IPAddress]'fd00::'

Address           :
AddressFamily     : InterNetworkV6
ScopeId           : 0
IsIPv6Multicast   : False
IsIPv6LinkLocal   : False
IsIPv6SiteLocal   : False
IPAddressToString : fd00::

Подробнее см. http://tools.ietf.org/search/rfc4193.

0 голосов
/ 24 июня 2011

Для локальных ссылок и локальных сайтов:

http://www.tcpipguide.com/free/t_IPv6SpecialAddressesReservedPrivateLinkLocalSiteLo-3.htm

Для локальных ссылок, локальных и многоадресных сайтов (и других также):

http://technet.microsoft.com/en-us/library/cc757359(WS.10).aspx

Для тередо:

http://technet.microsoft.com/en-us/library/bb457011.aspx

НТН

...