Dual stack ipv4 ipv6 что это
Перейти к содержимому

Dual stack ipv4 ipv6 что это

  • автор:

сокеты Dual-Stack для приложений Winsock для IPv6

Чтобы обеспечить поддержку IPv4 и IPv6 в Windows XP с пакетом обновления 1 (SP1) и Windows Server 2003, приложению необходимо создать два сокета: один сокет для использования с IPv4 и один сокет для использования с IPv6. Эти два сокета должны обрабатываться отдельно приложением.

Windows Vista и более поздних версий предоставляют возможность создания одного сокета IPv6, который может обрабатывать трафик IPv6 и IPv4. Например, создается сокет прослушивания TCP для IPv6, который переводится в режим двойного стека и привязывается к порту 5001. Этот сокет с двумя стеками может принимать подключения от клиентов IPv6 TCP, подключающихся к порту 5001, и от клиентов TCP IPv4, подключающихся к порту 5001. Эта функция позволяет значительно упростить проектирование приложений и сократить затраты на ресурсы, необходимые для размещения операций в двух отдельных сокетах.

Создание сокета Dual-Stack

По умолчанию сокет IPv6, созданный в Windows Vista и более поздних версий, работает только по протоколу IPv6. Чтобы сделать сокет IPv6 в сокет с двойным стеком, необходимо вызвать функцию setockopt с параметром сокета IPV6_V6ONLY , чтобы задать это значение равным нулю, прежде чем сокет будет привязан к IP-адресу. Если параметр сокета IPV6_V6ONLY равен нулю, сокет, созданный для семейства адресов AF_INET6 , можно использовать для отправки и получения пакетов на IPv6-адрес или сопоставленный адрес IPv4.

IP-адреса с сокетом Dual-Stack

Для сокетов с двойным стеком всегда требуются адреса IPv6. Для взаимодействия с IPv4-адресом требуется использовать формат IPv4-адресов IPv6. Все IPv4-адреса должны быть представлены в формате IPv4-адресов IPv6, что позволяет приложению только IPv6 взаимодействовать с узлом IPv4. Формат IPv4-адресов IPv6 позволяет представлять IPv4-адрес узла IPv4 в виде IPv6-адреса. IPv4-адрес кодируется в 32 бита IPv6-адреса низкого порядка, а 96-разрядный адрес высокого порядка содержит фиксированный префикс 0:0:0:0:0:0:0:FFFF. Формат IPv4-адреса IPv6 указан в RFC 4291. Дополнительные сведения см . в разделе www.ietf.org/rfc/rfc4291.txt. Макрос IN6ADDR_SETV4MAPPED в Mstcpip.h можно использовать для преобразования IPv4-адреса в требуемый формат IPv4-адресов IPv6.

Если базовый протокол фактически является IPv4, то IPv4-адрес сопоставляется с форматом IPv6-адресов. Это поле семейства в структуре SOCKADDR указывает AF_INET6, но сопоставленный IPv4-адрес закодирован в структуре IPv6-адресов. Для сокета с двумя стеками в режиме прослушивания это означает, что любые принятые подключения IPv4 будут возвращать IPv4-адрес IPv6. Для сокета с двумя стеками, который подключается к назначению IPv4, структура SOCKADDR, передаваемая для подключения, должна быть IPv4-адресом IPv6. Приложения должны заботиться о том, чтобы правильно обрабатывать эти IPv4-адреса IPv6 и использовать их только с сокетами с двойным стеком. Если IP-адрес передается в обычный сокет IPv4, он должен быть обычным IPv4-адресом, а не IPv4-адресом IPv6.

Потенциальные проблемы с использованием сокета Dual-Stack

