ѕоддержим в трудное врем€ —пециальное предложение на техническую поддержку вашей »“ - инфраструктуры силами наших экспертов ѕодобрать тариф
ѕоставка оборудовани€ √аранти€ и помощь с настройкой. —кидка дл€ наших читателей по промокоду WIKIMERIONET  упить
»нтерфейс статистики Merion Mertics показывает ключевые диаграммы и графики по звонкам, а также историю звонков в формате, который легко поймет менеджер ѕопробовать бесплатно
¬недрение
офисной телефонии
Ўаг на пути к созданию доступных унифицированных коммуникаций в вашей компании ¬недрить
»нтеграци€ с CRM ѕомогаем навести пор€док с данными
и хранить их в единой экосистеме
ѕодключить
»“ Ѕезопастность ”мна€ информационна€ безопасность дл€ вашего бизнеса «аказать
ћерион Ќетворкс

11 минут чтени€

¬ этой статье мы рассмотрим IPv6 (Internet Protocol version 6), причины, по которым он нам нужен, а также следующий аспект: различи€ с IPv4. ѕока существует »нтернет, используетс€ протокол IPv4 дл€ адресации и маршрутизации. ќднако проблема с IPv4 заключаетс€ в том, что у нас закончились адреса.

“ак что же случилось с IPv4? „то же пошло не так? ” нас есть 32 бита, которые дают нам 4 294 467 295 IP-адресов.  огда по€вилс€ »нтернет, мы получили сети класса ј, ¬ или —.  ласс — дает нам блок из 256 IP-адресов, класс B - это 65.535 IP-адресов, а класс A даже 16 777 216 IP-адресов.  рупные компании, такие как Apple, Microsoft, IBM и др. имеют одну или несколько сетей класса ј. Ќо действительно ли им нужно 16 миллионов IP-адресов? Ѕольшинство из этих IP-адресов не были использованы.

ѕоэтому мы начали использовать VLSM, чтобы использовать любую маску подсети, котора€ нам нравитс€, и создавать более мелкие подсети, а не только сети класса A, B или C. ” нас также имеетс€ NAT и PAT, следовательно, мы имеем много частных IP-адресов за одним публичным IP-адресом.

“ем не менее интернет вырос так, как никто не ожидал 20 лет назад. Ќесмотр€ на все наши крутые трюки, такие как VLSM и NAT/PAT, нам нужно было больше IP-адресов, и поэтому родилс€ IPv6.

ј что случилось с IPv5? ’ороший вопрос ... IP-верси€ 5 была использована дл€ экспериментального проекта под названием "ѕротокол интернет-потока". ќн определен в RFC, если вас интересуют исторические причины: http://www.faqs.org/rfcs/rfc1819.html

IPv6 имеет 128-битные адреса по сравнению с нашими 32-битными IPv4-адресами. »мейте в виду, что каждый дополнительный бит удваивает количество IP-адресов. “аким образом мы переходим от 4 миллиардов к 8 миллиардам, 16,32,64 и т. д. ѕродолжайте удвоение, пока не достигнете 128-битного уровн€. ѕросто вы увидите, сколько IPv6-адресов это даст нам:

  • 340,282,366,920,938,463,463,374,607,431,768,211,456;

ћожем ли мы вообще произнести это? ƒавайте попробуем вот это:

  • 340 - ундециллионов;
  • 282 - дециллионов;
  • 366 - нониллионов;
  • 920 - октиллионов;
  • 938 - септиллионов;
  • 463 - секстиллионов;
  • 463 - квинтильонов;
  • 374 - квадрильонов;
  • 607 - триллионов;
  • 431 - биллионов;
  • 768 - миллионов;
  • 211 - тыс€ч;
  • 456.

Ёто умопомрачительно... это дает нам достаточное количество IP-адресов дл€ сетей на «емле, Ћуне, ћарсе и остальной ¬селенной. IPv6-адреса записываютс€ в шестнадцатеричном формате.

IPv4 и IPv6 несовместимы друг с другом, поэтому многие протоколы были обновлены или заменены дл€ работы с IPv6, вот некоторые примеры:

  • OSPF был обновлен с версии 2 (IPv4) до версии 3 (IPv6);
  • ICMP был обновлен до версии ICMP 6;
  • ARP был заменен на NDP (Neighborhood Discovery Protocol).

«аголовок пакета IPv6 содержит адреса источника и назначени€, но по сравнению с IPv4 он стал намного проще:

