OpenVPN niedrige Bandbreite

  • Grüßt euch,


    ich habe mir auf einem VPS 200 G8 einen OpenVPN Server mit Pihole eingerichtet, welcher derzeit von nur einem Client gleichzeitig verwendet wird. Funktioniert auch ohne Probleme. Allerdings ist die Bandbreite von VPN Client zum Server sehr gering. ?


    Laut iperf ist die Bandbreite am Server in Ordnung:

    Code
    [ ID] Interval           Transfer     Bandwidth       Retr
    ...
    [SUM]   0.00-10.00  sec  1.20 GBytes  1.03 Gbits/sec  17159             sender
    [SUM]   0.00-10.00  sec  1.16 GBytes   999 Mbits/sec                  receiver

    Auch an meinem heimischen DS Lite Anschluss ist die Bandbreite wie sie sein sollte (~190Mbit/s mit 200k Leitung).

    Im VPN Netz sinkt die Bandbreite allerdings auf ~70 Mbit/s.


    Die Auslastung des VPS ist verschwindend gering:

    Code
    $ uptime
    20:58:47 up  5:31,  1 user,  load average: 0,03, 0,02, 0,00
    Code
    $ free -h
                  total        used        free      shared  buff/cache   available
    Mem:           1,9G        123M        1,4G        7,8M        442M        1,8G
    Swap:            0B          0B          0B


    Ich habe etwas mit dem MTU-Wert herumprobiert, allerdings ohne Erfolg.


    Hat jemand eine Idee wie sich das lösen lässt?

  • Hmm. Hast du mal die CPU Last beobachtet? Der gesamte Traffic muss ja ver- und entschlüsselt werden, das braucht gut CPU Ressourcen.


    Und von denen hast du ja leider beim VPS 200 G8 nicht allzu viel... vielleicht gibt die vCPU halt einfach nicht mehr her.



    EDIT: Ist zwar ein bisschen Security by Obscurity, aber ich empfehle trotzdem ganz gerne, solche Dienste abseits des Default Ports laufen zu lassen. Also sofern möglich - muss man auch nicht machen, kann man auch lassen.

    "Denn der radikalste Zweifel ist der Vater der Erkenntnis."

    -Max Weber

  • Ich habe mit top mal nachgesehen, während ich etwas Größeres heruntergeladen habe und dabei einen Stream auf twitch laufen lasse. Da ist die Auslastung aber auch nie höher als 50% und pendelt meist um die 30%-40%

  • Was werden denn für CPU Flags durchgereicht?

    Meinst du hier hier?

    Code
    $ grep flags /proc/cpuinfo
    flags           : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pse36 clflush mmx fxsr sse sse2 syscall nx lm rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt aes xsave hypervisor lahf_lm cpuid_fault invpcid_single pti ssbd ibrs ibpb invpcid md_clear
  • Hatten wir genau dieses Thema mit dem kleinen VPS + OpenVPN nicht schon zigmal?


    Auf jeden Fall ist die Lösung WireGuard ;)

    "Security is like an onion - the more you dig in the more you want to cry"

  • Mit Wireguard habe ich mich bisher noch nicht beschäftigt.

    Ich bin gerade im Moment dabei. Es ist auf jeden Fall wesentlich einfacher als OpenVPN in der Konfiguration, auch wenn es mMn am Anfang etwas "abstrakt" wirkt.


    Probier es ruhig mal. Und wenn du Probleme hast, kannst du ja uns hier fragen! :)

    "Denn der radikalste Zweifel ist der Vater der Erkenntnis."

    -Max Weber

  • Verbindest du dich mit dem Tunnel denn mit IPv4 oder IPv6?

    Ich würde hier auf jeden Fall IPv6 nehmen, um auszuschließen, dass das CGNAT Gateway überlastet ist.


    Weiterhin haben die Kabelanbieter meiner Erfahrung nach ein paar Drosselprobleme mit UDP. Erfahrungsgemäß bringt TCP hier mehr Durchsatz.

  • Ich habe mit top mal nachgesehen, während ich etwas Größeres heruntergeladen habe und dabei einen Stream auf twitch laufen lasse. Da ist die Auslastung aber auch nie höher als 50% und pendelt meist um die 30%-40%

    Wie viele Kerne hat denn der kleine? OpenVPN ist nicht Multithreadfähig und lastet deshalb nur einen CPU-Kern aus. Wenn du zwei hast, wird die Auslastung nicht über 50% gehen, der Server ist dann aber am Anschlag ;)

    Wie gesagt, wenn man nur einen Nutzer hat und Geschwindigkeit wichtig ist, ist momentan Wireguard das Tool der Wahl. Man sollte sich aber vorher einlesen, da es keine klassische Client<->Server Anwendung ist und einem da manches merkwürdig vorkommt, wenn man das erwartet. Soll heißen: Es ist kein 1:1 Ersatz für OpenVPN, erfüllt aber zu 90% die gleichen Nutzeranforderungen.

  • Ich bin gerade im Moment dabei. Es ist auf jeden Fall wesentlich einfacher als OpenVPN in der Konfiguration, auch wenn es mMn am Anfang etwas "abstrakt" wirkt.


    Probier es ruhig mal. Und wenn du Probleme hast, kannst du ja uns hier fragen! :)

    Ich setze Wireguard inzwischen ausschließlich ein. Es est, so mein Eindruck, auch performanter udn wenn mal ein Node ausfällt, ist eben nur dieser weg, aber nicht im schlimmsten Fall das ganze Netzwerk. Bei Fragen: fragen :)