Потенциальной ошибкой для приложений является получение IPv4-сопоставленного IPv6-адреса в сокете с двойным стеком, а затем попытка использовать возвращенный IP-адрес в другом сокете только IPv6. Например, функции getockname или getpeername могут возвращать сопоставленный IPv4-адрес IPv6 при использовании в сокете с двойным стеком. Если возвращенный IPv4-адрес IPv6 затем будет использоваться в другом сокете, который не был установлен в двойной стек (только сокет IPv6, который является поведением по умолчанию при создании сокета), любое использование этого сокета только IPv6 с адресом IPv4-сопоставленного IPv6-адреса завершится ошибкой. Формат IPv4-адресов IPv6 можно использовать только в сокете с двойным стеком.

В сокете datagram с двойным стеком, если приложению требуется функция LPFN_WSARECVMSG (WSARecvMsg) для возврата сведений о пакете в структуре WSAMSG для датаграмм, полученных по протоколу IPv4 , IP_PKTINFO параметр сокета должен иметь значение true в сокете. Если в сокете задано значение true только для параметра IPV6_PKTINFO , сведения о пакетах будут предоставляться для датаграмм, полученных по протоколу IPv6, но могут не предоставляться для датаграмм, полученных по протоколу IPv4.

Если приложение пытается задать параметр сокета IP_PKTINFO в сокете datagram с двойным стеком, а протокол IPv4 отключен в системе, функция setsockopt завершится ошибкой и WSAGetLastError вернет ошибку WSAEINVAL. Эта же ошибка также возвращается функцией setsockopt в результате других ошибок. Если приложение пытается задать параметр сокета уровня IPPROTO_IP в сокете с двойным стеком и завершается сбоем при использовании WSAEINVAL, приложение должно определить, отключен ли протокол IPv4 на локальном компьютере. Один из способов, который можно использовать для определения того, включен или отключен протокол IPv4, заключается в вызове функции сокета с параметром af , для AF_INET для создания сокета IPv4. Если функция сокета завершается сбоем и WSAGetLastError возвращает ошибку WSAEAFNOSUPPORT, это означает, что протокол IPv4 не включен. В этом случае сбой функции setsockopt при попытке задать параметр сокета IP_PKTINFO может быть проигнорирован приложением. В противном случае сбой при попытке задать параметр сокета IP_PKTINFO следует рассматривать как непредвиденную ошибку.

Для сокета с двумя стеками при отправке датаграмм с помощью функции WSASendMsg и приложению требуется указать конкретный локальный IP-адрес источника, метод обработки зависит от IP-адреса назначения. При отправке на адрес назначения IPv4 или IPv4-адрес назначения IPv6 один из объектов управляющих данных, передаваемых в структуре WSAMSG , на которую указывает параметр lpMsg , должен содержать структуру in_pktinfo , содержащую локальный исходный адрес IPv4 для отправки. При отправке на адрес назначения IPv6, который не является IPv4-адресом IPv6, один из объектов контрольных данных, передаваемых в структуре WSAMSG , на который указывает параметр lpMsg , должен содержать структуру in6_pktinfo , содержащую локальный исходный адрес IPv6, используемый для отправки.

IPv4 и IPv6: основные различия, влияние на хостинг и доступность сайта

IPv4 (Internet Protocol version 4) и IPv6 (Internet Protocol version 6) являются двумя разными поколениями протоколов интернета, используемыми для идентификации и маршрутизации устройств в сети.

Основные различия между IPv4 и IPv6

Адресация: IPv4 использует 32-битные адреса и имеет примерно 4,3 миллиарда возможных адресов. Из-за ограниченного числа доступных адресов возникли проблемы исчерпания адресного пространства. IPv6 использует 128-битные адреса и имеет практически неограниченное количество возможных адресов. Это решает проблему исчерпания адресов IPv4.

Формат адресов: IPv4 адреса представляются в виде четырех чисел, разделенных точками (например, 192.168.0.1). IPv6 адреса представляются в виде восьми групп по четыре шестнадцатеричных символа, разделенных двоеточиями (например, 2001:0db8:85a3:0000:0000:8a2e:0370:7334).

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