«аголовок пакета IPv6 и IPv4

¬место того чтобы уже добавл€ть все пол€ в заголовок, заголовок IPv6 использует "следующий заголовок", который ссылаетс€ на необ€зательные заголовки. ѕоскольку заголовок намного проще, маршрутизаторам придетс€ выполн€ть меньше работы.

ј как насчет маршрутизации? ≈сть ли разница между IPv4 и IPv6? ƒавайте рассмотрим варианты маршрутизации:

¬ы все еще можете использовать статическую маршрутизацию, как и в IPv4, ничего нового здесь нет. RIP был обновлен и теперь называетс€ RIPng или RIP Next Generation.

OSPF дл€ IPv4 на самом деле €вл€етс€ версией 2, а дл€ IPv6 у нас есть верси€ 3. Ёто отдельный протокол, он работает только на IPv6. ≈сть только незначительные изменени€, внесенные в OSPFv3.

BGP (Border Gateway Protocol) - это протокол маршрутизации, который объедин€ет »нтернет вместе.MP-BGP расшифровываетс€ как Multi-Protocol BGP, и он может маршрутизировать IPv6. EIGRP также поддерживает IPv6.

ѕросто имейте в виду, что OSPF и EIGRP поддерживают IPv6, но это отдельные протоколы. ≈сли у вас есть сеть с IPv4 и IPv6, вы будете запускать протокол маршрутизации дл€ IPv4 и еще один дл€ IPv6. «апуск IPv4 и IPv6 одновременно называетс€ двойным стеком.

ѕоскольку эти два протокола несовместимы, в будущем будет происходить переход с IPv4 на IPv6. Ёто означает, что вы будете запускать оба протокола в своей сети и, возможно, однажды вы сможете отключить IPv4, так как весь интернет будет настроен на IPv6.

ƒавайте взгл€нем на формат IPv6-адреса: 2041:0000:140F:0000:0000:0000:875B:131B

¬о-первых, он шестнадцатеричный и гораздо длиннее, чем IPv4-адрес. —уществует восемь частей, состо€щих из 4 шестнадцатеричных цифр кажда€, поэтому 128-битный адрес может быть представлен 32-битными шестнадцатеричными символами. ≈сли вы забыли, как работает шестнадцатеричный код, взгл€ните на таблицу ниже:

как работает шестнадцатеричный код

¬ шестнадцатеричной системе счислени€ мы считаем от 0 до F точно так же, как мы считали бы от 0 до 15 в дес€тичной системе счислени€:

  • A = 10;
  • B = 11;
  • C = 12;
  • D = 13;
  • E = 14;
  • F = 15.

»спользование шестнадцатеричного кода помогает сделать наши адреса короче, но ввод адреса IPv6 - это все еще больша€ работа. ѕредставьте себе, что вы звоните другу и спрашиваете его, может ли он пинговать IPv6-адрес 2041:0000:140F:0000:0000:0000:875B:131B, чтобы узнать, может ли он достучатьс€ до своего шлюза по умолчанию.

„тобы облегчить нам работу с такими адресами, можно сделать IPv6-адреса короче. ¬от пример:

ќригинальный: 2041: 0000:140F:0000:0000:0000:875B:131B

—окращенный: 2041: 0000:140F:: 875B:131B

≈сли есть строка нулей, вы можете удалить их, заменив их двойным двоеточием (::). ¬ приведенном выше IPv6-адресе удалены нули, сделав адрес немного короче. ¬ы можете сделать это только один раз.

ћы можем сделать этот IPv6 адрес еще короче использу€ другой трюк:

  • —окращенный: 2041: 0000:140F:: 875B:131B;
  • ≈ще короче: 2041:0:140F:: 875B:131B

≈сли у вас есть блок с 4 нул€ми, вы можете удалить их и оставить там только один ноль.

ћы также можем удалить все впередисто€щие нули:

  • ќригинальный: 2001:0001:0002:0003:0004:0005:0006:0007;
  • —окращенный: 2001:1:2:3:4:5:6:7

ѕодытожим небольшие правила:

  • —троку нулей можно удалить, оставив только двоеточие (::). ¬ы можете сделать только это однажды.;
  • 4 нул€ можно удалить, оставив только один ноль. ¬передиидущие нули могут быть удалены в пределах одного блока.;
  • ¬ы не можете удалить все нули, иначе ваше устройство, работающее с IPv6 не поймет, где заполнить нули, чтобы снова сделать его 128-битным.;

