Es geht weiter, der erste ☕ und ich bin mit der Lösung nicht so richtig zufrieden, also suchen.
Als erstes habe ich heute Morgen ein frisches SD-Karten Image mit Docker von FreindlyWrt genommen und auf meinem Test NanoPi R5S installiert. Dort mal die Config angeschaut um zu sehen, ob der Eintrag standardmäßig gesetzt ist. Doch dort taucht dann einmal eine ganz ander Config auf 🙄
# The following settings require a restart of docker to take full effect, A reload will only have partial or no effect:
# bip
# blocked_interfaces
# extra_iptables_args
# device
config globals 'globals'
# option alt_config_file '/etc/docker/daemon.json'
option enable '1'
option data_root '/mnt/nvme_part2/docker'
option log_level 'warn'
option iptables '1'
#list hosts 'unix:///var/run/docker.sock'
# option bip '172.18.0.1/24'
# option fixed_cidr '172.17.0.0/16'
# option fixed_cidr_v6 'fc00:1::/80'
# option ipv6 '1'
# option ip '::ffff:0.0.0.0'
# list dns '172.17.0.1'
# list registry_mirrors 'https://<my-docker-mirror-host>'
list registry_mirrors 'https://hub.docker.com'
option remote_endpoint '0'
# option bridge 'br-container'
# Docker ignores fw3 rules and by default all external source IPs are allowed to connect to the Docker host.
# See https://docs.docker.com/network/iptables/ for more details.
# firewall config changes are only additive i.e firewall will need to be restarted first to clear old changes,
# then docker restarted to load in new changes.
config firewall 'firewall'
option device 'docker0'
list blocked_interfaces 'wan'
option extra_iptables_args '--match conntrack ! --ctstate RELATED,ESTABLISHED' # allow outbound connections
Das interessiert uns jetzt
list blocked_interfaces 'wan'
option extra_iptables_args '--match conntrack ! --ctstate RELATED,ESTABLISHED' # allow outbound connections
Wenn ich das jetzt alles richtig verstehe, muss WAN geblockt sein, weil sonst der Docker Host offen im Netz steht (Hierbei bin ich mir nicht 100% sicher)
Die zweite Zeile ist eine iptables Regel, die es den Containern dann ermöglicht das Internet zu erreichen.
Das habe ich jetzt so eingestellt und getestet.
root@b9ffae24913a:/# ping 1.1.1.1
PING 1.1.1.1 (1.1.1.1): 56 data bytes
64 bytes from 1.1.1.1: icmp_seq=0 ttl=57 time=17.151 ms
64 bytes from 1.1.1.1: icmp_seq=1 ttl=57 time=16.553 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=57 time=20.630 ms
64 bytes from 1.1.1.1: icmp_seq=3 ttl=57 time=13.948 ms
^C--- 1.1.1.1 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 13.948/17.071/20.630/2.382 ms
root@b9ffae24913a:/# ping google.de
PING google.de (142.250.185.195): 56 data bytes
64 bytes from 142.250.185.195: icmp_seq=0 ttl=58 time=23.797 ms
64 bytes from 142.250.185.195: icmp_seq=1 ttl=58 time=16.953 ms
64 bytes from 142.250.185.195: icmp_seq=2 ttl=58 time=19.441 ms
^C--- google.de ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max/stddev = 16.953/20.064/23.797/2.829 ms
Ich hoffe mal das ich diese Thema jetzt zu den Akten legen kann.
Wenn was falsch ist, bitte hier kommentieren, damit ich das ändern kann.