• [ GEEKHERO:2021 ]
  • Категории
  • Files 42

Воистину гений

СТАТЬЯ ИЛИ СОН?
Операции над IPv6-адресами | GEEKHERO
root 10 марта 2021 г. 19:58

Операции над IPv6-адресами

Иконка категории
В категории "Телекоммуникации"

Метки: ccna, cisco, networking, address, ipv6


Сокращение IPv6 адресов

:: - два двоеточия подряд - это 2 или более октета с нулями. Можно использовать всего 1 раз на весь IPv6-адрес, например:

Можно 3124::DEAD:CAFE:0:0:0 или
3124:0:0:DEAD:CAFE::

Нельзя вот так 3124::DEAD:CAFE::

Например: 210F::CCCC:0:0:D - считаем, у нас 210F - первый откет, далее двоеточие, далее идут CCCC:0:0:D - это еще 4 октета, итого 5 октетов. Так всего в IPv6-адресе 8 октетов, то 8-5=3 октета недостающих, заполняем их нулями и получаем 210F:0000:0000:0000:CCCC:0000:0000:000D

Если перед буквами или цифрами, кроме нуля в октете идут нули, то их можно отсекать. Но, если нули идут после Букв или цифр - их оставляем. 
Например: ABCD:0020 - в сокращенном виде выглядит как ABCD:20, а ABCD:2000 - не сокращается.

Дано
С сокращением
2340:0000:0010:0100:1000:ABCD:0101:1010 2340:0:10:100:1000:ABCD:101:1010
30A0:ABCD:EF12:3456:0ABC:B0B0:9999:9009 30A0:ABCD:EF12:3456:ABC:B0B0:9999:9009
2222:3333:4444:5555:0000:0000:6060:0707 2222:3333:4444:5555:0:0:6060:707
3210:0000:0000:0000:0000:0000:0000:0000 3210::
210F:0000:0000:0000:CCCC:0000:0000:000D 210F::CCCC:0:0:D
34BA:000B:000B:0000:0000:0000:0000:0020 34BA:B:B::20
FE80:0000:0000:0000:DEAD:BEFF:FEEF:CAFE FE80::DEAD:BEFF:FEED:CAFE
FE80:0000:0000:0000:FACE:BAFF:FEBE:CAFE FE80::FACE:BAFF:FEBE:CAFE

 

Нахождение части подсетей IPv6-адреса

Допустим, на ПК клиента установлен такой адрес: 2000:1234:5678:9ABC:1234:5678:9ABC:1111/64. Так как максимальный префикс для IPv6 =128, то 64 - есть половина - то есть 4 октета из 8, таким образом, 2000:1234:5678:9ABC - часть подсети, а 1234:5678:9ABC:1111 - часть хостов.

Для написания номера подсети приводим часть хостов к нулю и получаем такое: 2000:1234:5678:9ABC:0000:0000:0000:0000/64, а в сокращенном виде: 2000:1234:5678:9ABC::/64

Разберем несколько простых примеров:

Дано
Подсеть
С сокращением
2340:0:10:100:1000:ABCD:101:1010/64 2340:0:10:100:0000:0000:0000:0000/64 2340:0:10:100::/64
30A0:ABCD:EF12:3456:ABC:B0B0:9999:9009/64 30A0:ABCD:EF12:3456:0000:0000:0000:0000/64 30A0:ABCD:EF12:3456::/64
2222:3333:4444:5555::6060:707/64 2222:3333:4444:5555:0000:0000:0000:0000/64 2222:3333:4444:5555::/64
3210::ABCD:101:1010/64 3210:0000:0000:0000:0000/64 3210:0:0:0:0/64


А теперь разберем несколько более сложных примеров:

Дано: 2000:1234:5678:9ABC:1234:5678:9ABC:1111/56
Каждый октет есть 16 бит, так как всего 8 октетов и 128 бит, т.о. 16*8 = 128, значит половина октета = 8 бит. 
В данном случае, нам нужно отсчитать 3 целых октета и половину 4-го, получаем 3*16+8=56 бит.

Итого получаем такую часть подсети: 2000:1234:5678:9A00:0000:0000:0000:0000/56
или в сокращенном виде: 2000:1234:5678:9A00::/56

Тут можно легко допустить ошибку, посчитав, что, так как у нас префикс=56 бит, то после 9A мы должны были отсечь 2 символа, но это не так. Они остаются: 9A00, потому что, если отсечь два нуля в конце в дальнейшем может превратится в 009А, что есть уже другой адрес.