¬ычисление префикса IPV6 мы пропустим, так как ресурсов, рассказывающих об этом в сети »нтернет, специальных книгах полно. Ќет смысла повтор€тьс€.

ѕотребуетс€ некоторое врем€, чтобы привыкнуть к IPv6-адресации и поиску префиксов, но чем больше вы этим занимаетесь, тем дальше становитьс€ проще. ¬ оставшейс€ части этой статьи мы еще немного поговорим о различных типах адресации IPv6. IPv4-адреса организованы с помощью "системы классов", где класс A, B и C предназначены дл€ одноадресных IP-адресов, а класс D-дл€ многоадресной передачи. Ѕольшинство IP-адресов в этих классах €вл€ютс€ публичными IP-адресами, а некоторые-частными IP-адресами, предназначенными дл€ наших внутренних сетей. Ќет такой вещи, как классы дл€ IPv6, но IANA действительно зарезервировал определенные диапазоны IPv6 дл€ конкретных целей. ” нас также есть частные и публичные IPv6-адреса. ѕервоначально иде€ IPv4 заключалась в том, что каждый хост, подключенный к »нтернету, будет иметь общедоступный IP-адрес.  ажда€ компани€ получит сеть класса ј, ¬ или —, и сетевые инженеры в компании будут дополнительно подсоедин€ть ее так, чтобы каждый хост и сетевое устройство имели общедоступный IP-адрес.

ѕроблема, однако, заключаетс€ в том, что адресное пространство IPv4 было слишком маленьким, и выдавать полные сети A, B или C было не очень разумно. ƒаже если вам требуетс€ только небольшое количество IP-адресов, вы все равно получите сеть класса C, котора€ дает вам 254 пригодных дл€ использовани€ IP-адреса.  омпани€, которой требуетс€ 2.000 IP-адресов, получит класс B, который дает вам более 65.000 IP-адресов.

ѕоскольку у нас заканчивались IP-адреса, мы начали использовать такие вещи, как VLSM (избавл€€сь от идеи класса A, B, C) и настраивали частные IP-адреса в наших локальных сет€х, а вместо этого использовали NAT/PAT. ѕротокол IPv6 предлагает два варианта дл€ одноадресной рассылки:

  • Global Unicast;
  • Unique Local.

–аньше существовал третий диапазон адресов, называемый "site local", который начиналс€ с FEC0:: / 10. Ётот диапазон изначально предназначалс€ дл€ использовани€ во внутренних сет€х, но был удален из стандарта IPv6.

Global Unicast передачи IPv6 похожи на публичные IPv4-адреса.  ажда€ компани€, котора€ хочет подключитьс€ к интернету с помощью IPv6, получит блок IPv6-адресов, которые они могут дополнительно разделить на более мелкие префиксы, чтобы все их устройства имели уникальный IPv6-адрес. «арезервированный блок называетс€ префиксом глобальной маршрутизации.

ѕоскольку адресное пространство IPv6 настолько велико, каждый может получить префикс глобальной маршрутизации. ƒавайте посмотрим, как назначаютс€ префиксы IPv6-адресов. ƒопустим, компани€ получает префикс 2001:828:105:45::/64.  ак они его получили?

как назначаютс€ префиксы IPv6-адресов

ћы пройдемс€ по этой картине сверху вниз:

  • IANA отвечает за распределение всех префиксов IPv6. ќни будут назначать реестрам различные блоки. ARIN - дл€ —еверной јмерики, RIPE -дл€ ≈вропы, Ѕлижнего ¬остока и ÷ентральной јзии. ¬сего таких реестров насчитываетс€ 5. IANA присваивает 2001: 800:: /23 RIPE и 2001: 0400::/23 ARIN (и многие другие префиксы).;
  • ISP, который попадает под реестр RIPE, запрашивает блок пространства IPv6. ќни получают от них 2001: 0828:: / 32, которые в дальнейшем могут использовать дл€ клиентов.;
  • ISP дополнительно подсоединит свое адресное пространство 2001:0828::/32 дл€ своих пользователей. ¬ этом примере клиент получает префикс 2001:828:105::/48.;

