Ein neuer adminForge Service kann ab sofort genutzt werden. LanguageTool ist eine KI-basierte Komma-, Grammatik- und Rechtschreibprüfung. Korrigiere Texte in vielen verschiedenen Sprachen und schreibe diese um. LanguageTool ist eine KI-basierte Komma-, Grammatik- und...
Die MZLA Technologies Corporation hat mit Thunderbird 115.8.1 ein Sicherheits- und Fehlerbehebungs-Update für seinen Open Source E-Mail-Client veröffentlicht.
Neuerungen von Thunderbird 115.8.1
Mit dem Update auf Thunderbird 115.8.1 hat die MZLA Technologies Corporation ein Update für seinen Open Source E-Mail-Client veröffentlicht und behebt damit mehrere Probleme, welche sich in den Release Notes (engl.) nachlesen lassen. Auch eine Sicherheitslücke wurde mit Thunderbird 115.8.1 behoben.
Laut eigenen Angaben ist The Dark Mod 2.12 ist ein großer Schritt nach vorn für Leute, die Missionen designen! Das Culling-System wurde umfassend überarbeitet, um sicherzustellen, dass Deine CPU und Deine GPU keine Ressourcen für das Rendern unsichtbarer Geometrie, Lichter und Schatten verschwenden. Einige der besten Kartenoptimierungsexperten haben ähnliche Leistungssteigerungen erreicht, wie es beim neuen Culling-System zu finden ist. Allerdings ist das laut eigenen Angaben eine seltene Fähigkeit. Das Team hat es sogar geschafft, die Leistung von Missionen zu verbessern, […]
Heute Abend klären wieder Hauke und Jean Deine Fragen live!
Wenn Du das Video unterstützen willst, dann gib bitte eine Bewertung ab, und schreibe einen Kommentar. Vielen Dank!
--------------------
Links:
Frage stellen: https://ask.linuxguides.de
Forum: https://forum.linuxguides.de/
Haukes Webseite: https://goos-habermann.de/index.php
Nicht der Weisheit letzter Schluß: youtube.com/@nichtderweisheit
Linux Guides Admin: https://www.youtube.com/@LinuxGuidesAdmin-xw6fd
Professioneller Linux Support*: https://www.linuxguides.de/linux-support/
Linux Mint Kurs für Anwender*: https://www.linuxguides.de/kurs-linux-mint-fur-anwender/
Ubuntu Kurs für Anwender*: https://www.linuxguides.de/ubuntu-kurs-fuer-anwender/
Linux für Fortgeschrittene*: https://www.linuxguides.de/linux-kurs-fuer-fortgeschrittene/
Offizielle Webseite: https://www.linuxguides.de
Tux Tage: https://www.tux-tage.de/
Forum: https://forum.linuxguides.de/
Unterstützen: http://unterstuetzen.linuxguides.de
Twitter: https://twitter.com/LinuxGuides
Mastodon: https://mastodon.social/@LinuxGuides
Matrix: https://matrix.to/#/+linuxguides:matrix.org
Discord: https://www.linuxguides.de/discord/
Kontakt: https://www.linuxguides.de/kontakt/
BTC-Spende: 1Lg22tnM7j56cGEKB5AczR4V89sbSXqzwN
Haftungsausschluss:
-------------------------------------
Das Video dient lediglich zu Informationszwecken. Wir übernehmen keinerlei Haftung für in diesem Video gezeigte und / oder erklärte Handlungen. Es entsteht in keinem Moment Anspruch auf Schadensersatz oder ähnliches.
Mit dem Update auf Firefox 123.0.1 behebt Mozilla ein Problem, welches bei Verwendung mancher Themes verursachte, dass bei einer Website, die von Firefox übersetzt wurde, in der Adressleiste die Sprache nicht erkennbar war, in welche übersetzt worden ist.
Ein anderes behobenes Darstellungsproblem betrifft das Entwicklerwerkzeug „Web-Speicher“, bei welchem der Text in markierten Zeilen nur schwer zu lesen war.
Firefox 123.0.1 behebt auch mehrere Webkompatibilitätsprobleme. So wurde das change-Event nicht mehr ausgelöst, wenn ein textarea-Element geleert worden ist. Konische Farbverläufe wurden unter Windows mit aktivierter Hardwarebeschleunigung nicht mehr korrekt dargestellt. Außerdem wurde ein Fehler im JIT-Compiler der JavaScript-Engine behoben, bei dem String.prototype.lastIndexOf einen falschen Rückgabewert lieferte, wenn der Suchtext leer war.
Ein weiteres behobenes Problem betrifft Flatpak-Nutzer unter Linux, für welche andere Wörterbücher als en-US nicht mehr funktionierten.
Schließlich wurde noch ein Problem der chinesischen Firefox-Variante behoben, welches verursachte, dass auf der Seite, die beim Öffnen eines neuen Tabs erscheint, nur noch eine Fehlermeldung zu sehen war.
Nach einer langen Entwicklungsphase wurde openmediavault 7 mit Codenamen Sandworm veröffentlicht. Die größte Neuerung ist das Upgrade auf Debian 12 Bookworm. Wobei das Team in der offiziellen Ankündigung von einer Evolution und nicht einer Revolution spricht. Im Changelog findest Du neben dem Upgrade auf Debian 12 auch folgende Neuerungen und Änderungen: Du kannst das ISO-Image für AMD64-basierte Systeme hier herunterladen. Das Team rät, das System nach der Installation mit omv-upgrade zu aktualisieren. Zusätzlich zur ISO-Installation kannst Du OMV auf einem […]
Das Entwickler-Team von Ubuntu hat sich dafür entschieden, beim kommenden Ubuntu 24.04 LTS Noble Numbat per Standard keine Spiele mehr zu installieren. Bisher wurden bei Ubuntu vier Spiele vorinstalliert: Das Team ist auch der Meinung, dass selbst diese wenigen ausgewählten Spiele immer weniger repräsentativ für Ubuntu sind. Natürlich sind diese Games nicht aus den Repos verschwunden. Wer sie nach der Installation des Betriebssystems wieder haben möchte, kann sie selbstverständlich nachinstallieren. Werde ich die Games vermissen? Nein … ich habe sie […]
Mit dem aktuellen Update auf Brave 1.63 (Desktop) können Nutzer der Brave-Wallet auch native Bitcoin-SegWit-Adressen erstellen. Damit steht Dir eine native BTC-Adresse zur Verfügung, die im Vergleich zu den anderen Bitcoin-Kontotypen niedrigere Transaktionsgebühren und eine bessere Fehlererkennung bietet. Über die Brave Wallet kannst Du jetzt auch von allen Arten von Bitcoin-Adressen Geldmittel senden und empfangen, inklusive Legacy, Nested SegWit, Native SegWit und Taproot. Das gewährleistet die Kompatibilität mit Wallets von Drittanbietern. Damit Du Bitcoin in Deine Brave-Wallet einzahlen kannst, musst […]
Firefox für den Desktop besitzt eine Funktion zur vollständigen Übersetzung von Websites, welche im Gegensatz zu Google Translate & Co. komplett im Browser arbeitet und nichts an einen Server sendet. Für Android befindet sich die Funktion noch in Entwicklung, kann aber bereits getestet werden.
Firefox für Windows, macOS und Linux wird seit Version 118 standardmäßig mit einer lokalen Funktion zur maschinellen Übersetzung von Websites für den Browser ausgeliefert. Das bedeutet, dass die Übersetzung vollständig im Browser geschieht und keine zu übersetzenden Inhalte an einen Datenriesen wie Google oder Microsoft übermittelt werden müssen.
Wer eine Nightly-Version von Firefox für Android nutzt, kann das Feature jetzt schon auf seinem Smartphone oder Tablet testen. Dazu muss auf der Seite Einstellungen → Über Firefox fünfmal auf das Firefox-Logo getippt werden. Anschließend gibt es einen neuen Punkt „Secret Settings“ in den Einstellungen, worüber die Übersetzungsfunktion aktiviert werden kann.
Nach der Aktivierung erscheint ein Übersetzungssymbol in der Adressleiste, sofern Firefox eine Übersetzung dieser Sprache unterstützt. Zwar sind noch nicht alle Optionen funktionsfähig, aber die Übersetzung und damit der wichtigste Teil des neuen Features funktioniert bereits.
Mit Kali Linux 2024.1 hat das Team die erste Version dieses Jahres veröffentlicht. Es gibt einige Neuerungen und auch visuell wurde die Security-Distribution aufgefrischt. Neu ist auch, dass es neue Spiegel-Server gibt, auf denen das Image gehostet ist. 2024 Theme-Änderungen und Desktop-Verbesserungen Es ist schon ein bisschen Tradition geworden, dass die 20**.1-Versionen immer ein neues Theme mit sich bringen. Das Team hat sowohl das Boot-Menü als auch den Anmeldebildschirm sowie die Wallpaper geändert. Es gibt auch einige Verbesserungen beim Xfce-Desktop. […]
Kurz notiert: heute wurde die Desktopumgebung Plasma 6 aus dem KDE-Projekt freigegeben. Mit dem Umstieg auf Qt 6 und den einhergehenden Arbeiten ist es nach knapp 10 Jahren der erste große Major-Release (KDE Plasma 5 wurde 2014 veröffentlicht). Eine weitere wegweisende Änderung ist, dass der Fokus nun klar auf dem Display-Server Wayland liegt, der auch nun zur Standardeinstellung wurde. X11 wird jedoch weiterhin unterstützt.
Eine Auswahl der weiteren Änderungen:
Es gibt einen neuen Overview-Effekt.
Durch Wayland wird nun auch HDR unterstützt.
Es gibt neue Filter zur Unterstützung bei Farbenblindheit.
Das Einstellungsprogramm wurde überarbeitet.
Der bekannte KDE Cube ist zurück.
Neue Standardeinstellungen:
Dateien/Verzeichnisse werden nun mit einem Klick ausgewählt und mit einem Doppelklick geöffnet.
Das Panel ist nun standardmäßig schwebend.
Thumbnail-Grid ist nun der Standard-Task-Switcher.
Scrollen auf dem Desktop führt nun nicht mehr zum Wechsel der virtuellen Desktops.
Auch die KDE-Anwendungen erfahren umfangreiche Updates. All diese Informationen können im Release Announcement nachvollzogen werden.
KDE Plasma 6 sollte nun sukzessive auch in die Distributionen Einzug halten. Arch Linux ist als Beispiel für einen Rolling Release da schon schnell dabei. Ob und inwiefern komplexe Setups des traditionell sehr einstellbaren Desktop-Systems umgezogen werden können, wird sich dann zeigen. Ein großer Vorteil des KDE-Ansatzes zeigt sich allerdings schon im Release-Announcement: viele der Funktionen können genutzt werden, müssen es aber nicht. Dem Endanwender wird die Wahl überlassen, welche Optionen er nutzen möchte.
Bislang ist Firefox für Android nicht im Speziellen für die großen Oberflächen von Tablets optimiert. Nutzer der Nightly-Version können ab sofort eine Tableiste aktivieren.
Firefox für Android war bisher nicht für Tablets optimiert. Das bedeutet, dass Firefox mehr oder weniger die gleiche Oberfläche wie für Smartphones verwendet. Tatsächlich zeigt Firefox auf Tablets neben der Adressleiste zumindest Schaltflächen für Zurück, Vorwärts und Neuladen an. Darüber hinaus gibt es aber keine weiteren Anpassungen. Vor allem eine Tableiste wie beim Desktop-Firefox wird von vielen Tablet-Nutzern vermisst. Darüber, dass Mozilla daran arbeitet, hatte ich im Januar berichtet.
Wer eine Nightly-Version von Firefox für Android auf einem Tablet nutzt, kann ab sofort eine erste Version der Tableiste aktivieren. Dazu muss auf der Seite Einstellungen → Über Firefox fünfmal auf das Firefox-Logo getippt werden. Anschließend gibt es einen neuen Punkt „Secret Settings“ in den Einstellungen, worüber die Tableiste aktiviert werden kann. Spätestens nach einem Neustart von Firefox steht diese dann zur Verfügung.
Es handelt sich zu diesem Zeitpunkt um keine fertige Implementierung. Unter anderem das Verschieben von Tabs via Drag and Drop ist eine Funktion, an der bereits gearbeitet wird und welche im Laufe der kommenden Tage Einzug erhalten wird. Wer die weitere Entwicklung der Tableiste verfolgen möchte, kann dies über die Abhängigkeiten des entsprechenden Meta-Tickets machen. Für eine verbesserte Tablet-Unterstützung generell gibt es ein eigenes Meta-Ticket.
Um auch einmal in die Welt des Arduino einzutauchen, habe ich mir ein paar Bauteile bestellt und etwas experimentiert. Da ich ein großer Uhren-Fan bin, hatte ich auch gleich eine adäquate Idee. Bei meiner Suche bin ich auf den Artikel „MAKING AN ARDUINO I2C-DIGITALUHR“ gestoßen. So war die Idee geboren, diese Uhr nachzubauen.
Nachdem alle Bauteile inkl. des Arduino Uno Rev. 3 bei mir eingetroffen waren, hieß es ein wenig löten. Die 7-Segmentanzeige HT16K33 sowie das Real Time Clock Modul DS1307 mussten mit Pins für das Steckboard versehen werden. Als das geschafft war, kämpfte ich damit den Code auf den Arduino zu übertragen.
Alte Arduino IDE Version
Hier begannen nun meine Probleme. Ich stellte mir das Vorhaben recht einfach vor. Ich musste doch einfach nur alle Bauteile verbinden, die benötigten Bibliotheken einbinden, den Code in die Software Arduino IDE hinein kopieren und diesen dann in den Arduino hochladen.
Leider funktionierte das aber nicht wie erwartet und ich als Arduino-Neuling war recht ratlos. Mein erster Gedanke war, dass vielleicht beim Löten etwas kaputtgegangen oder der Fehler bei der Verdrahtung zu suchen war. Meine Fehlersuche lief jedoch ins Leere. Da ich absoluter Neuling in der Programmierung dieses Mikrocontrollers war, musste ich mich zunächst einlesen, Videos anschauen, Arduino-Experten befragen und natürlich selbst ausprobieren und experimentieren.
Als ich mir den oben erwähnten Artikel nochmals etwas näher ansah, stellte ich fest, dass dieser Beitrag schon fast 12 Jahre alt ist. Also verwarf ich den Gedanken der Uhr erst und begann mit den Grundlagen.
Die von mir installierte Version von Arduino IDE war die 1.8.19. Hier gibt es etliche Beispiele etwas aus dem Gerät herauszuholen. Im Internet fand ich eine ähnliche Grafik, wie die hier abgebildete (Arduino Uno mit LED). Hier hat ein mutiger User eine LED in Pin 13 und GND gesteckt (hierfür sollte aber ein Vorwiderstand ca. 220 Ohm in Reihe geschaltet werden). Das schnörkellose Beispiel gefiel mir und ich konnte über „Blink“ dem Arduino das erste Lebenszeichen entlocken.
Arduino Uno mit LED
Da ich nun eigentlich das HT16K33 Display ansteuern wollte, suchte ich auch hierfür nach einem Beispiel. Ich fand so die gleichnamige Bibliothek und konnte auch hier einige Tests durchlaufen lassen. Das Display war also in Ordnung.
Einen selbigen Test führte ich mit der Real Time Clock DS1307 und der Bibliothek „RTClib“ durch. Hierbei bekam ich die Zeit im Monitor von Arduino IDE ausgegeben. Also war auch dieses Modul funktionstüchtig.
Nun war die Zuversicht sehr groß, dass ich nur noch alles zusammen stecken muss und ich die Uhr endlich zum Laufen bekomme. Leider klappte das aber nicht. Die in Arduino IDE 1.8.19 ausgegebene Fehlermeldung half mir an dieser Stelle nicht weiter.
Neue Arduino IDE Version
Obwohl ich der Meinung war, dass die verwendete Version mein Vorhaben realisieren kann, lud ich mir die aktuelle Version 2.3.2 herunter und entpackte diese im Downloads-Verzeichnis. Das Öffnen des Programms mit Rechtsklick auf Arduino-IDE -> Ausführen fand ich auf Dauer nicht so praktikabel, also baute ich mir ein Startup Icon mit folgendem Inhalt:
Dieses bekam den Namen Arduino und wurde erst einmal auf dem Desktop abgelegt. Dieser Starter wurde mit Rechtsklick -> Start erlauben aktiviert und danach in das Verzeichnis /usr/share/applications verschoben. So habe ich die aktuelle Version in mein System (Ubuntu 20.04 LTS) eingebunden.
Die Version 2.3.2 verriet mir nun beim Versuch den Code an den Arduino zu übertragen, wo der letzte und entscheidende Fehler lag. Es fehlte die Bibliothek „Adafruit_BusIO“.
Verdrahtung auf dem Steckboard
Nachdem diese nun eingebunden war, ließ sich der Code übertragen und das Herz der Uhr begann zu schlagen.
Ab sofort ist die finale Version von Tails 6.0 verfügbar. Es ist die erste Version, die auf Debian 12 Bookworm basiert und GNOME 43 als Desktop-Umgebung mit sich bringt. Bei Tails 6.0 wurde die meiste Software aktualisiert. Zudem gibt es diverse Verbesserungen bezüglich Sicherheit und Benutzerfreundlichkeit. Zu den neuen Funktionen gehört eine Fehlererkennung beim permanenten Speicher. Tails 6.0 warnt Dich, wenn beim Lesen von Daten oder Schreiben auf den USB-Stick Fehler auftrete. Damit kannst Du mögliche Hardware-Fehler auf dem USB-Stick […]
Wolvic, der Browser für Virtual und Mixed Reality, wurde in der Version 1.6 veröffentlicht. Neben einigen Neuerungen macht Wolvic 1.6 auch einen Sprung bei der verwendeten GeckoView-Engine von Mozilla.
Igalia hat Wolvic 1.6 veröffentlicht. Bei Wolvic handelt es sich um einen Browser für Virtual und Mixed Reality, welcher auf dem eingestellten Firefox Reality basiert.
Neuerungen von Wolvic 1.6
Wolvic 1.6 nutzt eine aktuellere Code-Basis von Mozilla. So wurden die Mozilla Android Components sowie die Gecko-Engine von Version 116 auf Version 121 aktualisiert. Nutzer profitieren vor allem durch eine verbesserte Webkompatibilität.
Auf Geräten, die nicht von Huawei sind, wurde die Telemetrie-Option entfernt, da der ursprünglich genutzte Telemetrie-Service von Mozilla deaktiviert ist. Auf Geräten von Huawei bleibt die Option bestehen, weil dort ein eigenes Telemetrie-System genutzt wird.
Mit dem Pico Neo3 wurde die Unterstützung für ein weiteres VR-Headset hinzugefügt.
Diverse Verbesserungen gab es beim Betrachten von Vollbild-Videos. Ebenfalls verbessert wurde die Reaktionsfähigkeit und Stabilität der Tastatur, außerdem kann für diese jetzt eine experimentelle Autovervollständigung aktiviert werden. Die entsprechenden Wörterbücher werden bei Bedarf heruntergeladen. Darüber hinaus wurden noch drei neue Umgebungen hinzugefügt.
Dies war nur eine Auswahl der größten Highlights. Dazu kommt wie immer eine Reihe weiterer Korrekturen und Verbesserungen unter der Haube.
Mein Lehrbuch Datenbanksysteme ist gerade in der 2. Auflage erschienen. Es richtet sich an Studierende, Entwickler und Datenbankanwender. Es erklärt, wie moderne Datenbankmanagementsysteme funktionieren. Es zeigt Ihnen, wie Sie Datenbanken korrekt und effizient entwerfen. Es erläutert den Umgang mit der Structured Query Language (SQL) und gibt einen Überblick über die Administration und Programmierung von Datenbanksystemen.
Unzählige Übungsaufgaben (mit Lösungen!) helfen Ihnen, das erlernte Wissen zu verfestigen und anzuwenden. Zusammen mit dem Buch erhalten Sie den Online-Zugriff auf mehrere Beispieldatenbanken, sodass Sie SQL-Kommandos ohne die langwierige Installation eines eigenen Datenbank-Servers ausprobieren können. Alternativ können Sie die zum Download angebotenen Beispieldatenbanken natürlich auch lokal installieren.
In das Buch fließt meine bald 30-jährige Erfahrung im Entwurf von Datenbanken, bei der Entwicklung von Datenbankanwendungen, bei der Administration von Datenbankmanagementsystemen (DBMS) sowie aus dem Unterricht ein. Ein besonderer Fokus des Buchs liegt im korrekten Datenbankdesign. Fehler, die in dieser Phase passieren, sind später praktisch nicht mehr zu korrigieren. Das Buch berücksichtigt auch neue Entwicklungen, von NoSQL bis hin zu modernen SQL-Features (Rekursion, Common Table Expressions, Window-Funktionen etc.).
Für die 2. Auflage habe ich den NoSQL-Teil des Buchs ausgebaut und um ein MongoDB-Kapitel ergänzt. Außerdem habe ich diverse Fehler korrigiert und da und dort kleine Ergänzungen und Verbesserungen vorgenommen.
Wenn Sie auf der Fachhochschule oder Universität eine Datenbank-Vorlesung oder -Übung abhalten: Kontaktieren Sie dozenten@rheinwerk-verlag.de und fordern Sie ein kostenloses Belegexemplar an!
Der Raspberry Pi wird sicherlich oftmals headless eingesetzt, das bedeutet, es sind keine Tastatur, Bildschirm oder Maus angeschlossen. Nach der anfänglichen Installation läuft der Winzling, möglicherweise in einer dunklen Ecke und verrichtet einfach seinen Job. Gut bei der Installation von Raspberry Pi OS via Imager ist, dass Du zwischenzeitlich auch gleich SSH-Zugang konfigurieren kannst. Nett wäre auch, wenn Du eine fixe IP-Adresse vergeben könntest. Das musst Du aber weiterhin manuell konfigurieren oder Du kennst die MAC-Adresse des Computers und vergibst […]
Mozilla hat Firefox 123 für Apple iOS veröffentlicht. Dieser Artikel beschreibt die Neuerungen von Firefox 123.
Die Neuerungen von Firefox 123 für iOS
Mozilla hat Firefox 123 für das iPhone, iPad sowie iPod touch veröffentlicht. Die neue Version steht im Apple App Store zum Download bereit. Die neue Version bringt eine verbesserte Performance des Startbildschirms und Verbesserungen des Theme-Systems. Dazu kommen wie immer diverse Fehlerbehebungen sowie Verbesserungen unter der Haube.
Ubuntu Pro ist eine Updateerweiterung für bestimmte Pakete der bekannten Distribution.
Ubuntu LTS soll so 10 Jahre Abdeckung für über 25.000 Pakete erhalten. Zusätzlich erhältst du Kernel Livepatching, Telefonsupport und Pakete fürs Hardening (NIST-certified FIPS crypto-modules, USG hardening mit CIS and DISA-STIG Profilen und Common Criteria EAL2).
Leider wird für dieses kostenpflichtige Produkt Werbung gemacht, auf dem Terminal und im Ubuntu Update Manager.
Sollte dich das stören, kannst du diese Meldungen mit wenigen Befehlen abschalten.
Alternativ kannst du dich auch einfach für Ubuntu Pro anmelden, denn der Zugang ist für Privatanwender für bis zu fünf Installationen umsonst.
Ubuntu Pro Nachrichten abschalten
sudo pro config set apt_news=false
Das Abschalten der APT News reicht nicht ganz aus, um dir die Werbeeinblendung zu ersparen.
Du musst zusätzlich eine Datei editieren und deren Inhalt auskommentieren
nano /etc/apt/apt.conf.d/20apt-esm-hook.conf
Ubuntu Advantage deaktivieren oder deinstallieren
Optional kannst du das Ubuntu Advantage Paket entfernen, bzw. die Expanded SecurityMaintenance (ESM) abschalten, wenn du magst.
Ubuntu Advantage war der Vorgänger von Ubuntu Pro
Dieses beinhaltet wie die Pro-Variante Kernel Livepatching, Unterstützung für Landscape oder Zugriff auf eine Wissensdatenbank. Alles Dinge, die für Privatanwender nur bedingt interessant sind.
Solltest du nun maximal verwirrt sein, was zu welchem Supportmodell gehört und wie es unterstützt wird, hier ein Vergleich von endoflifedate. Ubuntu Pro (Infra-Only) steht in der Tabelle für das alte Ubuntu Advantage.
Du kannst ab sofort die neueste Version des FCM herunterladen. Im Full Circle Magazine findest Du die Üblichen Verdächtigen, aber auch eine Geschichte, wie jemand von OSX auf Linux Mint umgestiegen ist. Die Geschichte kommt mir bekannt vor, da ich selbst einige Zeit Macs benutzt habe, nachdem sie Intel-Prozessoren eingebaut haben. Die Reise des Users begann vor circa 20 Jahren. Der User war mit Windows NT unzufrieden und bekam daher von einem Bekannten eine CD von Ubuntu 4.10 Warty Warthog. […]
Mit einem Dualstack-Proxy Internet-Protokolle verbinden beschrieb eine Möglichkeit, um von Hosts, welche ausschließlich über IPv6-Adressen verfügen, auf Ziele zugreifen zu können, die ausschließlich über IPv4-Adressen verfügen. In diesem Beitrag betrachte ich die andere Richtung.
Zu diesem Beitrag motiviert hat mich der Kommentar von Matthias. Er schreibt, dass er für den bei einem Cloud-Provider gehosteten Jenkins Build Server IPv4 deaktivieren wollte, um Kosten zu sparen. Dies war jedoch nicht möglich, da Kollegen aus einem Co-Workingspace nur mit IPv4 angebunden sind und den Zugriff verloren hätten.
Doch wie kann man nun ein IPv6-Netzwerk für ausschließlich IPv4-fähige Clients erreichbar machen, ohne für jeden Host eine IPv4-Adresse zu buchen? Dazu möchte ich euch anhand eines einfachen Beispiels eine mögliche Lösung präsentieren.
Vorkenntnisse
Um diesem Text folgen zu können, ist ein grundsätzliches Verständnis von DNS, dessen Resource Records (RR) und des HTTP-Host-Header-Felds erforderlich. Die Kenntnis der verlinkten Wikipedia-Artikel sollte hierfür ausreichend sein.
Umgebung
Zu diesem Proof of Concept gehören:
Ein Dualstack-Reverse-Proxy-Server (HAProxy) mit den DNS-RR:
haproxy.example.com. IN A 203.0.113.1
haproxy.example.com IN AAAA 2001:DB8::1
Zwei HTTP-Backend-Server mit den DNS-RR:
www1.example.com IN AAAA 2001:DB8::2
www2.example.com IN AAAA 2001:DB8::3
Zwei DNS-RR:
www1.example.com IN A 203.0.113.1
www2.example.com IN A 203.0.113.1
Ein Client mit einer IPv4-Adresse
Ich habe mich für HAProxy als Reverse-Proxy-Server entschieden, da dieser in allen Linux- und BSD-Distributionen verfügbar sein sollte und mir die HAProxy Maps gefallen, welche ich hier ebenfalls vorstellen möchte.
Der Versuchsaufbau kann wie folgt skizziert werden:
Ein Dualstack-Reverse-Proxy-Server (B) verbindet IPv4-Clients mit IPv6-Backend-Servern
HAProxy-Konfiguration
Für dieses Minimal-Beispiel besteht die HAProxy-Konfiguration aus zwei Dateien, der HAProxy Map hosts.map und der Konfigurationsdatei poc.cfg.
Eine HAProxy Map besteht aus zwei Spalten. In der ersten Spalte stehen die FQDNs, welche vom HTTP-Client aufgerufen werden können. In der zweiten Spalte steht der Name des Backends aus der HAProxy-Konfiguration, welcher bestimmt, an welche Backend-Server eine eingehende Anfrage weitergeleitet wird. In obigem Beispiel werden Anfragen nach www1.example.com an das Backend serversa und Anfragen nach www2.example.com an das Backend serversb weitergeleitet.
Die HAProxy Maps lassen sich unabhängig von der HAProxy-Konfigurations-Datei pflegen und bereitstellen. Map-Dateien werden in ein Elastic Binary Tree-Format geladen, so dass ein Wert aus einer Map-Datei mit Millionen von Elementen ohne spürbare Leistungseinbußen nachgeschlagen werden kann.
Die HAProxy-Konfigurations-Datei poc.cfg für dieses Minimal-Beispiel ist ähnlich simpel:
~]$ cat /etc/haproxy/conf.d/poc.cfg
frontend fe_main
bind :80
use_backend %[req.hdr(host),lower,map(/etc/haproxy/conf.d/hosts.map)]
backend serversa
server server1 2001:DB8::1:80
backend serversb
server server1 2001:DB8::2:80
In der ersten Zeile wird ein Frontend mit Namen fe_main definiert. Zeile 2 bindet Port 80 für den entsprechenden Prozess und Zeile 3 bestimmt, welches Backend für eingehende HTTP-Anfragen zu nutzen ist. Dazu wird der HTTP-Host-Header ausgewertet, falls notwendig, in Kleinbuchstaben umgewandelt. Mithilfe der Datei hosts.map wird nun ermittelt, welches Backend zu verwenden ist.
Die weiteren Zeilen definieren zwei Backends bestehend aus jeweils einem Server, welcher auf Port 80 Anfragen entgegennimmt. In diesem Beispiel sind nur Server mit IPv6-Adressen eingetragen. IPv4-Adressen sind selbstverständlich auch zulässig und beide Versionen können in einem Backend auch gemischt auftreten.
Kann eine HTTP-Anfrage nicht über die hosts.map aufgelöst werden, läuft die Anfrage in diesem Beispiel in einen Fehler. Für diesen Fall kann ein Standard-Backend definiert werden. Siehe hierzu den englischsprachigen Artikel Introduction to HAProxy Maps von Chad Lavoie.
Der Kommunikationsablauf im Überblick und im Detail
Der Kommunikationsablauf im Überblick
Von einem IPv4-Client aus benutze ich curl, um die Seite www1.example.com abzurufen:
~]$ curl -4 -v http://www1.example.com
* processing: http://www1.example.com
* Trying 203.0.113.1:80...
* Connected to www1.example.com (203.0.113.1) port 80
> GET / HTTP/1.1
> Host: www1.example.com
> User-Agent: curl/8.2.1
> Accept: */*
>
< HTTP/1.1 200 OK
< server: nginx/1.20.1
< date: Sat, 06 Jan 2024 18:44:22 GMT
< content-type: text/html
< content-length: 5909
< last-modified: Mon, 09 Aug 2021 11:43:42 GMT
< etag: "611114ee-1715"
< accept-ranges: bytes
<
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Test Page for the HTTP Server on Red Hat Enterprise Linux</title>
Der FQDN www1.example.com wird mit der IPv4-Adresse 203.0.113.1 aufgelöst, welche dem Host haproxy.example.com gehört. Bei der Zeile Host: www1.example.com handelt es sich um den HTTP-Host-Header, welchen der HAProxy benötigt, um das richtige Backend auszuwählen.
Es ist zu sehen, dass wir eine Antwort von einem NGINX-HTTP-Server erhalten. Der HTML-Quelltext wurde gekürzt.
Damit ist es gelungen, von einem IPv4-Client eine Ressource abzurufen, die von einem IPv6-Server bereitgestellt wird.
Im Access-Log des Backend-Servers mit der IPv6-Adresse 2001:DB8::2 sieht man:
Die Anfrage erreicht den Backend-Server von der IPv6-Adresse des haproxy.example.com (2001:DB8::1). Die am Ende der Zeile zu sehende IPv4-Adresse (192.0.2.1) gehört dem IPv4-Client, von dem ich die Anfrage gesendet habe.
Gedanken zur Skalierung
In diesem Beispiel sind die Server www1.example.com und www2.example.com über ihre IPv6-Adressen direkt erreichbar. Nur die Client-Anfragen von IPv4-Clients laufen über den Reverse-Proxy. Wenn man es wünscht, kann man selbstverständlich sämtliche Anfragen (von IPv4- und IPv6-Clients) über den Reverse-Proxy laufen lassen.
In kleinen Umgebungen kann man einen Reverse-Proxy wie HAProxy zusammen mit Squid (vgl. Artikel Mit einem Dualstack-Proxy Internet-Protokolle verbinden) auf einem Host laufen lassen. Selbstverständlich kann man sie auch auf separate Hosts verteilen.
Hochverfügbarkeit lässt sich auch hier mit keepalived nachrüsten:
Die Internet-Protokolle IPv4 und IPv6 werden wohl noch eine ganze Zeit gemeinsam das Internet bestimmen und parallel existieren. Ich bin mir sogar sicher, dass ich das Ende von IPv4 nicht mehr miterleben werde. Dualstack-(Reverse)-Proxy-Server stellen eine solide und robuste Lösung dar, um beide Welten miteinander zu verbinden.
Sicher bleiben noch ausreichend Herausforderungen übrig. Ich denke da nur an Firewalls, Loadbalancer, NAT und Routing. Und es werden sich auch Fälle finden lassen, in denen Proxyserver nicht infrage kommen. Doch mit diesen Herausforderungen beschäftige ich mich dann in anderen Artikeln.
Mozilla hat Firefox Klar 123 (internationaler Name: Firefox Focus 123) für Apple iOS veröffentlicht. Die neue Version steht im Apple App Store zum Download bereit.
Das Betriebssystem Apple iOS 14 wird nicht länger unterstützt. Neue Mindestanforderung ist Apple iOS 15 oder höher. Ansonsten handelt es sich bei Firefox Klar 123 für Apple iOS um ein Wartungs-Update, welches ausschließlich Verbesserungen unter der Haube bringt.
Zur Reduzierung des digitalen Fingerabdrucks und des Risikos für Webkompatibilitätsprobleme berichtet Firefox jetzt immer „armv81“ als CPU-Architektur an Websites, unabhängig davon, was für Hardware tatsächlich genutzt wird. Performance-Verbesserungen gibt es durch Off-Main-Thread Canvas.
Dazu kommen wie immer neue Plattform-Features der aktuellen GeckoView-Engine, diverse Fehlerbehebungen, geschlossene Sicherheitslücken sowie Verbesserungen unter der Haube.
In drei Wochen beginnen die Chemnitzer Linux-Tage 2024 mit dem diesjährigen Motto „Zeichen setzen“. Am 16. und 17. März erwartet euch im Hörsaalgebäude an der Richenhainer Straße 90 ein vielfältiges Programm an Vorträgen und Workshops. Hier finden sich Vorträge für interessierte Neueinsteiger wie für alte Hasen.
So geht es am Samstag im Einsteigerforum beispielsweise um die Digitalisierung analoger Fotos, das Erstellen von Urlaubsvideos mit der Software OpenShot oder die Verschlüsselung von E-Mails. In der Rubrik „Schule“ gibt Arto Teräs einen Einblick in den Einsatz der Open-Source-Lösung Puavo an finnischen und deutschen Schulen. Zusätzlich stehen Vorträge aus den Bereichen Finanzen, Medien, Datensicherheit, KI oder Netzwerk auf dem Programm. Am Sonntag gibt das Organisationsteam der Chemnitzer Linux-Tage mit „make CLT“ Einblicke in die Planung und Strukturen der Veranstaltung selbst. In der Rubrik „Soft Skills” wird es um die Schätzung von Aufwänden oder notwendige Fähigkeiten von Software-Entwicklern gehen.
Eintrittskarten können online im Vorverkauf und an der Tageskasse erworben werden. Kinder bis 12 Jahren haben freien Eintritt.
Während viele Besucher bereits Stammgäste sind, werden auch neue Gesichter herzlich willkommen. Lasst euch gern von der hier herrschenden Atmosphäre voller Begeisterung für freie Software und Technik anstecken und begeistern.
Ich selbst freue mich, am Samstag um 10:00 Uhr in V6 den Vortrag mit dem obskuren Namen ::1 beisteuern zu dürfen. Update: Unverhofft kommt oft. Uns so freue ich mich am Sonntag um 10:00 Uhr in Raum V7 noch in einem zweiten Vortrag vertreten zu sein. Zusammen mit Michael Decker von der ASPICON GmbH erfahrt ihr, wie man „Mit Ansible Collections & Workflows gegen das Playbook-Chaos“ angehen kann.
Darüber hinaus beteilige ich mich als Sessionleiter für die folgenden drei Vorträge an der Veranstaltung:
So habe ich auf jeden Fall einen Platz im Raum sicher. ;-)
Wer ebenfalls helfen möchte, kann sich unter Mitmachen! informieren und melden.
Für mich ist dieses Jahr einiges im Programm dabei. Doch freue ich mich ebenso sehr auf ein Wiedersehen mit alten Bekannten aus der Gemeinschaft und darauf, neue Gesichter (Namen kann ich mir meist erst Jahre später merken) kennenzulernen.
Mozilla hat Firefox Klar 123 (internationaler Name: Firefox Focus 123) für Android veröffentlicht.
Die Neuerungen von Firefox Klar 123 für Android
Bei Firefox Klar 123 handelt es sich um ein Wartungs-Update, bei welchem der Fokus auf Fehlerbehebungen und Verbesserungen unter der Haube lag. Dazu kommen wie immer neue Plattform-Features der aktuellen GeckoView-Engine sowie geschlossene Sicherheitslücken.