Sonntag, 27. Juni 2021

OpenVPN warnt MULTI: packet dropped due to output saturation (multi_process_incoming_tun)

Fri Jun 25 21:10:49 2021 us=113808 user1/1.2.3.4:7609 MULTI: packet dropped due to output saturation (multi_process_incoming_tun)

Es gibt offenbar zwei Lösungen für das Problem:

  • UDP: Das VPN anstelle über TCP mittels UDP aufbauen (aufwändig; erfordert den Rollout einer neuen Konfigurationsdatei auf alle Clients).
  • TCP Queue Limit erhöhen: Serverseitig fügt man in die Serverkonfiguration die Zeile tcp-queue-limit 256 ein und startet den Server neu (Quelle)

Letzteres scheint bis jetzt gut zu klappen.

Tags: , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 27. Juni 2021

Mit der upc App über Mobilfunk-Roaming aus dem Ausland fernsehen

Ein Kollege hat mich kürzlich gefragt, wieso er trotz des von mir geliehenen VPN-Zugangs im Ausland mit der upc App keine aufgezeichnete Sendung schauen kann.

Er war im 4G-Netz des Landes eingebucht und hatte VPN aktiviert. Doch die upc App sagte ihm:

Nicht verfügbar

Dieses Video ist ausserhalb deiner Region nicht verfügbar

Komisch. Wie zum Teufel wusste die App, dass der Kollege im Ausland war — auf IP-Ebene kommunizierte der Kollege nämlich mit einer 100-prozentig Schweizerischen IP? Daran konnte es nicht liegen.

Mir schwante Böses, und bat ihm, unter Settings > Privacy > Location Services der upc App die Rechte zu entfernen, den Standort zu eruieren. Gesagt, getan, worauf die App folgendes anzeigte:

Ich war schon mit meinem Latein am Ende, als ich den Text noch einmal genau las: „Um ein Video über die mobile Netzwerkverbindung abzuspielen, …“.

Ich bat den Kollegen, auf einem zweiten Telefon den Hotspot zu aktivieren, sein Telefon damit zu verbinden, und dann VPN zu starten.

Dann klappte es und er konnte die aufgezeichnete Sendung streamen. Aus Sicht seines Telefones war er nämlich nun mit einem WLAN verbunden. Und upc scheint bei dieser Verbindungsart den Standort des Telefons nicht abzufragen.

Tags: , , , , , , , , , , ,
Labels: Apple, IT, Medien, Schweiz

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 20. Juni 2021

Alle zwei Jahre dasselbe mit unserer Nati …

2006

Wie immer wird unser Team auch dieses Jahr verbissen kämpfen müssen. Wenn wir weiterkommen, dann nicht auf Grund der (nicht existenten) Stärke als Fussballernation, sondern weil ungefähr 300 Faktoren eingewirkt haben, die nichts mit unserer Mannschaft zu tun haben. Also im Stile von „Wenn der Zweite in dem Spiel vier Goals macht, der Viertplatzierte aber mindestens ein Unentschieden herausholt und – ganz wichtig – Beni Turnheer im dritten Spiel in der vierzehnten Minute kurz das Bewusstsein verliert, ja dann kommen wir weiter“.

Für die von mir bisher erlebte Fussballgeschichte der Schweiz war es prägend, dass es nie einfach so „flutschte“, dass unsere Nati nie derart souverän und überlegen auf dem Feld stand, dass der Endsieg in keiner Minute angezweifelt werden konnte.

Quelle: Prognose Frankreich – Schweiz

2021

Die Schweiz gewinnt gegen die Türken und Wales verliert gleichzeitig gegen Italien. Dann stünden beide Teams bei 4 Punkten und das Torverhältnis würde darüber entscheiden, wer als Gruppenzweiter weiterkommt. Derzeit hat Wales (3:1) gegenüber der Schweiz (1:4) deutlich die Nase vorn. Das bedeutet, die Schweiz müsste genügend hoch gewinnen bzw. Wales genügend hoch verlieren.

Die Schweiz gewinnt gegen die Türkei und Wales punktet gegen Italien. In diesem Fall kann die Schweiz nur noch als Gruppendritter die Qualifikation schaffen. Ab da wird es kompliziert. Von den restlichen 5 Gruppen müsste die Schweiz 2 Drittplatzierte hinter sich lassen, um sich als einer der 4 besten Gruppendritten zu qualifizieren.

