как пинговать ipv6 адрес
How to Ping IPv6 Address from Windows and Linux CLI
IPV6 stands for ‘Internet Protocol Version 6’ and this was introduced to replace IPV4 due to the exhaustion of IPv4 addresses. Due to IPV4 having limited number of IP addresses and with the expansion of Iot (Internet of Things) number of IP addresses that can be used in IPV4 have started to run out and IPV6 was introduced as a solution to this problem.
There are various benefits IPV6 has over IPV4 and some of them are;
Pinging to IPV6 Addresses
In order to check the IPV6 connectivity from your machine, you need to have one of below prerequisites.
If you have any of these methods configured you can test the connectivity to IPV6 addresses using the ‘Ping’ command as below.
Using Ping Command
Ping command is used to check the connectivity to a given destination over the network and this is widely used between various parties all over the world for network troubleshooting purposes.
The ping command operates by sending Internet Control Message Protocol (ICMP) Echo Request messages to the destination and waiting for a response. By using this command we can get details such as the number of responses received from the destinations and the time it took for them to return.
The Ping command is available from within the Command Prompt in Windows 7/8/10, Windows Vista, Windows XP and all of the Linux operating systems.
You can follow below steps to ping to IPV6 addresses from your Windows machine
Step 1: Open the Command prompt of your Windows machine as described in one of the previous steps
For testing purposes, you can simply use the IPV6 address of Google, which is ‘ipv6.google.com’
As you can see, 3 packets have been transmitted and 3 have received with 0% packet loss, which means the connectivity to the IPV6 address of Google is successful.
Using Ping6 Command
Use below steps to check the connectivity to IPV6 addresses from your Linux machine by pinging to that address
Step 1: Open the Terminal as described in one of the previous steps
In this example, after the destination IPV6 address ‘%eth0’ is added since it is a link-local address, and the machine has multiple interfaces (Wi-Fi/eth0), so you need to tell your device the interface/link you want to use with this link-local address. But this is not needed for other types of addresses.
How to find the IPV6 address of your PC?
There are several ways that you can find the IPV6 address of your PC and this article shows the easiest ways to find it out on both Windows and Linux OSs (Operating Systems)
On Windows :
Not all the Windows distributions support IPV6 because the deployment of Internet Protocol Version 6 (IPv6) has only been in progress since the mid-2000s and because of this Microsoft Windows has supported IPv6 only since Windows 2000.
Windows distributions that support IPV6 :
Use the below steps to find the IPV6 address of your Windows machine.
Step 1: Go to Windows search bar and search for the Command prompt by typing ‘cmd’. There you will see the Command Prompt suggesting as below and select it
Step 2: In the Command Prompt type ‘ipconfig’ and it will then show all the current TCP/IP network configuration values in your machine
Step 3: In there under your ethernet connection details you will be able to see your IPV6 address
On Linux :
All the modern Linux distributions higher than Kernal 2.2 support IPV6 and below some of the examples
Below are the steps you can use to find out the IPV6 address of your Linux machine. In this example, we have shown you the way to find IPV6 address of an Ubuntu machine
Step 1: Go to the search bar of the Ubuntu machine that is located on the top left corner
Step 2: Search for the word ‘Terminal’ and then you will see Terminal in your search results. Select it
Step 3 : Type ‘ifconfig’ in the terminal to see all the network configurations in your Linux machine. There under eth0 configurations you will be able to see your IPV6 address
Discover Routes of IPV6 Packets
Out of all the network diagnostic tools that is available to view route information, traceroute is the most popular tool. Traceroute tracks the route packets taken from an IP network on their way to a given host. It utilizes the IP protocol’s time to live (TTL) field and attempts to elicit an ICMP TIME_EXCEEDED response from each gateway along the path to the host.
Traceroute6 on Linux
Below is the command to view the route details of IPV6 packets in a Linux machine. It displays the routes the IPV6 packets went through and the time they took to pass through them as well.
Command : traceroute6 [IPV6 IP Address]
Same as the above commands, there are more commands that can be used to analyze IPV6 packets. They differ from commands that are used to analyze IPV4 packets as the packet structure of IPV6 packets are different than the packet structure of IPV4 packets. Please leave your suggestions and comments. Thanks
Как пинговать IPv6-адрес из командной строки Windows и Linux
IPV6 означает «Internet Protocol Version 6», и он был введен для замены IPV4 из-за исчерпания адресов IPv4.
Из-за того, что IPV4 имеет ограниченное количество IP-адресов и с расширением Iot (Internet of Things), количество IP-адресов, которые могут быть использованы в IPV4, начали заканчиваться, а IPV6 был представлен как решение этой проблемы.
Существуют различные преимущества IPV6 по сравнению с IPV4, а некоторые из них:
Пингование адресов IPV6
Чтобы проверить подключение IPV6 на вашем компьютере, вам необходимо иметь одно из следующих предварительных условий.
Если вы настроили любой из этих методов, вы можете проверить подключение к адресам IPV6 с помощью команды «ping», как показано ниже.
Использование команды Ping
Команда Ping используется для проверки возможности подключения к определенному месту назначения по сети, и он широко используется между различными сторонами по всему миру для устранения неполадок в сети.
Команда ping работает, отправляя сообщение эхо-запроса протокола ICMP (ICMP) адресату и ожидая ответа.
Используя эту команду, мы можем получить информацию, такую как количество ответов, полученных от получателей, и время, необходимое для их возврата.
Команда Ping доступна из командной строки в Windows 7/8/10, Windows Vista, Windows XP и всех операционных системах Linux.
Вы можете выполнить следующие шаги, чтобы выполнить ping к адресам IPV6 с вашей машины Windows
Шаг 1. Откройте командную строку на компьютере Windows, как описано на одном из предыдущих шагов.
В целях тестирования вы можете просто использовать IPV6-адрес Google, который является адресом «ipv6.google.com»,
Как вы можете видеть, 3 пакета были переданы и 3 получены с потерей пакетов 0%, что означает, что подключение к IPV6-адресу Google выполнено успешно.
Использование команды Ping6
выполните следующие шаги, чтобы проверить подключение к IPv6-адресам с вашей Linux-машины, отправив запрос на этот адрес
Шаг 1. Откройте терминал, как описано на одном из предыдущих шагов
В этом примере после назначения адреса IPV6 «% eth0» добавляется, поскольку он является локальным адресом связи, и машина имеет несколько интерфейсов (Wi-Fi / eth0), поэтому вам необходимо сообщить устройству интерфейс / ссылку хотите использовать этот локальный адрес.
Но это не требуется для других типов адресов.
Как найти IPV6-адрес вашего ПК?
Существует несколько способов найти IPV6-адрес вашего ПК, и в этой статье показаны самые простые способы найти его как на ОС Windows, так и на Linux (операционных системах)
На Windows :
Не все дистрибутивы Windows поддерживают протокол IPV6, поскольку развертывание протокола интернет-протокола версии 6 (IPv6) происходит только с середины 2000-х годов, и из-за этого Microsoft Windows поддерживает IPv6 только с Windows 2000.
Дистрибутивы Windows, поддерживающее IPV6:
Используйте нижеприведенные шаги, чтобы найти IPV6-адрес вашего компьютера Windows.
Шаг 1. Перейдите в панель поиска Windows и найдите командную строку, набрав «cmd».
Там вы увидите подсказку командной строки, как показано ниже, и выберите ее
Шаг 2. В командной строке введите «ipconfig» и затем посмотрите все текущие значения конфигурации сети TCP / IP на вашем компьютере
Шаг 3: Там, где вы видите данные о соединении через Ethernet, вы сможете увидеть свой IPV6-адрес
На Linux :
Все современные дистрибутивы Linux с ядром выше, чем Kernal 2.2, поддерживают IPV6 и ниже некоторых примеров
Ниже приведены шаги, которые вы можете использовать, чтобы узнать IPv6-адрес вашей Linux-машины. В этом примере мы показали вам способ найти IPV6-адрес машины Ubuntu
Шаг 1. Перейдите в панель поиска машины Ubuntu, которая находится в верхнем левом углу
Шаг 2. Найдите слово «terminal», а затем вы увидите «Терминал» в результатах поиска. Выберите его
Шаг 3: Введите «ifconfig» в терминале, чтобы увидеть все сетевые конфигурации на вашей машине Linux.
Там, в конфигурациях eth0, вы сможете увидеть свой IPV6-адрес
Поиск маршрутов пакетов IPV6
Из всех инструментов диагностики сети, доступных для просмотра информации о маршруте, traceroute является самым популярным инструментом.
Traceroute отслеживает пакеты маршрутов, взятые из IP-сети, на пути к данному хосту.
Он использует поле времени IP-протокола для жизни (TTL) и пытается получить ответ ICMP TIME_EXCEEDED от каждого шлюза по пути к хосту.
Traceroute6 в Linux
Ниже приведена команда просмотра сведений о маршруте пакетов IPV6 на машине Linux. Он отображает маршруты, по которым прошли пакеты IPV6, и время, которое они прошли, чтобы пройти через них.
Команда: traceroute6 [IP-адрес IPV6]
OpenSource в заметках
Возможно вы привыкли к IPv4, однако нравится вам это или нет, постепенно наступает эра IP шестой версии. Засучите рукава, поплюйте на ладони и приготовьтесь поработать. Ядро, начиная с версии 2.1, обладает поддержкой IPv6, так что вам ничего не нужно доустанавливать. Убедитесь лишь, что в вашей системе установлены программы ping6, ip и ifconfig. И давайте сразу договоримся: здесь мы говорим не об «IP», а об «IP-адресах». IP — это Internet Protocol, а никак не IP-адреса. Как говорит моя бабушка, небрежность в разговоре равносильна небрежности в делах, что ни к чему хорошему не приводит.
Преимущества IPv6
Итак, чем же IPv6 лучше своего предшественника? Кроме того, что мы избавляемся от проблем в IPv4-адресацией, у нас теперь есть:
Основным недостатком IPv6 можно назвать длинные адреса в шестнадцатиричном виде. Четыре фрагмента адреса IPv4, разделённые точками, легки для запоминания, а вот восемь кусков шестнадцатиричных чисел запомнить куда труднее.
Моя система поддерживает IPv6?
Как узнать, включена ли поддержка IPv6 в вашем Linux? Очень просто:
Если вы увидите в своей системе вывод, подобный этому — значит всё отлично, поддержка IPv6 в вашей системе включёна. Вообще, все современные Linux-дистрибутивы поддерживают IPv6 «из коробки».
Пинг IPv6
Если вам нужно выполнить пинг IPv6-системы, вам понадобится утилита ping6. Следующая команда отправляет два пакета к localhost:
::1 — это сокращение от 0000:0000:0000:0000:0000:0000:0000:0001. Любая непрерывная последовательность нулей может быть заменена на пару двоеточий, а любая четвёрка, состоящая из нулей, может быть заменена на один ноль. Для нашего примера это 0.0.0.0.0.0.0.1.
Исследование сети
Хотите узнать, есть ли кто-то в вашей сети, кто имеет поддержку IPv6? Легко!
Представленный в примере вывод команды ping6 говорит что да, есть два: fe80::20b:6aff:feef:7e8d и fe80::221:97ff:feed:ef01. Обратите внимание, что вы обязательно должнеы указать имя интерфейса программе ping6, даже если этот интерфейс в вашей системе один-единственный. ff02::1 — это сокращенный вариант адреса ff02:0:0:0:0:0:0:1, который является специальным мультикаст-адресом, предназначенным для отправки пакетов всем link-local хостам.
Адреса link-local — это все адреса в диапазоне fe80::/10, который по смыслу эквивалентен диапазону 169.254.0.0/16 в IPv4. Любой адрес из этого диапазона предназначен для автоконфигурирования ОС и пакеты, отправленные с такого адреса не пропустит ни один маршрутизатор, ограничивая их существование в пределах сегмента локальной сети. Протокол IPv6 спроектирован так, что интерфейс обязан иметь link-local адрес, даже если у него есть другой
После того, как ваш хост обменялся данными с другими хостами по IPv6, адреса последних попадут в таблицу окружения (neighbor table) IPv6 (это что-то вроде ARP-таблицы). Содержимое neighbor table вы можете просмотреть при помощи утилиты ip:
Здесь «nud reachable» означает «статус network unreachability detection установлен в состояние reachable», то есть сетевой хост доступен. Каждая запись в neighbor table временная и хранится в течение нескольких минут после последней сетевой активности в направлении хоста.
Использование сетевых имён
Оставим пока «правильные» сисадминовские методы настройки соответствия имён хостов их IP-адресам, а сейчас воспользуемся старым добрым /etc/hosts. Представим, у вас есть три хоста в одном физическом сегменте сети, имеющие имена fatfreddy, phineas, и franklin. Создадим на каждом из хостов записи в /etc/hosts:
Теперь можно пинговать системы по имени:
SSH и SCP
SSH и SCP умеют работать c IPv6. Внимание, при передаче параметров этим утилитам из командной строки, имеются определённые синтаксические особенности, так что будьте внимательны! Если у вас настроено корректное разрешение имён IPv6-хостов, то разницы при вызове утилит вообще никакой. Вы таким же образом можете подключаться к удалённой оболочке:
и копировать файлы:
А вот в случае использования IPv6-адресов всё чуток сложнее. Установка SSH-сессии:
И опять же, если вы используете link-local адрес, то вы должны указать имя интерфейса с которого будете осуществлять подключение. Как показано выше, делается это путём добавления знака процента и имени интерфейса. Вызов scp имеет ещё более дурацкий синтаксис:
IPv6-адрес вместе именем интерфейса необходимо заключать в квадратные скобки, а квадратные скобки в свою очередь экранировать, чтобы оболочка не узрела в них спецсимволов.
Какой у меня IPv6-адрес?
Интернет
Работа в сегменте локальной сети — это, конечно, хорошо, но как обстоят дела в работой IPv6 в глобальной сети? Для того, чтобы воспользоваться IPv6 в интернет, ваш провайдер должен выдать вам «чистый» IPv6-адрес. Таких провайдеров сегодня очень мало. Свою первую IPv6-сеть автор настроила в 2004 году и если бы вы сказали ей, что спустя семь лет ситуация с IPv6 останется почти такой же, она бы вам не поверила. Да, 2011-й в этом плане не очень-то отличается от 2004-го. Тем временем, вы можете воспользоваться IPv6-over-IPv4 tunnel broker-ами (как, впрочем, вы могли это сделать и в 2004-м!), такими как SixXS или Hurricane Electric.
8 июня 2011 года — мировой день IPv6. В этот день Google, Comcast, Facebook, Yahoo!, Akamai и Limelight Networks, а также ещё некоторые провайдеры включат доступ к своим хостам по IPv6 на 24 часа. Убедитесь в том, что вы готовы принять участие в тестировании и узнайте больше на test-ipv6.com.
Так же, как и в случае с IPv4, ваш провайдер должен выделить вам блок адресов IPv6. Адреса из этого блока являются глобальными адресами, находящимися в диапазоне 2000::/3. Давайте в качестве эксперимента попробуем присвоить какому-нибудь сетевому интерфейсу адрес из этого диапазона:
Теперь взглянем, что у нас получилось:
Удалить назначенный адрес можно при помощи всё той же утилиты ip:
В реальной жизни вам будут выделять большой блок адресов, например 256 или больше, так что вам нужно будет настроить сервер для их автоматической раздачи вашим хостам. В следующей части статьи мы с вами рассмотрим, как это делается. Также рассмотрим, как необходимо настроить файрволл и службу имён для работы с IPv6.
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Введение в IPv6 адреса: как пользоваться и как исследовать сеть (часть 1)
Оглавление: Компьютерные сети
6. Канальный уровень передачи данных
7. Маршрутизация данных
8. Служебный протокол ICMP
10. Настройка сетевых подключений в командной строке Linux
11. Определение проблем работы сети
12. Туннелизация
Могут ли роутеры и компьютеры одновременно работать с IP и IPv6
IPv6 — это новая версия протокола IP. IPv6 сети, оборудование и программное обеспечение с поддержкой IPv6 распространены уже довольно широко — по крайней мере, в некоторых странах.
Сейчас, когда IP и IPv6 протоколы работают вместе, это приводит к существованию фактически двух параллельных сетей. Например, роутер моего Интернет-провайдера поддерживает IPv6 и IP. Если я обращаюсь к сайту, у которого есть IPv6 адрес (большинство сайтов), то мой запрос и ответ идёт по сетям (узлам) с поддержкой IPv6. Если я обращусь к сайту, у которого только IP адрес, то мой запрос и ответ на него может пойти по другому маршруту.
При анализе сети, допустим, с помощью Wireshark или tcpdump можно пропустить половину или даже больше трафика, если забыть про IPv6! То есть в качестве фильтра отображения пакетов в Wireshark вы введёте (обычный фильтр для показа трафика IP протокола):
То вы увидите примерно такое:
Но если ввести такой фильтр
То картина изменится кардинально (обращаю внимание, что это тот же самый трафик), окажется, что компьютер подключается ещё и к совершенно другим хостам:
При анализе сети, при настройке фильтров отображения по IP, при выполнении атак (например, ARP и DNS спуфинг в локальной сети), нужно помнить про IPv6!
Ещё раз: IP и IPv6 это две параллельные сети, которые не особо связаны друг с другом (хотя одно и то же оборудование может поддерживать работу с обоими протоколами). В результате при настройке сети, например, файервола, нужно отдельно сделать настройки для протокола IP, а затем делать такую же настройку IPv6. Поскольку это разные сети, есть шанс, что системный администратор настроил их по-разному, что даёт лазейки для выполнения атак или обхода ограничений с использованием IPv6. Реальный пример я описывал здесь (краткий пересказ: у отечественного VPS хостера ВНЕЗАПНО для клиентов сломался доступ к DNS серверам Google. При этом каждому VPS серверу прилагается 3 бесплатных IPv6 адреса. В дополнении к существующим записям DNS серверов, я добавил ещё парочку IPv6 адресов DNS Google в настройки и всё заработало! Видимо, при блокировке доступа, произошло именно это — администратор сети забыл (не посчитал нужным) позаботиться об IPv6 сети…)
IPv6 адреса могут пригодиться при исследовании локальных сетей Интернет-провайдеров, стоит попробовать использовать IPv6 для обхода Captive Portal (перехватывающих порталов) и других ограничений сети, про IPv6 нужно помнить при анализе трафика на своём компьютере и в локальных сетях, либо наоборот для увеличения скрытности своего пребывания (в надежде, что в настройках логирования трафика не упомянут IPv6 или что геолокация по IPv6 сейчас в зачаточном состоянии (по крайней мере, в публичных базах данных)).
Кстати про блокировки, насколько я понимаю (поправьте, если ошибаюсь), в реестре РКН ведь IPv6 отсутствуют вовсе.
Эта статья поможет вам сделать первые шаги по использованию IPv6 адресов с популярными программами.
Структура IPv6 адреса
Ниже приведены примеры правильных IPv6 адресов:
Они, мягко говоря, разные. Давайте разберёмся, как такое возможно.
Адреса IPv6 в полной форме отображаются как восемь четырёхзначных шестнадцатеричных чисел (то есть восемь групп по четыре символа), разделённых двоеточием. Пример адреса:
Шестнадцатеричные числа записываются с помощью цифр от 0 до 9 и с помощью букв от a до f.
Полная запись может быть сокращена используя несколько методов нотации, к примеру, адрес 2001:0db8:0000:0000:0000:8a2e:0370:7334 равнозначен адресу 2001:db8::8a2e:370:7334.
Кстати, ведь IP адреса тоже поддерживают сокращённую запись, к примеру, следующая команда прекрасно будет работать:
В результате будет выполнен пинг адреса 127.0.0.1, который в сокращённом виде представляет собой 127.1.
У IPv6 адресов в каждом сегменте 16 бит информации, на английском языке эти сегменты называют hextet или hexadectet. Всего 8 сегментов по 16 бит информации, получается, что для записи IPv6 адресов используется 8*16=128 бит.
Как уже было сказано выше, в IPv6 адресах числа в группах записываются в виде шестнадцатеричных чисел, а не в виде десятеричных, как в IP. Кстати, если запись была бы в виде десятичных чисел, то в каждом сегменте были бы числа от 0 до 65535 (это 2 16 ). Что касается шестнадцатеричных чисел, то для записи 16 бит информации нужно число длиной до четырёх символов, поэтому получается, то размер раздела составляет 4 символа, но может быть меньше, поскольку нули в начале числа писать необязательно. То есть если там должно быть число 00a1, то можно записать просто a1 — это первый способ сокращения записи IPv6 адресов.
Если в группе число равно 0 (то есть четыре нуля), то записывается один ноль.
Если групп с нулями несколько подряд, то независимо от количества нулей вся эта группа записывается как идущие два подряд двоеточия (::). Последнее сокращение можно использовать в одном IPv6 адресе только один раз, даже если имеется несколько групп с нулями. Если групп с нулями несколько, то заменяется только самая продолжительная из них. Если имеется две группы с нулями одинаковой длины, то заменяется та, которая идёт первой, то есть более левая.
Пример использования этих правил:
Начальный адрес: 2001:0db8:0000:0000:0000:ff00:0042:8329
После удаления всех начальных нулей в каждой группе: 2001:db8:0:0:0:ff00:42:8329
После пропуска последовательных сегментов с нулями: 2001:db8::ff00:42:8329
Петлевой адрес 0000:0000:0000:0000:0000:0000:0000:0001 используя правила сокращения можно сократить до ::1
Вернёмся к адресам из примеров выше:
Как мы уже выяснили, это петлевой адрес 0000:0000:0000:0000:0000:0000:0000:0001.
2a02:6b8:a::a
Здесь пропущено несколько секций с последовательными нулями. Сколько именно? Это можно узнать исходя из следующего правила: всего должно быть 8 секций, а имеется только 4, значит, пропущено 4 секции, то есть в полном виде число должно выглядеть так:
2a02:f680:1:1100::3d60
В этом адресе 5 сегментов, а должно быть 8, значит пропущено 3, запись адреса в полном виде:
Или вместе со всеми нулями:
2604:a880:800:c1::2ae:d001
В этом адресе 6 сегментов, а должно быть 8, следовательно, полная запись этого адреса:
2001:db8:11a3:9d7:1f34:8a2e:7a0:765d
В этом адресе 8 сегментов и нет двух двоеточий подряд — следовательно, это и есть полная запись адреса, разве что, опущены начальные нули:
Надеюсь, эти простые упражнения помогли вам «наметать глаз» и научиться узнавать IPv6 адреса.
Как узнать, у меня IPv6 адрес или нет? Как узнать свой IPv6 адрес
С IPv6 адресами в этом смысле проще — их настолько много, что потребность в NAT отпадает — можно каждому клиенту раздать по персональному IPv6 адресу.
Но тут возникает другое затруднение. Давайте посмотрим вместе. В Windows для вывода своих IP и IPv6 адресов в командной строке выполните команду:
В Linux для просмотра своих IP и IPv6 адресов поможет команда:
Здесь IPv6 адреса вместе с масками подсети перечислены в строках:
Мы рассмотрим зарезервированные диапазоны IPv6 адресов чуть позже, забегая вперёд скажу, что глобальные адреса в настоящее время могут начинаться только на 2 или на 3 (другие пока просто не раздаются). Но даже при таком критерии, в примерах выше в каждой операционной системе есть по два адреса, которые начинаются с двоек — какой именно из них ваш внешний IPv6?
Самый простой вариант — вновь проверить с помощью внешнего сервиса, но нужно понимать, что если сайт, на который вы заходите, чтобы узнать свой IP адрес, не настроен на работу с IPv6, то он покажет только ваш IP, но никак не сможет показать ваш IPv6. Сервис на SuIP.biz имеет поддержку IPv6 и покажет ваш IPv6 адрес, если ваш Интернет-провайдер и ваше оборудование (компьютер и роутер) поддерживают IPv6.
Чтобы узнать, есть ли у вас поддержка и свой IPv6 адрес, перейдите на страницу: https://suip.biz/ru/?act=myip
Если у вас есть IPv6, то он будет показан. Если поддержка IPv6 отсутствует, то будет показан только ваш IP.
Зарезервированные IPv6 адреса
В этом разделе рассмотрим диапазоны IPv6 адресов для целевого назначения, чтобы мы могли сразу отфильтровывать их из многочисленных IPv6 адресов сетевых интерфейсов.
У IP также есть зарезервированные диапазоны адресов: 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, 127.0.0.0/8, 100.64.0.0/10 и ещё несколько, полный список найдёте здесь.
Специальные диапазоны IPv6 адресов также имеются. Рассмотрим таблицу «Специальные блоки адресов IPv6»:
Блок адресов (CIDR) | Первый адрес | Последний адрес | Количество адресов | Использование | Цель |
---|---|---|---|---|---|
::/0 | :: | ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff | 2 128 | Маршрутизация | Маршрут по умолчанию. Смотрите 0.0.0.0 в IPv4. |
::/128 | :: | 1 | Программное обеспечение | Неопределённый адрес. | |
::1/128 | ::1 | 1 | Хост | Петлевой (Loopback) адрес на локальный хост. Смотрите 127.0.0.0/8 в IPv4 | |
::ffff:0:0/96 | ::ffff:0.0.0.0 | ::ffff:255.255.255.255 | 2 128−96 = 2 32 = 4294967296 | Программное обеспечение | IPv4 mapped addresses.встроенный IPv4. Нижние 32 бита это адрес IPv4. Также называется IPv4-совместимым IPv6 адресом. Устарел и больше не используется. |
::ffff:0:0:0/96 | ::ffff:0:0.0.0.0 | ::ffff:0:255.255.255.255 | 2 32 | Программное обеспечение | IPv4 translated addresses.Адрес IPv4, отображённый на IPv6. Нижние 32 бита — это адрес IPv4 для хостов, не поддерживающих IPv6. |
64:ff9b::/96 | 64:ff9b::0.0.0.0 | 64:ff9b::255.255.255.255 | 2 32 | Глобальный Интернет | IPv4/IPv6 translation. Зарезервирован для доступа из подсети IPv6 к публичной сети IPv4 через механизм трансляции NAT64[13][14] |
100::/64 | 100:: | 100::ffff:ffff:ffff:ffff | 2 64 | Маршрутизация | Discard prefix. |
2001::/32 | 2001:: | 2001::ffff:ffff:ffff:ffff:ffff:ffff | 2 96 | Глобальный Интернет | Зарезервирован для туннелей Teredo в RFC 4380 |
2001:20::/28 | 2001:20:: | 2001:2f:ffff:ffff:ffff:ffff:ffff:ffff | 2 100 | Программное обеспечение | ORCHIDv2. |
2001:db8::/32 | 2001:db8:: | 2001:db8:ffff:ffff:ffff:ffff:ffff:ffff | 2 96 | Документация | Адреса для использования в документации и примерах исходного кода. |
2002::/16 | 2002:: | 2002:ffff:ffff:ffff:ffff:ffff:ffff:ffff | 2 112 | Глобальный Интернет | Зарезервирован для туннелей 6to4 в RFC 3056 (устарело). |
fec0:/10 | feff:: | fec0:ffff:ffff:ffff:ffff:ffff:ffff:ffff | 2 118 | Site-local (Частные сети)) | Помечен как устаревший в RFC 3879 (Аналог внутренних сетей 10.0.0.0/8; 172.16.0.0/12; 192.168.0.0/16) |
fc00::/7 | fc00:: | fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff | 2 121 | Частные сети | Уникальные локальные адреса. Диапазон пришёл на смену Site-Local |
fe80::/10 | fe80:: | febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff | 2 118 | Link | Link-local address. Аналог 169.254.0.0/16 в IPv4 |
ff00::/8 | ff00:: | ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff | 2 120 | Глобальный Интернет | Многоадресные адреса |
Как видно из таблицы, адреса, которые начинаются на нули или на f — являются локальными, либо предназначены для конкретных целей.
Глобальные IPv6
Соответствуют публичным IPv4-адресам. Могут находиться в любом не занятом диапазоне. В настоящее время региональные интернет-регистраторы распределяют блок адресов 2000::/3 (с 2000:: по 3FFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF).
Это означает, что глобальными сейчас являются только IPv6 адреса, которые начинаются на «2» или на «3».
Как видно на скриншотах выше, сетевым интерфейсам присвоено более чем один IPv6 адрес. Для IPv6 это является нормой, хотя, к примеру, у меня на VPS сервере у сетевого интерфейса только один IPv6 адрес и этого хватает для подключения и функционирования сайта.
У одного сетевого интерфейса может быть много IPv6 адресов, по умолчанию, у меня в Linux это максимум 16:
Зачем так много IPv6 одному интерфейсу? Каждый интерфейс IPv6 имеет локальный IP-адрес. Если интерфейс также может обмениваться данными с более крупной сетью (например, через Интернет), он также имеет глобальный адрес. Это как минимум два адреса. И если хост находится за многосетевым подключением к Интернету, он, вероятно, имеет ещё больше адресов.
В общем, IPv6 у одного компьютера может быть много — и это норма. Глобальными являются адреса, которые начинаются на двойку или на тройку.
Как узнать IPv6 адрес сайта
IP адрес сайта храниться в A записях, а IPv6 адрес сайта хранятся в записях AAAA (смотрите Введение в DNS терминологию, компоненты и концепции).
В Windows IPv6 адрес сайта можно узнать командой nslookup:
Если у сайта есть IPv6 адрес, то он будет выведен вместе с IP адресами.
В Linux также можно использовать команду nslookup:
Можно использовать команду host:
Команда dig также умеет показывать IPv6 адреса, но по умолчанию выводит данные только для A записи, поэтому нужно указать вид записи явно:
Либо настроить вывод всех DNS записей данного домена:
Если вам не хочется возиться с утилитами командной строки, то можете воспользоваться онлайн сервисов, который покажет вам все IP и IPv6 адреса любого сайта: https://suip.biz/ru/?act=dig
Теперь, когда мы научились смотреть и узнавать IPv6 адреса, давайте научимся использовать их в различных приложениях и утилитах.
Сервис проверки, использую ли я IPv6 адреса
Сервис «Есть ли у меня IPv6» поможет вам определить, можете ли вы открывать сайты используя IPv6 или вам доступна только старая версия.