Подготовьтесь к запуску IPv6 (хотите вы этого или нет)
В последнее время я проводил много времени с бета-версией Windows Vista, пытаясь узнать все о ее внутреннем устройстве и обо всех новых функциях. Одной из самых полезных функций, представленных в Windows Vista, является новая функция одноранговой сети. Основная идея этой функции заключается в том, что когда вы путешествуете, вы можете сотрудничать с теми, с кем вы встречаетесь, формируя специальную беспроводную сеть, а затем используя специальные инструменты совместной работы для безопасного обмена информацией по этой специальной сети. Однако технология не ограничивается только беспроводными сетями. Даже в корпоративной среде, в которой все компьютеры являются частью домена, пользователи смогут создавать специальные рабочие группы, позволяющие им сотрудничать с другими членами своей группы. То, как Microsoft реализовала эту новую технологию, заслуживает внимания, и я надеюсь, что со временем смогу написать полноценную статью на эту тему.
В процессе исследования этой новой технологии одноранговой сети я сделал довольно ужасающее открытие. Новая технология одноранговой сети Windows требует IPv6. Я лично пытался использовать эту технологию с отключенным IPv6, и она просто не работает. Я также слышал необоснованные слухи о том, что IPv6 может стать требованием для некоторых других элементов сетевой архитектуры Windows Vista.
Что такое IPv6?
Прежде чем я углублюсь во все мельчайшие детали относительно того, почему IPv6 является обязательным требованием, я хочу кратко рассказать о том, что такое IPv6, для тех, кто, возможно, не был знаком с ним раньше. Как вы, наверное, знаете, Интернет основан на протоколе IP. Текущей реализацией протокола IP является версия 4 (иногда называемая IPv4).
IPv4 работает на удивление хорошо, но у него есть несколько существенных недостатков. Начнем с того, что IPv4 был изобретен в 1970-х годах. В то время никто и представить не мог, что протокол потребуется для выполнения некоторых задач, для которых он используется сегодня (например, для поддержки глобальной сети из миллионов компьютеров и передачи всего, от данных до голоса и видео). В протокол IPv4 также не встроена защита, поэтому безопасность была модернизирована с помощью дополнительных протоколов, таких как IPSec.
Однако основная проблема с протоколом IPv4 заключается в том, что он поддерживает ограниченное количество IP-адресов. За годы до того, как Интернет стал основной технологией, в мире уже заканчивались IP-адреса. Преобразование сетевых адресов (NAT) было изобретено, чтобы помочь обойти нехватку IP-адресов. Это технология, при которой компьютеры в частной сети используют частные адреса для связи друг с другом внутри сети, но совместно используют один общедоступный IP-адрес для всех интернет-коммуникаций. Если вам интересно, протокол IPv4 поддерживает в общей сложности около 4,3 миллиарда IP-адресов. Звучит много, но помните, что в мире 6,5 миллиардов человек, и многие из них имеют более одного устройства (компьютер на работе, компьютер дома, мобильный телефон с доступом в Интернет и т. д.). Для сравнения, IPv6 поддерживает примерно 50 октиллионов IP-адресов.
Зачем нужен IPv6?
Хорошо, конечно, IPv6 — хорошая идея, но вы можете задаться вопросом, почему некоторые части Windows Vista требуют его, когда IPv4 все еще жив и здоров. Есть несколько причин для требования. Одни причины политические, другие технические.
Что касается политических причин, Microsoft подталкивает компании к внедрению IPv6 начиная с Windows 2000. Очевидно, что IPv6 еще не получил распространения (по крайней мере, не в Соединенных Штатах), хотя он доступен уже много лет. Однако есть и те, кто считает, что переход давно назрел. Например, федеральное правительство США обязало все федеральные агентства перейти на IPv6 к июню 2008 года. Стремясь облегчить переход для правительства и других сторон, Microsoft включила IPv6 по умолчанию в Windows Vista. Поскольку большинство людей ожидает, что IPv6 станет протоколом будущего, Microsoft создала по крайней мере некоторые из новых сетевых функций Vista на основе этого протокола.
Я упомянул, что есть некоторые технические причины, обуславливающие необходимость использования IPv6 некоторыми сетевыми компонентами Vista. Новый компонент одноранговой сети является прекрасным примером этого. Как я объяснял ранее, одна из основных причин, по которой Microsoft создала функцию одноранговой сети Vista, заключается в том, чтобы позволить людям создавать специальные беспроводные сети, через которые они могут сотрудничать в проектах. На первый взгляд это может показаться простым, но существуют серьезные проблемы, связанные с одноранговыми сетями.
Одной из самых больших проблем является разрешение имен. Как правило, когда вы получаете доступ к ресурсу в корпоративной сети или в Интернете, вы указываете ресурс, используя какое-либо имя. В Интернете это имя часто является универсальным указателем ресурсов (URL). В корпоративной сети вы можете использовать подключенный сетевой диск или универсальное соглашение об именах. Проблема в том, что все методы, которые я только что описал, обычно используют DNS для разрешения имен хостов. Однако, если вы формируете специальную сеть с пятью другими людьми на конференции, единственные сетевые ресурсы, которые у вас есть, — это то, что когда-либо работало на ноутбуке каждого человека. Даже если у одного из участников группы службы DNS были запущены на ноутбуке, остальные машины не настроены на автоматическое использование доступного DNS-сервера. Если люди, которые сотрудничают, не являются ИТ-специалистами, есть большая вероятность, что никто в группе не будет знать, как выполнить необходимую настройку.
Когда Microsoft создала компонент одноранговой сети Vista, одной из их целей было упростить переход между корпоративными сетями и одноранговыми сетями для всех. Таким образом, команда разработчиков исходила из предположения, что люди, не являющиеся ИТ-специалистами, захотят использовать функцию одноранговой сети и что внешние ресурсы, такие как DNS-серверы и DHCP-серверы, будут недоступны.
Здесь в игру вступает IPv6. IPv6 поддерживает обнаружение сервисов таким образом, что становится возможным ситуативное сотрудничество. Например, предположим, что группа людей хочет создать специальную сеть и общаться с помощью служб совместной работы. По мере формирования сети один человек в группе запускает приложение, предназначенное для интеграции со службами совместной работы. Как только службы совместной работы запускаются, они передают многоадресное сообщение всем пользователям сети ad-hoc, уведомляя их о доступности службы.
С другой стороны, клиенты в группе также могут использовать протокол обнаружения для поиска служб, которые были предоставлены группе. В этой ситуации клиент отправляет тестовое сообщение в многоадресном формате по сети ad-hoc. Этот зонд может указывать на предпочтительную целевую службу или предпочтительную область действия. Если на узле запущена целевая служба, соответствующая зонду, он отправляет ответ зонда непосредственно клиенту, инициировавшему зондирование. Если клиенту необходимо знать имя целевой службы, он также может отправить многоадресный запрос разрешения по сети ad-hoc.
Как видите, функциональность, которую я описал выше, сильно отличается от всего, что обычно используется сегодня. Microsoft воспользовалась возможностями IPv6 для создания такой функциональности.
Насколько сложно настроить IPv6?
В первый раз, когда вы внимательно посмотрите на реализацию IPv6, это, вероятно, покажется кошмарным сценарием. В конце концов, большинство современных DHCP-серверов не предназначены для автоматического распределения IPv6-адресов. Точно так же ваши маршрутизаторы могут не иметь возможности пересылать пакеты IPv6. Даже если вы выберете настройку IPv6 вручную, формат адреса совсем не похож на тот, к которому вы, вероятно, привыкли.
Однако есть и хорошие новости. В Vista IPv6 настраивается автоматически (по крайней мере, до некоторой степени). Корпорация Майкрософт разработала Windows Vista таким образом, что если вы не назначите машине IPv6-адрес вручную и машина не получит IPv6-адрес от DHCP-сервера, уникальный IPv6-адрес будет получен из уникальной подписи машины. Этот автоматически полученный IP-адрес, вероятно, не подходит для всех целей, но его будет достаточно для связи в сетях ad-hoc.
Последняя вещь
В предыдущем разделе я упомянул потенциальную несовместимость оборудования как одно из потенциальных препятствий для внедрения IPv6. Это выходит за рамки данной статьи, но я хотел хотя бы упомянуть, что Microsoft предлагает технологию под названием Teredo. Teredo помогает при переходе с IPv4 на IPv6, позволяя инкапсулировать пакеты IPv6 в UDP-пакеты IPv4. Это позволяет трафику IPv6 проходить через маршрутизаторы NAT и тому подобное.
Вывод
Хотя многие компании могут медлить с переходом на Vista, я считаю, что окончательный переход на IPv6 неизбежен. Потенциально каждому, кто решит полностью перейти с IPv4 на IPv6, предстоит пройти крутую кривую обучения. Однако Microsoft разработала Vista таким образом, что IPv6 может сосуществовать с IPv4 бесконечно.