Quelle: Szenarien vor Türkei-Spiel: So schafft es die Schweizer Nati noch in die Achtelfinals

Tags: , , , , , , , ,
Labels: Medien, Schweiz, Sport

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 16. Juni 2021

CO2-Ausstoss der Schweiz im Vergleich zur Welt

2017 hat die Schweiz 47.96 Millionen Tonnen CO2 ausgestossen (Quelle). 2016 machte das 4.1 Tonnen pro Kopf aus (Quelle).

Gewisse Leute fokussieren ausschliesslich auf den Pro-Kopf-Ausstoss, was ich in der gesamten Diskussion aber als zu einäugig empfinde. Deren Argument lautet dann weniger „Senken wir den weltweiten CO2 nachhaltig, und vor allem spürbar“, sondern viel eher „Was gibt uns Schweizern das Recht, so viel mehr CO2 auszustossen als ein Einwohner in Land X?“.

Zum Vergleich: Spitzenreiter China stiess 2017 10’400 Millionen Tonnen CO2 aus (29.7 Prozent des weltweiten Gesamtausstosses, und das 216-fache der Schweiz), gefolgt von den USA (5’320 Mio. T.; 13.9%; 110-fache) und Indien (2’300 Mio. T.; 6.9%; 48-fache) (Quelle).

Die am letzten Sonntag zur Abstimmung stehende Gesetzesvorlage hätte eine Reduktion des CO2-Ausstosses auf 27 Millionen Tonnen CO2 bis 2030 verlangt (Quelle). Dies käme fast einer Halbierung unseres Ausstosses gleich. Die Reduktion von knapp 20 Millionen Tonnen CO2 im Jahr entspräche dem CO2 Ausstoss von China — an weniger als einem einzigen Tag. (Um genau zu sein: China stösst pro Tag 28 Millionen Tonnen CO2 aus …) Dies wäre also sprichwörtlich nur ein Tropfen auf den heissen Stein gewesen.

PS: Und wenn Hans-Werner Sinn mit seinem „grünen Paradoxon“ Recht hat, hätten einfach ein oder mehrere andere Länder dieser Welt die von uns „eingesparten“ 20 Millionen CO2 in die Luft geblasen …

Tags: , , , ,
Labels: Schweiz

Keine Kommentare | neuen Kommentar verfassen

Montag, 14. Juni 2021

URLs für Track & Trace-Nummern der Schweizerischen Post (SwissPost)

In den nachfolgenden URLs bitte 99... mit der Track & Trace-Nummer ersetzen:

https://service.post.ch/ekp-web/ui/entry/search/99...
https://www.post.ch/track?formattedParcelCodes=99...

Tags: , , , , ,
Labels: Schweiz

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 6. Juni 2021

PHP-Scripts mit Xdebug profilen

Einleitung: Xdebug: Documentation » Profiling

Hierzu muss man PHP Xdebug auf seinem System installiert haben. Anschliessend lässt man ein PHP-Script folgendermassen laufen:

$ php -d xdebug.profiler_enable=On index.php

Nachdem das Script durchgelaufen ist, findet sich unter /tmp eine Datei im Namensformat cachegrind.out.%ZUFALLSNUMMER%. Bei mir war die Datei satte 140MB gross.

Doch was man nun damit? Zuerst einmal auf den Mac kopiert, dann mit qcachegrind (eigentlich: kcachegrind) analysiert. Dieses installiert man sich mit MacPorts:

# port install qcachegrind

Mittels Spotlight sucht man nach „qcachegrind“ und startet die präsentierte App. Man wählt cachegrind.out.%ZUFALLSNUMMER% und erhält folgendes zu Gesicht:

Tags: , , , , , , ,
Labels: Web

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 27. Mai 2021

EdgeRouter ER-X wird mit aktiviertem hwnat bei Facetime-Anrufen instabil

Seit einiger Zeit fällt mir auf, dass FaceTime Video-Anrufe von mir (Fiber7, 1 Gbit/s symmetrisch) zu einem Bekannten (upc, mit ein paar 100 MBit/s up- and down, best effort) ruckeln und stocken.

