Próbuję skonfigurować wiele kontenerów LXC na hoście, każdy z własnymi publicznymi statycznymi adresami IP.
Na moim hoście działa najnowsza wersja Ubuntu. Ma pojedynczy interfejs sieciowy o nazwie eth0. Statyczne adresy IP są pingowane z Internetu i noszą nazwy eth0: 210, eth0: 211 ... Liczby po dwukropku są najmniej znaczącym bajtem adresów. Oprócz tych interfejsów mam konfigurację br0 na publicznym adresie IP hosta. Istnieją również interfejsy lo, veth2LPP9A i lxcbr0. Lxcbr0 ma adres prywatnego adresu IP.
Interfejs host / etc / network / wygląda następująco:
auto br0
iface br0 inet static
bridge_ports eth0
bridge_fd 0
[...]
Do tej pory korzystałem z różnych źródeł online, w tym z kontenerów Bridging LXC do hostowania eth0, aby mogli mieć publiczny adres IP, który pomoże mi to skonfigurować.
Plik konfiguracyjny kontenera zawiera:
lxc.network.type = veth
lxc.network.link = br0
Usunąłem z tego pliku statyczną konfigurację lxc.network.ipv4, ponieważ spowodowała problemy. Kiedy uruchomiłem lxc-ls - fantazyjne w tej konfiguracji, zobaczyłem dwa razy ten sam publiczny adres IP na wyjściu. Ponadto bałagan z konfiguracją podsieci / etc / network / interfaces kontenera.
Mówiąc o pliku interfejsów kontenera, wygląda to trochę tak:
auto eth0
iface eth0 inet static
address [...]
netmask 255.255.255.255
#gateway [...]
dns-nameservers 8.8.8.8
post-up route add [...] dev eth0
post-up route add default gw [...]
post-down route del [...] dev eth0
post-down route del default gw [...]
Musiałem skomentować bramę i dodać polecenie trasy dodaj do tego pliku. W przeciwnym razie uruchomienie kontenera zajmie kilka minut.
Wszystkie pliki / proc / sys / net / bridge / bridge-nf- * na hoście są ustawione na 0. Wartość / proc / sys / net / ipv4 / ip_forward wynosi 1.
Problem w tym, że chociaż „route -n” kontenera wygląda tak, jak powinno, nie mogę pingować z kontenera. SSHing do adresu IP kontenera łączy mnie z hostem.
EDYCJA: Usunięcie statycznego adresu IP kontenera z hosta pomogło, ale teraz pojawia się nowy błąd. Próba pingowania kontenera z hosta powoduje przekierowanie HostFrom, New nexthop. Pakiety wielokrotnie przechodzą od bramki do hosta. Uruchomienie traceroute z hosta pokazuje, że pierwszy przystanek znajduje się w bramie. Wszystkie pozostałe trasy to * * *. Mam ten sam problem niezależnie od tego, czy kontener jest online, czy nie.