Создание приложения asp.net, совместимого с IPv6 - PullRequest
7 голосов
/ 09 августа 2010

У нас есть серверы Windows 2003 под управлением SQL Server 2005 и .NET 3.5 [отдельно].
У нас есть базовое приложение ASP.NET, работающее на IIS 6.
Что, если что, мне нужно сделать на стороне приложения [IIS, Framework, ASP.NET], чтобы сделать его совместимым с IPv6?

EDIT: Мы используем System.DirectoryServices, System.DirectoryServices.DirectoryEntry и DirectorySearcher () для аутентификации пользователей в AD. Должны ли эти звонки измениться?

Ответы [ 2 ]

5 голосов
/ 10 августа 2010

Первое, что нужно сделать, это найти в вашем коде ссылки на System.Net.IPAddress и посмотреть, как вы передаете информацию в этих областях:

  • Выполняете ли вы какую-либо «ручную» проверку, которая предполагает, что IP-адреса будут в формате IPv4?
  • Есть ли у вас какие-либо компоненты пользовательского интерфейса в самом приложении или какие-либо инструменты / страницы конфигурации, которые у вас есть для него, жестко запрограммированные в формате xxx.xxx.xxx.xxx?
  • Сколько места вы выделяете для хранения IP-адресов в таких вещах, как таблицы журналов в базах данных? 15 символов достаточно для адреса IPv4, но адрес IPv6 может быть значительно больше.
  • Отображаете ли вы IP-адреса где-нибудь в вашем интерфейсе? Если вы это сделаете, выделите ли вы достаточно экрана для отображения полного IPv6-адреса?

Есть другие вопросы, на которые нужно ответить, но они в большей степени связаны с инфраструктурой, и для них было бы лучше использовать serverfault.

1 голос
/ 10 августа 2010

Это, вероятно, кандидат на ServerFault.com, поскольку все ваши службы приложений работают над базовым транспортным протоколом.

В идеале вам не нужно ничего менять в приложении.В идеале я говорю, потому что мои собственные приложения (то есть код, который я специально написал) в некоторых местах используют IP-адрес для идентификации внутренних соединений.Это должно измениться, но это зависит от моего приложения.

Пока вы можете пинговать сервер (ы) по IP-адресу и по имени с ваших клиентских компьютеров, все остальное должно работатьимена разрешаются, а пакеты маршрутизируются.Стек IP будет декодировать полезную нагрузку и передавать ее любой прослушивающей службе.

Единственное предостережение в том, что адреса IPv6 имеют много двоеточий, поэтому проверьте, могут ли браузеры определять адреса, такие как эта:

_ HTTP://[ 2001: 0ff8: 0000: 0000: 0000: 0000: 1986: 69af]: 80 /

Браузер должен заметить, что IP-адрес находится в скобках [] и работает какобычно, но старые браузеры могут не работать.

Любые проблемы, которые вы получите, могут привести к интересному сообщению в блоге.

Удачи

Luke

(_ HTTP toпрекратить переполнение стека и перепутать)

ОБНОВЛЕНИЕ:

Добавление ссылки на список проблем IIS6 IPv6:

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/4c7c6bce-213a-4125-bc36-2202e3b4c8c8.mspx?mfr=true

...