Настройка и автоматизация: IPv6 поддерживает более эффективные методы автоматической конфигурации устройств, уменьшая необходимость в ручной настройке. Для настройки IP-адреса IPv4 требуется либо статическая настройка вручную, либо использование DHCP (протокол динамической настройки IP-адресов).

Маршрутизация: IPv6 предоставляет более эффективные механизмы маршрутизации и балансировки нагрузки. IPv4 использует протоколы маршрутизации, такие как RIP, OSPF, BGP, для определения путей передачи данных.

Поддержка NAT (Network Address Translation). IPv4: NAT широко используется для обеспечения доступа к интернету нескольких устройств через один публичный IP-адрес. IPv6: NAT менее необходим, так как у IPv6 большое количество доступных адресов, что упрощает прямое подключение устройств к сети.

IPv4 и IPv6: влияние на хостинг и доступность сайта

Многие хостинг-провайдеры поддерживают оба протокола, но они могут предоставлять разные типы услуг для IPv4 и IPv6. Некоторые серверы могут иметь как IPv4, так и IPv6 адреса, что позволяет клиентам выбирать, через какой протокол подключаться.

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

В случае использования обоих протоколов (IPv4 и IPv6) у сайта будет более широкий охват аудитории и повышенная доступность.

Исчерпание адресов IPv4 стало давно актуальной проблемой, так как количество доступных адресов ограничено. Это может означать, что хостинг-провайдеры могут иметь ограниченное количество IPv4-адресов для предоставления клиентам. IPv6 обладает огромным адресным пространством, что решает проблему исчерпания адресов. Хостинг-провайдеры, поддерживающие IPv6, могут предоставлять более широкий набор адресов для клиентов.

Многие системы и сети поддерживают только IPv4. Для обеспечения совместимости с такими системами, сайты должны оставаться доступными через IPv4. Чтобы обеспечить доступность для всех, рекомендуется поддерживать двойной стек (Dual-Stack), т.е. работать как по IPv4, так и по IPv6.

Из-за недостатка доступных адресов IPv4 могут возникать проблемы с маршрутизацией, балансировкой нагрузки и скоростью в некоторых случаях. Благодаря более эффективным механизмам маршрутизации и балансировки нагрузки, IPv6 может обеспечивать более стабильную и быструю работу.

В целом, переход к IPv6 становится все более важным по мере исчерпания адресов IPv4 и расширения интернета. Современные системы и сети должны стремиться поддерживать оба протокола для обеспечения наилучшей доступности и функциональности.

В чем сложность перехода на IPv6?

Одной из главных сложностей является поддержка обоих протоколов, IPv4 и IPv6, в сетях и на серверах. Необходимо настроить так называемый «двойной стек» (Dual-Stack), чтобы обеспечить возможность связи как по IPv4, так и по IPv6. Это может требовать дополнительных ресурсов и усилий для настройки и поддержки.

Администраторы сетей должны быть обучены работе с IPv6, так как протокол имеет свои специфики и особенности. Это может потребовать времени и ресурсов для овладения новыми навыками. Некоторое устаревшее оборудование и программное обеспечение могут не поддерживать IPv6. Это может потребовать замены или обновления систем, чтобы обеспечить совместимость.

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

Многие организации и сервисы не могут просто переключиться на IPv6 в одночасье из-за необходимости поддерживать существующую базу клиентов и инфраструктуру. Переход может потребовать планирования и поэтапной реализации.

Также переход на IPv6 может потребовать финансовых затрат на обучение, обновление оборудования и другие технические изменения.

В целом, переход на IPv6 требует планирования, тщательной подготовки и сотрудничества различных сторон, включая поставщиков услуг, администраторов и пользователей.

Google: использование Dual-Stack IPv4/IPv6 не влияет на ранжирование