Die Probleme beginnen wenige Sekunden nach der Etablierung des Anrufs. Symptome:

  • Pings von mir aus an die öffentliche IP-Adresse des Bekannten liegen normalerweise im 20-30ms Bereich. Während Facetime-Anrufen ist das in ca. 60-70 Prozent der Fälle weiter so, dann aber kommt es vor, dass die Latenz mehrerer aufeinanderfolgenden Pakete auf bis zu 600ms hochschnellt. Es kommt auch immer wieder vor, dass Ping-Pakete komplett verloren gehen.
  • Smokeping auf die öffentliche IP-Adresse des Bekannten zeigt einen besorgniserregenden Packet Loss.
  • Der Endpunkt eines OpenVPN-Tunnels beim Bekannten vermeldet zur selben Zeit wiederholt folgende Warnungen:
    Thu May 27 21:44:10 2021 Authenticate/Decrypt packet error: bad packet ID (may be a replay): [ #33668492 / time = (1621559394) Fri May 21 03:09:54 2021 ] -- see the man page entry for --no-replay and --replay-window for more info or silence this warning with --mute-replay-warnings

Screenshots:

Die (triviale) Lösung: Auf dem EdgeRouter ER-X mit Firmware v1.10.0 muss das sog. Hardware Offloading (kurz hwnat) deaktiviert werden:

Offizielle Anleitung (CLI), aber dasselbe geht auch über das GUI und den Config Tree: System > Offloading > hwnat = disable.

Das Problem ist im Support-Eintrag Connecting to wireguard on edgerouter messes up outgoing UDP packets #23 beschrieben, mitsamt der Lösung:

If you use a Mediatek device with hwnat your UDP packages might get lost. Currently the only solution is to disable hwnat


UDP re-order problem


With hwnat disabled, the wg0 interface works great and the ER-X routes all my internet traffic out of it just fine, although CPU has much more overhead.

As soon as I enable hwnat, I start seeing problems, but only in certain scenarios, not all. For example, with hwnat disabled, I can use OpenVPN as a client on a local machine. Thus that OpenVPN connection gets routed out through the wg interface first, then on to server. The OpenVPN server shows the endpoint IP of the server ER-X wg is connected to as the OpenVPN client’s IP, not my ISP IP (what I want). As soon as I enable hwnat, this breaks. I can still make the initial outgoing connection and bring up the OpenVPN tunnel, but packets get dropped so that OpenVPN through the wg interface is unusable with hwnat enabled.

Also noticed Apple FaceTime is broken when hwnat is enabled with wg interface. Lots of disconnects and moments of me hearing them but them not hearing me. Again, disabling hwnat fixes it instantly, but again, at the cost of CPU.

Nachtrag

Das Problem ist leider immer noch nicht gelöst. Zuerst einmal scheint die Deaktivierung von hwnat über das Web GUI erst dann zu greifen, wenn man den Router neu startet. Bei mir zeigte das GUI „disabled“ an, doch auf der Kommandozeile erschien folgendes:

$ configure
[edit]
user@ROUTER# show system offload hwnat
 hwnat disable

$ show ubnt offload
IPSec offload module: loaded

HWNAT offload module: loaded

Traffic Analysis    :
  export    : disabled
  dpi       : disabled
    version       : 1.354

Nach dem Neustart dann:

$ show ubnt offload
IPSec offload module: not loaded

HWNAT offload module: not loaded

Traffic Analysis    :
  export    : disabled
  dpi       : disabled
    version       : 1.354

Trotz alledem macht FaceTime weiterhin Probleme.

Via: ERX Hardware Offload won’t load

Tags: , , , , , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 9. Mai 2021

setlocale: LC_ALL: cannot change locale

Seit ich mein MacBook Air mit M1-Chip und macOS Big Sur verwende, erhalte ich beim Login auf meinen Raspberry Pi 3 über SSH folgende Warnung zu Gesicht:

ssh dashboard
Linux DASHBOARD 5.10.17-v7+ #1403 SMP Mon Feb 22 11:29:51 GMT 2021 armv7l
Last login: Sat May  8 05:00:24 2021
-bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)

Ursache des Problems: en_US.UTF-8 ist in /etc/locale.gen kommentiert:

$ cat /etc/locale.gen | grep -v "^#"

en_GB.UTF-8 UTF-8

Somit die Datei öffnen, die Zeile mit en_US.UTF-8 suchen, ent-kommentieren, speichern und dann folgenden Befehl ausführen:

# locale-gen

Via: warning: setlocale: LC_ALL: cannot change locale

Beim nächsten Login erscheint die Fehlermeldung nicht mehr.

