Avenga Posted February 8 Share Posted February 8 Hallo, ich verwende den TeamSpeak & Nginx-Proxy-Manager-Official Docker. Netzwerktyp: Bridge Alle die sich bei mir per IPv6 einloggen, sehe ich im TeamSpeak als fd17::1, genauso wie alle Anfragen an Nginx (Log). Frage: kann man irgendwo sehen (z.B. per Konsole) wer dahinter steckt, also die IPv6 Adresse der Nutzer? Die eingehenden IPv6 werden ja vermutlich per IP-Masquerading übersetzt in das docker0 Netzwerk. Quote Link to comment
MAM59 Posted February 9 Share Posted February 9 Der Fehler liegt bei Dir. Du hast den NPM nicht im HOST Modus angebunden, somit bekommt er nur ge-nattete V6 Adressen (eben diese fd17::1). Konfiguriere den NPM Docker um auf Host, dann kommen auch die "richtigen" Adressen durch. WARNUNG: NPM MUSS auf den Ports 80 und 443 laufen. Die sind normalerweise von der UNRAID GUI belegt. Diese musst Du VORHER auf andere Ports umkonfigurieren (Einstellungen->Verwaltung). Warnung 2: es kann sein, dass die derzeitigen Zertifikate durch die Umstellung ungültig werden oder Proxy Hosts nicht mehr funktionieren. Im schlimmsten Fall musst Du alle löschen und neu in NPM einrichten. Mach Dir also ne Liste, damit Du keinen vergisst. Warnung 3: manche Versionen von NPM funktionieren nicht im HOST Modus. Ich war es irgendwann leid mit dem Leid und date NPM schon ewig nicht mehr ab. Die Version jc21/nginx-proxy-manager:2.9.22 funktioniert einwandfrei, keine Ahnung was die danach rumgebastelt haben und es damit verbockt haben. Ich bleib bei 2.9.22. Quote Link to comment
Avenga Posted February 9 Author Share Posted February 9 ich betreibe noch eine VM mit einem richtigen Webserver (nicht Reverseproxy), der nach außen hin Port 80 & 443 offen hat. Der Reverse Proxy soll absichtlich auf anderen Ports laufen, das ist von mir so gewollt. Auch will ich die Docker im bridge belassen, u.a. damit ich die Ports nach außen frei wählen kann. Das hat seine Richtigkeit so. Die Frage wäre nur ob / wo man auf den Dienst zugreifen kann, der die IPv6 übersetzt ins docker Netzwerk. Quote Link to comment
Mainfrezzer Posted February 10 Share Posted February 10 Mit dem Bridge-Netzwerk unmöglich. Entweder Teamspeak im host-Modus laufen lassen(oder natürlich mit separater IP) oder die bogus Docker IPs akzeptieren. NPM könnte noch funktionieren, wenn die header gesetzt sind. Quote Link to comment
sonic6 Posted February 10 Share Posted February 10 Mal ne super dämliche Frage in der Raum geworfen, da ich aus der SWAG Ecke komme: Nutzt ihr per NPM das nginx Streaming Modul oder wie soll Teamspeak über nen RP laufen? Normalerweise ist doch NPM (oder auch SWAG) nur für http/s Traffic, alles andere läuft über nen gesonderten Port. Außer man nutzt natürlich das nginx steaming? 1 Quote Link to comment
Solution MAM59 Posted February 10 Solution Share Posted February 10 (edited) 19 hours ago, Avenga said: Die Frage wäre nur ob / wo man auf den Dienst zugreifen kann, der die IPv6 übersetzt ins docker Netzwerk. Nein, der ist fest und tief in der Docker Runtime vergraben. Docker ist bei IPV6 noch eine ziemliche Diaspora. Die jetzige "Lösung" ist nur ein "geht so" Patch. Noch weit von richtiger Implementation entfernt. Beim Dockerdesign wurde das gar nicht mit beachtet und nur halbherzig später draufgepfropt. IPV6 und NAT, da schaudert es mich... Edited February 10 by MAM59 1 Quote Link to comment
Avenga Posted February 10 Author Share Posted February 10 (edited) Was mich wundert ist, dass der Erbauer des "Nginx-Proxy-Manager-Official" Herr mgutt in seinem Tutorial schreibt, man müsse für IPv6 Nutzung unbedingt das Host Netzwerk nutzen: Quote I tried everything, but br0/custom isn't reliable as its not possible to define a fixed IPv6 without passing the IPv6 prefix and if your provider assigns a new IPv6 prefix, the container is offline and stays offline until we manually change the containers IPv6. And changing the IPv6 alone does not work as the "old" IPv4/IPv6 combination is internally reserved from the docker service. So its not only needed to change the IPv6 of the container, we additionally need to restart to entire Docker service itself. Deutsch: Ich habe alles versucht, aber br0/custom ist nicht zuverlässig, da es nicht möglich ist, eine feste IPv6 zu definieren, ohne das IPv6-Präfix zu übergeben, und wenn Ihr Anbieter ein neues IPv6-Präfix zuweist, ist der Container offline und bleibt offline, bis wir die IPv6 des Containers manuell ändern . Und eine Änderung der IPv6 allein funktioniert nicht, da die „alte“ IPv4/IPv6-Kombination intern vom Docker-Dienst reserviert ist. Es ist also nicht nur erforderlich, die IPv6 des Containers zu ändern, sondern wir müssen auch den gesamten Docker-Dienst selbst neu starten. Ich hatte eigentlich nur IPv4 auf dem Schirm und zufällig IPv6 getestet, was dann klappte, dann habe ich mir einen neuen v6 Prävix geholt und es ging immer noch (so wie TeamSpeak auch) - im Gegensatz dazu was Herr mgutt schreibt. Ich finde den Bridge Modus für mich sehr angenehm, habe so Zugriff von außen per IPv4 auf Port 40xxx, per IPv6 auf Port 50xxx und TeamSpeak 60xxx, was ich jederzeit ändern kann. Werde ich auch so lassen, auch wenn ich dann die IPv6 Adressen dann nicht sehen kann. Im Host Netzwerk Modus kann man die Ports für IPv6 leider nicht ändern, was für mich ein nogo ist. 2 hours ago, sonic6 said: Nutzt ihr per NPM das nginx Streaming Modul oder wie soll Teamspeak über nen RP laufen? die Frage verstehe ich nicht, was hat NPM mit TS zu tun? Die sind bei mir völlig unabhängig voneinander. TS läuft bei mir schon wesentlich länger. Edited February 10 by Avenga Quote Link to comment
MAM59 Posted February 10 Share Posted February 10 2 minutes ago, Avenga said: Herr mgutt in seinem Tutorial schreibt, man müsse für IPv6 Nutzung unbedingt das Host Netzwerk nutzen. Zur Zeit der Erstellung des Tutorials war das auch so. Da konnten Docker noch gar kein V6 Quote Link to comment
alturismo Posted February 10 Share Posted February 10 5 minutes ago, Avenga said: die Frage verstehe ich nicht, was hat NPM mit TS zu tun? Die sind bei mir völlig unabhängig voneinander. TS läuft bei mir schon wesentlich länger. wahrscheinlich aufgrund deines Eingangsposts ... ich war auch verwundert und dachte mir ... naja ... On 2/8/2024 at 9:30 PM, Avenga said: ich verwende den TeamSpeak & Nginx-Proxy-Manager-Official Docker. Netzwerktyp: Bridge implziert ja das TS mit NPM läuft (was ja wohl nicht der Fall ist) 1 Quote Link to comment
MAM59 Posted February 15 Share Posted February 15 On 2/10/2024 at 11:41 AM, alturismo said: On 2/8/2024 at 9:30 PM, Avenga said: ich verwende den TeamSpeak & Nginx-Proxy-Manager-Official Docker. Netzwerktyp: Bridge implziert ja das TS mit NPM läuft (was ja wohl nicht der Fall ist) NPM erlaubt auch Streams zu forwarden, aber ob das mit diesem Teamspeak funktioniert, wage ich etwas zu bezweifeln. Grundsätzlich gilt aber, dass NPM im Host Modus betrieben werden MUSS, damit V6 Adressen durchgereicht werden können. Streams mit NPM habe ich nie ausprobiert. (Hier ist streamfreie Zone :-))) ) Quote Link to comment
sonic6 Posted February 15 Share Posted February 15 1 hour ago, MAM59 said: Host Modus betrieben werden MUSS, damit V6 Adressen durchgereicht werden können. Zumindest bei SWAG geht das auch per eth0 oder cloudflared tunnel. aber das ist ein anderes thema. Quote Link to comment
Avenga Posted February 19 Author Share Posted February 19 On 2/15/2024 at 10:10 AM, MAM59 said: Grundsätzlich gilt aber, dass NPM im Host Modus betrieben werden MUSS, damit V6 Adressen durchgereicht werden können. es funktioniert über NAT auch so einwandfrei, demnach kann von MUSS keine Rede sein oder was meinst du mit MUSS ? Quote Link to comment
Recommended Posts
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.