Сотрудник Google Джон Мюллер ответил на вопрос касательно использования технологии двойного стека Dual-Stack IPv4/IPv6. В частности, даёт ли это какие-либо преимущества в результатах поиска. Например, как это происходит в случае сайтов на HTTPS, которые получают небольшой импульс в ранжировании. По словам Мюллера, никакого SEO -эффекта это не обеспечивает. И традиционно посоветовал стремиться к тому, чтобы сайт хорошо работал для пользователей.

No. There’s no SEO effect for that. Make your site work well for users. — �� John �� (@JohnMu) 21 сентября 2020 г.

Отметим, что технология Dual-Stack IPv4/IPv6 позволяет добиться сосуществования IPv4 и IPv6. Обычно основной причиной одновременного использования IPv4 и IPv6 является совместимость. Фактически, IPv4 и IPv6 несовместимы друг с другом, а это означает, что устройства не могут взаимодействовать напрямую. Технология двойного стека – одно из решений, позволяющих решить эту проблему. Напомним, что ранее в Twitter разгорелся спор между Джоном Мюллером и сотрудником Moz Сайрусом Шепардом на тему недавнего эксперимента Reboot Online. Согласно его результатам, общий хостинг может негативно влиять на ранжирование в Google. При этом Мюллер утверждает, что выводы исследования ошибочны, а Шепард уверен в обратном.

IPv4/IPv6 Dual Stack на коммутаторах SNR

В прошлой статье мы поговорили про теоретическую часть протокола IPv6, а также познакомились с его базовыми настройками на коммутаторах доступа SNR. Теперь мы затронем более практические для операторов вещи — DHCPv6 и Dual Stack. Не секрет, что никто не предоставляет абонентам только IPv6-адрес, это всегда идет в связке с IPv4-адресом. Об этом и поговорим.

Описание стенда Dual Stack

На тестовом стенде мы разберем настройки коммутаторов SNR для авторизации IPv6-абонентов с использованием опций 37 (remote-id), 38 (subscriber-id), безопасность и конфигурацию DHCP-сервера для выдачи IPv6-адресов.

Еще раз отметим, что все управляемые коммутаторы доступа SNR, от FastEthernet-моделей, таких как SNR-S2962-24T, до гигабитных коммутаторов с 10G-аплинками (SNR-S2989G-24TX), поддерживают одинаковый функционал и имеют одинаковые настройки в части IPv6.

Наш стенд будет представлять из себя:

  • Домашний Wi-Fi-маршрутизатор (CPE).
  • Коммутатора доступа (SNR-S2985G-24TC).
  • Коммутатор агрегации третьего уровня (SNR-S2995G-24FX).
  • DHCPv4/v6-сервер (ISC-DHCP).

IPv4/IPv6 Dual Stack на коммутаторах SNR

Рассмотрим стенд Dual Stack. Коммутатор доступа SNR-S2985G-24TС будет использоваться для подключения абонентов, как через домашний Wi-Fi-маршрутизатор, методом Prefix Delegation, так и напрямую. Для выделения IPv6-префикса и IPv6-адресов будут использоваться опции 37 (remote-id) и 38 (subscriber-id). Для выделения IPv4-адресов будем использовать классическую опцию 82.

Для защиты от нелегитимных DHCP-серверов и подмены IP-адреса, в случае с IPv4 будет использоваться DHCP snooping binding. Коммутаторы SNR имеют несколько механизмов защиты протокола IPv6. Например, Security RA блокирует RA-сообщения от недоверенных портов. ND Security позволяет влиять на автоматическое изучение ND-записей (аналог ARP Security). В нашем примере будет использоваться SAVI (Source Address Validation Improvement), который включает в себя ND Snooping, DHCPv6 Snooping и RA Snooping. Мы будем защищаться от нелегитимных DHCP-серверов и источников RA-сообщений с помощью trust-портов. Выдаваемые IPv6-адреса и префиксы будут привязываться к binding-таблице. Мы также будем задавать максимальное количество адресов на порт.

