тестирование приложений ipv6 - PullRequest
2 голосов
/ 09 июня 2009

У меня есть сетевое приложение, которое мне нужно преобразовать, чтобы оно работало в сети ipv6. Не могли бы вы дать мне знать, что мне нужно сделать (заменить API сокетов)?

Еще одна вещь, как я могу проверить свое приложение?

Спасибо.

Ответы [ 4 ]

3 голосов
/ 09 июня 2009

Системные вызовы ядра сокета не зависят от протокола. Вам нужно будет использовать AF_INET6 вместо стандартного семейства адресов AF_INET, а также PF_INET6, sockaddr_in6 и другие, когда это необходимо.

Я бы предложил прочитать справочную страницу "ipv6" или "Расширения интерфейса сокета для ipv6" RFC: http://www.ietf.org/rfc/rfc3493.txt

Аналогичный и, возможно, соответствующий вопрос: ipv6 обратно совместим с ipv4?

1 голос
/ 09 июня 2009

3-е издание"Unix Network Programming" содержит множество примеров и целую главу о совместимости IPv4 / IPv6.

0 голосов
/ 25 ноября 2009

Взгляните на http://gsyc.escet.urjc.es/~eva/IPv6-web/ipv6.html - это довольно всеобъемлющий ресурс, в котором есть несколько полезных ссылок на RFC.

В целях тестирования, если ваше приложение будет работать в двух стеках, рассмотрите следующий сценарий сбоя: трафик IPv6 может оказаться в черном цвете по разным причинам, например, в качестве пользователя, который использует 6to4 anycast-туннелирование, но его трафик к / из 192.99.88.1 (anycast 6to4 relay address) сбрасывается. Попробуйте проверить этот случай и убедитесь, что приложение работает корректно, не нарушая пользовательский интерфейс, это сэкономит несколько звонков в службу поддержки позже.

(NB: я говорю конкретно о чёрном хулинге, потому что в случае «нормальных» ошибок, таких как проблема маршрутизации, ошибка обычно будет возвращаться довольно быстро. Поэтому вы можете рассмотреть возможность размещения между хостами какого-либо маршрутизатора, который вы могли бы настроить молча отбросить пакеты)

0 голосов
/ 09 июня 2009

Для тестирования вы можете создать группу виртуальных машин с Microsoft Virtual PC (или аналогичной) и протестировать приложение между ними - вы можете легко разместить их в частной сети, где они могут видеть только друг друга.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...