Дано
С сокращением
34BA:B:B:0:5555:0:6060:707/80 34BA:B:B:0:5555::/80
3124::DEAD:CAFE:FF:FE00:1/80 3124:0:0:DEAD:CAFE::/80
2BCD::FACE:BEFF:FEBE:CAFE/48 2BCD:0000:0000::/48
3FED:F:E0:D00:FACE:BAFF:FE00:0/48 3FED:F:E0::/48
210F:A:B:C:CCCC:B0B0:9999:9009/40 210F:A:0::/40
34BA:B:B:0:5555:0:6060:707/36 34BA:B:0::/36
3124::DEAD:CAFE:FF:FE00:1/60 3124:0:0:DEA0::/60
2BCD::FACE:1:BEFF:FEBE:CAFE/56 2BCD:0000:0000:FA00::/56

 

Учимся понимать как работает механизм по автоматической выдаче IPv6-адресов на основе MAC-адресов хостов

Prefix: 2001:DB8:1:1::/64
MAC: B80C.BEEF.CAFE

Первым делом необходимо разделить MAC пополам и добавить по-середине такое: FFFE, получаем такую запись: B80C:BEFF:FEEF:CAFE

Далее, берем первые 2 символа получившейся записи - это B8, очевидно, что это в шестнадцатеричном (HEX) формате. Необходимо перевести B8 в двоичный вид, 
получаем: 1011 1000, но это еще не все. Из двоичной записи берем 7-й бит и инвертируем его (1 в 0 или 0 в 1) и получаем такую запись: 1011 1010, а теперь обратно переводим в HEX-формат, получаем BA (B=1011, A=1010). 
Наконец-то подставляем вместо B8 наш результат BA и получаем: BA0C:BEFF:FEEF:CAFE, а эту запись добавляем после /64 префикса и получаем результат: 2001:DB8:1:1:BA0C:BEFF:FEEF:CAFE

Разберем несколько примеров:

Префикс
MAC-адрес
Результат
Мои расчеты
2001:DB8:1:1::/64 0013.ABAB.1001 2001:DB8:1:1:0213:ABFF:FEAB:1001  
2001:DB8:1:1::/64 AA13.ABAB.1001 2001:DB8:1:1:A813:ABFF:FEAB:1001 AA=1010 1010=1010 1000, 1010=A, 1000=8
2001:DB8:1:1::/64 000С.BEEF.CAFE 2001:DB8:1:1:020C:BEFF:FEEF:CAFE  
2001:DB8:1:1::/64 B80C.BEEF.CAFE 2001:DB8:1:1:BA0C:BEFF:FEEF:CAFE B8=1011 1000=1011 1010, BA
2001:DB8:FE:FE::/64 0C0C.ABAC.CABA 2001:DB8:FE:FE:0E0C:ABFF:FEAC:CABA 0C=0000 1100=0000 1110, 0E
2001:DB8:FE:FE::/64 0A0C.ABAC.CABA 2001:DB8:FE:FE:080C:ABFF:FEAC:CABA 0A=0000 1010=0000 1000, 08

 

Поделиться записью


Похожие записи:

Card image cap
MikroTik 3G 4G LTE: Мобильный роутер – из LTE в PPP

В данной статье хотелось бы затронуть мобильную тематику в популярной RouterOS, а именно подключение 3G/4G(LTE) модемов к роутерам компании MikroTik

Продолжить Чтение...
Card image cap
Запуск Django сайта на nginx + Gunicorn + SSL

Развернутая инструкция по настройке nginx, Gunicorn и SSL для вашего Django проекта в продакшене.

Продолжить Чтение...
Card image cap
Собираем кластер на ESXI

Кратчайшая минималистичная инструкция по сборке кластера на ESXI и немного про резервирование

Продолжить Чтение...
Категории
Обучение и подготовка (3)
Linux (15)
Телекоммуникации (12)
Программирование (2)
Обзоры на технику (1)
Виртуализация (1)
Web-разработка (5)
Администрирование Windows (0)

Последние записи
Быстро подключаемся к серверам по SSH из терминала
28 Фев 2023
Flask в Docker+Kuberenetes
28 Авг 2022
Готовим образ Docker для Flask приложения
26 Авг 2022

Популярные метки
Copyright 2019-2021  
Обратная связь