Коммутатор агрегации SNR-2995G-24FX, в качестве IPv6-роутера, будет рассылать RA-сообщения с M-флагом в своем сегменте сети, чтобы клиенты могли знать, каким образом формировать их IPv6-адрес. Также, на SNR-2995G-24FX будут присутствовать L3-интерфейсы в клиентских VLAN, с которых он будет осуществлять релей в VLAN DHCP-сервера.

Сервер ISC-DHCP будет выделять адреса и префиксы согласно классам.

Настройка и проверка стенда

Далее будут приведены минимально необходимые конфигурации с пояснениями некоторых настроек. Некоторые из них были описаны в прошлой статье.

Настройка коммутатора SNR-S2985G-24TC

ip dhcp snooping enable
ip dhcp snooping vlan 100;200
ip dhcp snooping binding enable
!
ip dhcp snooping information enable
ip dhcp snooping information option subscriber-id format hex
!
savi enable
savi ipv6 dhcp-slaac enable
savi check binding probe mode
!
ipv6 dhcp snooping vlan 100;200
ipv6 dhcp snooping remote-id option #включаем добавление опции 37
ipv6 dhcp snooping subscriber-id option #включаем добавление опции 38
ipv6 dhcp snooping mode relay #задаем отправку опций в RELAY-FORWARD сообщениях
!
vlan 1;100;200
!
Interface Ethernet1/0/1
switchport access vlan 100
ip dhcp snooping binding user-control
ip dhcp snooping binding user-control max-user 10
savi ipv6 check source ip-address mac-address #включаем проверку IP и MAC адресов
savi ipv6 binding num 10
!
Interface Ethernet1/0/2
switchport access vlan 200
ip dhcp snooping binding user-control
ip dhcp snooping binding user-control max-user 10
savi ipv6 check source ip-address mac-address
savi ipv6 binding num 10
!
Interface Ethernet1/0/24
switchport mode trunk
switchport trunk allowed vlan 100;200
ip dhcp snooping trust
ipv6 dhcp snooping trust #назначаем trust-порт для DHCPv6 пакетов
ipv6 nd snooping trust #назначаем trust-порт для ND-RA пакетов

Настройка коммутатора SNR-2995G-24FX

service dhcp
!
ip forward-protocol udp bootps
!
service dhcpv6
!
vlan 1;10;100;200
!
Interface Ethernet1/0/1
switchport mode trunk
switchport trunk allowed vlan 100;200
!
Interface Ethernet1/0/12
switchport mode trunk
switchport trunk allowed vlan 10
!
interface Vlan10
ipv6 address 2001:db8:10:1::1/64
ip address 192.168.10.1 255.255.255.0
!
interface Vlan100
ipv6 address 2001:db8:100:1::1/64
no ipv6 nd suppress-ra #разрешаем рассылать RA-сообщения с этого L3-интерфейса
ipv6 nd min-ra-interval 60 #задаем минимальный интервал рассылки RA
ipv6 nd max-ra-interval 120 #задаем максимальный интервал рассылки RA
ipv6 nd managed-config-flag #задаем M-флаг
ipv6 nd prefix 2001:db8:100:1::/64 2592000 604800 no-autoconfig #отключаем A-флаг в RA-сообщениях
ip address 192.168.100.1 255.255.255.0
ip helper-address 192.168.10.3
ipv6 dhcp relay destination 2001:db8:10:1::3
!
interface Vlan200
ipv6 address 2001:db8:200:1::1/64
no ipv6 nd suppress-ra
ipv6 nd min-ra-interval 60
ipv6 nd max-ra-interval 120
ipv6 nd managed-config-flag
ipv6 nd prefix 2001:db8:200:1::/64 2592000 604800 no-autoconfig
ip address 192.168.200.1 255.255.255.0
ip helper-address 192.168.10.3
ipv6 dhcp relay destination 2001:db8:10:1::3

