Jump to content
  • 0

ipv6 subnet number


gaaronk
 Share

Question

Поясните пожалуйста логику работы 

 ipv6 subnet number 

?

 

Как именно из  ipv6 prefix вычсиляется подсеть?

 

И еще вопрос. Правильно ли я понимаю логику работы. 

Я настраиваю TunnelSixInFour0 с ipv6 адресом для point-to-point соединения. На другой стороне мой сервер (не брокер!) где я поднимаю sit туннель. Все работает. На большом сервере в сторону туннеля я маршрутизирую <ip6_subnet>/112 для кинетика

Соответственно на интерфейсе TunnelSixInFour0  я указываю ipv6 prefix <ip6_subnet>/112 -  ipv6 prefix указывается на том интерфейсе через который он нам прилетает (верно?)

 

Теперь делаю

ipv6 subnet Home6
    bind Home
    number 1
    mode slaac

 

Как я понимаю на интерфейсе br0 рутер начинает анонсировать <ip6_sub_subnet>/114 для клиентов. и Этот ip6_sub_subnet и его маска рассчитываются исходя из number

 

На самом интерфейсе Home IPv6 адрес при этом не назначается, и в принципе он и не нужен, но я могу его настроить статически руками взяв адрес из диапазона <ip6_subnet>/112 который не пересекается с анонсируемой <ip6_sub_subnet>/114

Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Для ipv6 самой малой маршрутизируемой сетью считается /64. Такое ограничение связано с работой алгоритма автоматического назначения адреса (SLAAC).

Именно по причине, что сеть меньше 64 (65,66... и более), роутер не может назначить себе адрес для интерфейса Home.

https://www.ripe.net/about-us/press-centre/understanding-ip-addressing

Link to comment
Share on other sites

  • 0
26 minutes ago, vst said:

Для ipv6 самой малой маршрутизируемой сетью считается /64. Такое ограничение связано с работой алгоритма автоматического назначения адреса (SLAAC).

Именно по причине, что сеть меньше 64 (65,66... и более), роутер не может назначить себе адрес для интерфейса Home.

https://www.ripe.net/about-us/press-centre/understanding-ip-addressing

Спасибо! С этим понятно. А ipv6 subnet number как вычисляет подсети?

Link to comment
Share on other sites

  • 0

Допустим от провайдера получен префикс 2001:db8:1234:5600:/56. В такой подсети можно разместить 256 сетей размером /64  (64-56 = 8 бит, 2 ^ 8 = 256).

Далее необходимо порезать этот префикс на /64 подсети.

subnet c номером 0 получит подсеть 2001:db8:1234:5600:/64.
subnet c номером 3 получит подсеть 2001:db8:1234:5603:/64.
..
subnet c номером 255 получит подсеть 2001:db8:1234:56ff:/64.

 

Если от провайдера прилетел префикс /64, то такой префикс образует только одну подсеть /64. Subnet 0 полностью завладеет данным префиксом. Остальные subnet ничего не получают.

 

Link to comment
Share on other sites

  • 0

Ага. Понятно.

Но при настройке руками delegated prefix размера /112 (уже понятно что это не совсем корректно) разные number генерировали странные подсети с масками /113, /114, /116 без понятной зависимости.

 

Это наверное некорректное поведение, и делать так вообще не надо.

 

Link to comment
Share on other sites

  • 0

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

В таком случае в логе должны появиться сообщения:

Цитата

Ip6::Subnets: subnet "Default" can not use prefix 2001:db8:61bd:2000::5a:0/112, length 64 required.

@gaaronk Если вам удалось подобрать данные, при которых появляются странные подсети, поделитесь пожалуйста логом или селфтестом.

Link to comment
Share on other sites

  • 0

Вот кусок конфига

subnet создавался после конфигурирования туннеля

interface TunnelSixInFour0
    description "Test Tun"
    ip remote 1.1.1.1
    ipv6 address 2a01:4f8:173:641:0:2:0:3
    ipv6 prefix 2a01:4f8:173:641:0:2:2:0/112
    ipv6 force-default
    up
!
ipv6 subnet Test
    bind Home
    number 4
    mode slaac

Вот лог

May 16 13:06:57 ndmNetwork::Interface::Base: "TunnelSixInFour0": description saved.
May 16 13:06:57 ndmNetwork::Interface::Tunnel6: static remote address saved.
May 16 13:06:57 ipsec05 [KNL] 2a01:4f8:173:641:0:2:0:3 appeared on tun6in4_1 
May 16 13:06:57 ndm Ip6::Prefixes: added static prefix: 2a01:4f8:173:641:0:2:2:0/112.
May 16 13:06:57 ndm Json::Object: AppendMember: duplicate key: "message".
May 16 13:06:57 ndm Opkg::Manager: /opt/etc/ndm/netfilter.d/02_nat.sh: Another app is currently holding the xtables lock. Perhaps you want to use the -w option?
May 16 13:06:57 ndmCore::Syslog: last message repeated 3 times.
May 16 13:06:57 iptables Add GRE rules to table nat
May 16 13:07:52 ndm Ip6::Subnets: created subnet "Test".
May 16 13:07:57 ndm Ip6::Addressing: system failed [0xcffd0055], unable to set ::  to  br0: address not available.
May 16 13:07:57 ndm Ip6::Subnets: interface "Home" bound to subnet "Test".
May 16 13:08:03 ndm Ip6::Addressing: system failed [0xcffd0055], unable to remove ::  from  br0: address not available.
May 16 13:08:03 ndm Ip6::Addressing: system failed [0xcffd0055], unable to set ::  to  br0: address not available.
May 16 13:08:03 ndm Ip6::Subnets: subnet "Test" enabled as SLAAC.
May 16 13:08:05 radvd[4611]version 2.15 started
May 16 13:08:05 radvd[4611]br0 prefix length should be: 64
May 16 13:08:07 ndm Ip6::Addressing: system failed [0xcffd0055], unable to remove ::  from  br0: address not available.
May 16 13:08:07 ndm Ip6::Addressing: system failed [0xcffd0055], unable to set ::  to  br0: address not available.
May 16 13:08:07 ndm Ip6::Subnets: number 4 assigned to subnet "Test".
May 16 13:08:07 radvd[4611]br0 prefix length should be: 64
May 16 13:09:17 ndmCore::Configurator: bye.
May 16 13:09:17 ndmCore::Server: client disconnected.

 

Вот скриншот

591ad04d125bf_2017-05-1601_09_48pm.thumb.png.8b2c2073d29087317f69cbfc035b16b8.png

 

Кстати бага. После задания параметров туннеля, хочешь его отредактировать и получаешь

591ad108c4816_2017-05-1601_13_32pm.thumb.png.8d4de35593aa2e3b7668fea8664bae41.png

 

Надо в поле ввода менять последний 0 на двоеточие, что бы получилось 2a01:4f8:173:641:0:2:2::/112

Edited by gaaronk
  • Thanks 1
Link to comment
Share on other sites

  • 0

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

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

2a01:4f8:173:641:0:2:2:0/112 - не проходит валидацию
2a01:4f8:173:641:0:2:2::/112 - проходит валидацию

Данный нюанс запомним, но исправление сделаем позже.


@gaaronk Спасибо!

  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...