Jump to content
  • 0

Не работает IPv6 Router Advertisement при использовании ULA подсети


Maxpain

Question

Приветствую.

Я являюсь разработчиком одного VPN-сервиса, который работает исключительно на IPv6 и использует подход NAT64/DNS64 для доступа к зарубежным сервисам, таким как ChatGPT, Netflix, Spotify и т.д.
На стороне WireGuard сервера настроен специальный DNS64 сервер, который для заблокированных сайтов вместо настоящих IPv4 адресов возвращает приватные IPv6 адреса из подсети 64:ff9b::/96, которые на стороне клиента должны роутиться в туннель.

Если провайдер пользователя не поддерживает IPv6 то в качестве альтернативы обычно используются ULA IPv6 адреса. Роутер анонсирует что-то вроде fd00:64::/64 и клиенты назначают себе EUI-64 адреса с помощью SLAAC.

Мне удалось настроить SLAAC на кинетике, но проблема в том, что Keenetic не анонсирует себя как router в ICMPv6 рассылках (ttl = 0), из-за чего клиенты не получают default gateway, хотя EUI-64 адрес конфигурируют. Полагаю проблема в том, что кинетик видит что у провайдера нет IPv6-адреса и поэтому не сообщает клиентам о маршруте по умолчанию ::/0

(config)> show ipv6 subnets
           subnet: 
                 name: Default
            interface: Home
             prefixes: 
                     prefix: fd21:ccfe:9581::/64
                  interface: 
             valid-lifetime: infinite
         preferred-lifetime: infinite
                     global: no


Как организовать доступ из ULA сети к 64:ff9b::/96, которая находится за wg туннелем?

Судя по tcpdump RA сообщения приходят, но имеют router lifetime 0s.

16:56:53.138067 IP6 (flowlabel 0xf22a7, hlim 255, next-header ICMPv6 (58) payload length: 80) fe80::52ff:20ff:fe9e:99ed > ip6-allnodes: [icmp6 sum ok] ICMP6, router advertisement, length 80
    hop limit 64, Flags [other stateful], pref medium, router lifetime 0s, reachable time 0ms, retrans timer 0ms
      prefix info option (3), length 32 (4): fd21:ccfe:9581::/64, Flags [onlink, auto], valid time 4294964084s, pref. time 4294964084s
        0x0000:  40c0 ffff f374 ffff f374 0000 0000 fd21
        0x0010:  ccfe 9581 0000 0000 0000 0000 0000
      rdnss option (25), length 24 (3):  lifetime 600s, addr: fe80::52ff:20ff:fe9e:99ed
        0x0000:  0000 0000 0258 fe80 0000 0000 0000 52ff
        0x0010:  20ff fe9e 99ed
      source link-address option (1), length 8 (1): 50:ff:20:9e:99:ed
        0x0000:  50ff 209e 99ed

 

Edited by Maxpain
Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Кажется я нашёл обновление, из-за которого я не могу добиться желаемого результата

Цитата

Disabled global scope in IPv6 ULA prefix announcement to prevent clients from using local addresses as the default connection and unavailability by KeenDNS name. [NDM-2993]

https://support.keenetic.ru/eaeu/ultra/kn-1811/en/32140-keeneticos-4-1.html

А можно как-то добавить опцию в CLI, которая бы позволила вернуть старое поведение? Допустим чтобы можно было флаг global у префикса самому определять.

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.

  • Recently Browsing   0 members

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