Архив метки: ipv4 протокол

IPv6 в новом TCP/IP стеке Windows

Вступление

В этой, по большей части, чисто технической, статье я расскажу о реализации IPv6 в новом TCP/IP стеке Microsoft. Новый стек включен в ОС Windows начиная с Vista и Server 2003. Короткое введение рассказывает о том, что такое IPv6, а следующие три раздела — об отличиях нового стека от старого (особенно подробно — об отличиях, связанных с IPv6). Надеюсь, вас не напугает слишком строгое изложение.

1. Введение: коротко о IPv6

IPv4

Протокол IP Version 4 (IPv4) не претерпевал сколь-либо серьезных изменений со времен опубликованного в 1981 году RFC 791. Благодаря удачному исходному дизайну, IPv4 выдержал сопутствовавшее росту обслуживаемому им сетей испытание на масштабируемость. IPv4 устойчив, прост в имплементации и взаимодействии.

Однако, к началу 90-х годов основанный на TCP/IP интернет начал расти колоссальными темпами. Уменьшение количества свободных IP-адресов происходило угрожающе быстро даже с учетом введения бесклассовой адресации. Стало очевидно, что требуется разработать способ избежать их дефицита в будущем. В 1992 году IETF опубликовала в виде RFC (RFC 1550) призыв к разработке и публикации прототипов протокола, названного «IP The Next Generation» (IPng).

NAT

Изобретение в середине 90-х Network Address Translation (NAT) помогло значительно замедлить уменьшение количества доступных адресов. NAT позволяет транслировать запросы из внутренней сети во внешнюю (например, интернет), используя единственный внешний IP-адрес (NAT подменяет адреса непосредственно в заголовках датаграмм). Однако, NAT имеет ряд собственных недостатков. Трансляция адресов нарушает оригинальную модель соединения хостов в интернете, тем самым усложняя их взаимодействие и негативно влияет на производительность. Читать