На нашем стенде мы будем запускать два экземпляра сервера ISC-DHCP — DHCPv4 и DHCPv6. По этой причине и файлов конфигураций будет два. Конфигурационный файл для DHCPv4 уже был описан в статье.

ISC-DHCP-Server. /etc/dhcp/dhcpd4.conf:

default-lease-time 120;
max-lease-time 240;
if exists agent.remote-id «Switch MAC: «, binary-to-ascii(16, 8, «:», option agent.remote-id),
» Switch port: «, binary-to-ascii(10, 8, «.», option agent.circuit-id)
));
>
class «sw1-1» <
match if binary-to-ascii(16, 8, «:», suffix(option agent.remote-id ,6))=»f8:f0:82:78:5:ba»
and
binary-to-ascii(10, 8,»», suffix(option agent.circuit-id, 1))=»1″;
>
class «sw1-2» <
match if binary-to-ascii(16, 8, «:», suffix(option agent.remote-id ,6))=»f8:f0:82:78:5:ba»
and
binary-to-ascii(10, 8,»», suffix(option agent.circuit-id, 1))=»2″;
>
shared-network test <
subnet 192.168.10.0 netmask 255.255.255.0 <>
subnet 192.168.100.0 netmask 255.255.255.0 <
option subnet-mask 255.255.255.0;
option routers 192.168.100.253;
authoritative;
default-lease-time 120;
max-lease-time 240;
pool
>
subnet 192.168.200.0 netmask 255.255.255.0 <
option subnet-mask 255.255.255.0;
option routers 192.168.200.253;
authoritative;
default-lease-time 120;
max-lease-time 240;
pool
>
>

Приступим к конфигурационному файлу для DHCPv6, здесь уже появляются новые элементы, требующие пояснений.

ISC-DHCP-Server. /etc/dhcp/dhcpd6.conf:

default-lease-time 120;
max-lease-time 240;
#Делаем наглядный разделитель с перечислением распознанных опций, например:
#Remote-ID: f8-f0-82-78-05-ba | Subscriber-ID: vlan200+Ethernet1/0/2

log(info, (concat(
«Remote-ID: «, (substring(v6relay(1, option dhcp6.remote-id), 4, 17)),
» | Subscriber-ID: «, v6relay(1, option dhcp6.subscriber-id)
)));
#Создаем класс «sw1-1», который сверяет DHCPv6-RELAY опции 37 и 38.
class «sw1-1» match if(
(substring (v6relay(1, option dhcp6.remote-id), 4, 17) = «f8-f0-82-78-05-ba») and
(v6relay(1, option dhcp6.subscriber-id) = «vlan100+Ethernet1/0/1»)
);
>
class «sw1-2» match if(
(substring (v6relay(1, option dhcp6.remote-id), 4, 17) = «f8-f0-82-78-05-ba») and
(v6relay(1, option dhcp6.subscriber-id) = «vlan200+Ethernet1/0/2»)
);
>
subnet6 2001:db8:100:1::/64 pool6 #Задаем диапазон префиксов, выдаваемых CPE.
prefix6 2001:db8:80:: 2001:db8:90:: /56;
range6 2001:db8:100:1::100 2001:db8:100:1::130;
option dhcp6.name-servers 2001:db8:10:1::88;
option dhcp6.domain-search «domain.example»;
allow members of «sw1-1»;
>
>
subnet6 2001:db8:200:1::/64 pool6 range6 2001:db8:200:1::100 2001:db8:200:1::130;
option dhcp6.name-servers 2001:db8:10:1::88;
option dhcp6.domain-search «domain.example»;
allow members of «sw1-2»;
>
>
subnet6 2001:db8:10:1::/64 <>

Для каждого протокола будем запускать отдельный экземпляр ISC-DHCP с соответствующим файлом конфигурации:

/usr/sbin/dhcpd -4 -d -cf /etc/dhcp/dhcpd4.conf enp8s0.10
/usr/sbin/dhcpd -6 -d -cf /etc/dhcp/dhcpd6.conf enp8s0.10

Проверим, корректно ли отрабатывают технологии DHCP Snooping и SAVI на одном коммутаторе доступа одновременно:

ip dhcp snooping static binding count:0, dynamic binding count:2
MAC IP address Interface Vlan ID Flag
—————————————————————————-
6c-3b-6b-da-5a-d8 192.168.100.100 Ethernet1/0/1 100 DOL
f0-de-f1-19-d5-eb 192.168.100.101 Ethernet1/0/2 200 DOL
—————————————————————————-
SNR-S2985G-24T-UPS#sh savi ipv6 check source binding
Static binding count: 0
Dynamic binding count: 4
Binding count: 2
MAC IP VLAN Port Type State Expires
—————————————————————————————————————
6c-3b-6b-da-5a-d8 fe80::6e3b:6bff:feda:5ad8 100 Ethernet1/0/1 slaac BOUND 14008
6c-3b-6b-da-5a-d8 2001:db8:90::/56 100 Ethernet1/0/1 dhcp BOUND 83
f0-de-f1-19-d5-eb fe80::f2de:f1ff:fe19:d5eb 200 Ethernet1/0/2 slaac BOUND 5
f0-de-f1-19-d5-eb 2001:db8:100:1::130 200 Ethernet1/0/2 dhcp BOUND 94
—————————————————————————————————————

Для порта Ethernet1/0/1 в VLAN 100 видим выданный CPE префикс. Для порта Ethernet1/0/2 в VLAN 200 — IPv6-адрес, полученный stateful методом.

Посмотрим как выглядят полученные сетевые реквизиты на одном из клиентов:

[root@manjaro ~]$ ip add show enp3s0
2: enp3s0: mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether f0:de:f1:19:d5:eb brd ff:ff:ff:ff:ff:ff
inet 192.168.200.101/24 brd 192.168.200.255 scope global dynamic noprefixroute enp3s0
valid_lft 170sec preferred_lft 170sec
inet6 2001:db8:200:1::130/128 scope global dynamic noprefixroute
valid_lft 76sec preferred_lft 31sec
inet6 fe80::f2de:f1ff:fe19:d5eb/64 scope link noprefixroute
valid_lft forever preferred_lft forever

Проверим информацию о маршрутах:

[root@manjaro ~]$ ip -4 route
default via 192.168.200.1 dev enp3s0 proto dhcp metric 20100
192.168.200.0/24 dev enp3s0 proto kernel scope link src 192.168.200.101 metric 100
[root@manjaro ~]$ ip -6 route
::1 dev lo proto kernel metric 256 pref medium
2001:db8:200:1::130 dev enp3s0 proto kernel metric 100 pref medium
2001:db8:200:1::/64 dev enp3s0 proto ra metric 100 pref medium
fe80::/64 dev enp3s0 proto kernel metric 100 pref medium
default via fe80::faf0:82ff:fe7a:2afb dev enp3s0 proto ra metric 20100 pref medium

Как и было описано в первой статье, шлюзом по умолчанию для IPv6-хоста является link-local адрес маршрутизатора, от которого было получено RA-сообщение.

Заключение

Подведем итог. Мы рассмотрели один из сценариев настройки Dual Stack на коммутаторах SNR, делается это довольно просто. На тестовом стенде проверили работоспособность одновременного использования IPv4, IPv6 и связанных с ними технологий. Если статья вызовет достаточный интерес, то можно будет ожидать третью часть про настройку IPv6-маршрутизации на коммутаторах агрегации и ядра SNR.

По всем вопросам, в том числе предоставления скидок, вы можете обратиться к вашему менеджеру. Напоминаем, что у нас есть Telegram-канал, а также обновленная база знаний.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *