Am un server cu adresă IPv4 și subrețea IPv6 /64 (să spunem 2001:db8::/64
), ambele publice. Serverul în sine are următoarea adresă IPv6: 2001:db8::1/64
. Poarta de acces este fe80::1
(ceea ce provoacă probleme cu docker/podman, deoarece nu se află în aceeași subrețea).
Scopul meu este să creez un container docker/podman (server WWW, de exemplu) cu propriul său IPv6 public (să spunem 2001:db8::2/64
). Din înțelegerea mea, o astfel de configurare are nevoie de rețea macvlan. Deci, configurația ar arăta după cum urmează:
Am reușit să îndeplinesc parțial această configurare folosind rețeaua bridge și următoarea comandă:
sudo podman network create --subnet 2001:db8::/64 --ipv6 mynet
Containerul din această rețea era accesibil de pe Internet prin IP-ul corect (2001:db8::2
), dar IP-ul său public (pentru http, ping etc.) a fost greșit - așa a fost 2001:db8::1
, ceea ce este pe deplin de înțeles atunci când utilizați rețeaua bridge.
Lucrurile se complică când am încercat să folosesc macvlan, prima problemă a fost gateway-ul care trebuie setat fe80::1
. docher
a refuzat să creeze o astfel de rețea cu eroarea „nicio subrețea potrivită pentru gateway-ul fe80::1”. podman
creați cu succes rețeaua folosind următoarea comandă:
sudo podman network create -d macvlan --subnet 2001:db8::/64 --gateway fe80::1 --ipv6 -o parent=eth0 mynet
Din păcate, un container din această rețea nu are conectivitate în nicio direcție, chiar dacă are specificate IP-ul și gateway-ul corect.
Serverul funcționează pe Ubuntu, cu rutarea IP activată în kernel.
Orice idee despre cum ar putea fi realizată această configurație ar fi foarte apreciată. Mulțumiri.