Tags: , , , , , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Samstag, 8. Mai 2021

Objektdimensionen in einer STL-Datei anpassen

Stephanie hat während meines Spitalaufenthaltes den bei Gaffuri 3D-gedruckten Halter für unsere Philips Sonicare Diamondclean Zahnbürstenköpfe im Geschirrspüler gewaschen.

Die Hitze und das Wasser haben diesem Stück nicht gut getan (es hat sich verzogen/gewellt), weshalb ich diese Woche ein neues Stück bestellt habe.

Das grösste Problem ist, dass das Objekt in der STL-Datei nicht metrische Dimensionen folgt, sondern auf imperialen Einheiten (also Inches etc.) basiert. Ein Kommentator hat dies auf Thingiverse auch erkannt:

In Cura, when I load the STL the file have these dimensions : 3.5 x 3.5 x 1.8 mm

The correct dimensions are:
Metric: X: 88.9mm Y: 88.9mm Z: 44.45mm
Imperial: X: 3.5″ Y: 3.5″ Z: 1.75″

Quelle: harkor, September 15, 2017

Wie ich gelernt habe, enthält die STL-Datei keine Angabe der verwendeten Metrik, was für mich als Laien absolut nicht nachvollziehbar ist — Baupläne ohne Massstäbe? Wo gibt’s denn das? Und die meisten Software da draussen gehen deshalb davon aus, dass STL-Dateien im metrischen Format daherkommen.

Doch wie skaliere ich das Objekt nun um 2540 Prozent? (1 Zentimeter = 2.54 Inches). Hierzu fand ich Autodesks TinkerCAD STL, eine kostenlose, web-basierte Software zum Bearbeiten von STL-Dateien. Und im Forums-Post Scaling by percentage stand auch gleich die Anleitung, wie ich das Objekt gesamthaft auf die gewünschten 8.9 Zentimeter aufblase.

Beim Hochladen der STL-Datei auf Gaffuris Jellypipe kann man zum Glück vor der Auftragsübermittlung überprüfen, dass die Dimensionen nun korrekt sind:

Tags: , , , , , , , ,
Labels: Shopping

Keine Kommentare | neuen Kommentar verfassen

Samstag, 8. Mai 2021

Jeder Film, in drei Wörtern

When you’re not being challenged practice it. And then when you are being challenged by little things that goes [sic!] wrong so to speak in daily life that tends to happen you might have noticed things don’t always go according to your expectations. Sometimes you miss the bus, or something, or you miss the plane, or something else goes wrong, it tends to happen actually quite a lot; it seems to be part of life.

By the way it’s the reason why people go to see movies because the substructure of every movie that you see examine every movie you see, we could call it, it applies to virtually every movie you see … if … you can examine any movie you see what actually happens in the movie, in fact I can describe every movie to you in three words: „something goes wrong“. Because there wouldn’t be a movie otherwise, nothing would happen, nobody would evolve. Everything would be dead.

But in your own life you complain. So you see movies to see something go wrong but when it happens in your own life you complain. […] But so the strange thing is things are not meant not to go wrong; going wrong is part of the totality of how life experiences itself. If things wouldn’t go wrong it would be very uninteresting and nobody would evolve through the challenges that they encounter.

And in a good movie the protagonist or the character changes as he or she faces that which goes wrong in the movie. In a bad movie, the character does not go through any changes, that which goes wrong is only solved on an external level. In the end the bad guy is killed, and nothing else matters.

So something going wrong is part of how life experiences itself. And again you can then bring awareness to that so that you don’t always fall into reactivity when something goes wrong but you immediately align with it. Or when people behave in a way that you find offensive or they behave in a way that they offensive or they behave in a way that they create difficulties for you because you wanted this and they want something else, you don’t. You don’t have to go into hostility or opposition.

Quelle: Living with Meaning, Purpose, and Wisdom in the Digital Age | Eckhart Tolle | Talks at Google

Die Ausführungen über Herausforderungen beginnen ab ca. 50 Minuten. Sehenswert!

Nachtrag

In dieselbe Kerbe schlägt das folgende Zitat:

„Happiness is not the absence of problems, it is the ability to deal with one.“
—Steve Maraboli

Via: ja_._si @jasi91362366‬⁩

Tags: ,
Labels: Gesundheit

Keine Kommentare | neuen Kommentar verfassen