IANA зарезервировала определенные диапазоны адресов IPv6 дл€ различных целей, точно так же, как это было сделано дл€ IPv4. ѕервоначально они зарезервировали IPv6-адреса, которые с шестнадцатеричными 2 или 3 €вл€ютс€ global unicast адресами. Ёто можно записать как 2000:: / 3. ¬ насто€щее врем€ они используют все дл€ global unicast рассылки, котора€ не зарезервирована дл€ других целей.

Ќекоторые из зарезервированных префиксов €вл€ютс€:

  • FD: Unique Local;
  • FF: Multicast;
  • FE80: Link-Local.

ќбсудим префиксы local и link-local

¬ моем примере клиент получил 2001: 828:105:: / 48 от провайдера, но прежде чем € смогу что-либо сделать с этим префиксом, мне придетс€ разбить на подсети его дл€ различных VLAN и point-to-point соединений, которые у мен€ могут быть. ѕодсети дл€ IPv6 - это примерно то же самое, что и дл€ IPv4, но математика в большинстве случаев проще. ѕоскольку адресное пространство настолько велико, почти все используют префикс /64 дл€ подсетей. Ќет смысла использовать меньшие подсети.

ѕри использовании IPv4 у нас была часть "сеть" и "хост", а класс A, B или C определ€ет, сколько битов мы используем дл€ сетевой части:

сеть класса A, B или C

 огда мы используем подсети в IPv4 мы берем дополнительные биты от части хоста дл€ создани€ большего количества подсетей:

берем дополнительные биты от части хоста

», конечно, в результате у нас будет меньше хостов на подсеть. ѕодсети дл€ IPv6 используют аналогичную структуру, котора€ выгл€дит следующим образом:

ѕрефикс global routing

ѕрефикс global routing был назначен вам провайдером и в моем примере клиент получил его 2001:828:105::/48. ѕоследние 64 бита называютс€ идентификатором интерфейса, и это эквивалентно части хоста в IPv4.

Ёто оставл€ет нас с 16 битами в середине, которые € могу использовать дл€ создани€ подсетей. ≈сли € хочу, € могу вз€ть еще несколько битов из идентификатора интерфейса, чтобы создать еще больше подсетей, но в этом нет необходимости.

»спользу€ 16 бит, мы можем создать 65.536 подсетей ...более чем достаточно дл€ большинства из нас. » с 64 битами дл€ идентификатора интерфейса на подсеть, мы можем иметь восемнадцать квинтиллионов, четыреста сорок шесть квадриллионов, семьсот сорок четыре триллиона, семьдес€т четыре миллиарда, семьсот дев€ть миллионов, п€тьсот п€тьдес€т одну тыс€чу, шестьсот с чем-то хостов на подсеть. Ётого должно быть более чем достаточно!

»спользование 64-битного идентификатора интерфейса также очень удобно, потому что он сокращает ваш IPv6-адрес ровно наполовину!

ƒопустим, наш клиент с префиксом 2001: 828: 105:: / 48 хочет создать несколько подсетей дл€ своей внутренней сети.  акие адреса мы можем использовать?

 акие адреса мы можем использовать?

16 бит дает нам 4 шестнадцатеричных символа. “аким образом, все возможные комбинации, которые мы можем сделать с этими 4 символами, €вл€ютс€ нашими возможными подсет€ми. ¬се, что находитс€ между 0000 и FFFF, €вл€етс€ допустимыми подсет€ми:

  • 2001:828:105:0000::/64;
  • 2001:828:105:0001::/64;
  • 2001:828:105:0002::/64;
  • 2001:828:105:0003::/64;
  • 2001:828:105:0004::/64;
  • 2001:828:105:0005::/64;
  • 2001:828:105:0006::/64;
  • 2001:828:105:0007::/64;
  • 2001:828:105:0008::/64;
  • 2001:828:105:0009::/64;
  • 2001:828:105:000A::/64;
  • 2001:828:105:000B::/64;
  • 2001:828:105:000C::/64;
  • 2001:828:105:000D::/64;
  • 2001:828:105:000E::/64;
  • 2001:828:105:000F::/64;
  • 2001:828:105:0010::/64;
  • 2001:828:105:0011::/64;
  • 2001:828:105:0012::/64;
  • 2001:828:105:0013::/64;
  • 2001:828:105:0014::/64;
  • » так далее.

¬сего существует 65 535 возможных подсетей, поэтому, к сожалению, € не могу добавить их все в статью...теперь мы можем назначить эти префиксы различным соединени€м типа point-to-point, VLAN и т. д.