Puncte:1

container docker/podman cu IPv6 public

drapel br

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ă:

poza1

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.

user1686 avatar
drapel fr
[..ceea ce cauzează probleme cu docker/podman, pentru că nu se află în aceeași subrețea] â Nu trebuie să fie în _aceeași_ subrețea atâta timp cât este în _orice_ subrețele tale (și fiecare gazdă este în fe80 ::/64 subnet), așa că docker/podman ar trebui să o accepte. [..ceea ce este perfect de înțeles atunci când se folosește o rețea bridge] â Asta de fapt _nu sună deloc ca o rețea bridge_ pentru mine. Nu știu ce înseamnă un „pod” în lumea Docker, dar nu așa funcționează podurile normale; nu ar trebui să NAT pachetele IP.
user1686 avatar
drapel fr
Oricum: 1) Ar putea furnizorul dvs. de rețea să vă atribuie un prefix rutat, de ex. un /56 direcționat către gazda dvs.? 2) Docker&podman necesită un /64 sau ați putea configura o rețea de containere cu un prefix mai lung (de exemplu, un /96)? În loc de macvlans, Proxy-NDP folosind ndpresponder ar putea face ca acest lucru să funcționeze în general, dar nu știu de unde să încep cu instrumentele container.
Puncte:0
drapel br

Rezolvat. Se pare că dimensiunea prefixului a fost o cheie. Am folosit /64, dar când am trecut la altele mai lungi, cum ar fi /112, totul a început să funcționeze. În plus, nu am avut nevoie să folosesc macvlan, ci doar un simplu bridge.

Ron Maupin avatar
drapel us
Utilizarea altor dimensiuni de rețea decât `/64` poate cauza probleme cu IPv6. Da, ar trebui să faci un bridge, deoarece toate dispozitivele sunt în aceeași rețea.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.