BIOS Update

Since installing my new Ryzen System, hadante is acting up a little. Spontaneous reboots or crashes, things like that. During my latest debugging session I thought that maybe a BIOS/UEFI update would help. Sure enough ASUS provided one for my superduper PRIME X370-PRO board. Changelog: “Improve system stability”. Wow, any more information and my brain would explode! Anyway, worth a try…

This UEFI-Crap-Thingy said that it could connect to the Internet via DHCP. Since Vodafone does DHCP it shouldn’t be a problem, right? WRONG! After freezing for a minute or two it says that there’s no network connectivity. Silly me, what did I expect?

OK, there’s an option for USB-devices. FAT32 with a single partition only, but fortunately I have such a beast. So download the new BIOS, copy it to the USB-stick, reboot and… Nothing! Nothing but a black screen after pressing F2 and/or DEL. Cold sweat, Shit! Did I just brick my board? No, after unplugging the USB-stick I can enter the BIOS again, and it even boots. Phew!

But I’m adventurous. New idea: The board only has USB3.0 slots, so let’s try an USB3-stick. So reboot, mount everything, copy the BIOS image to the USB3-stick, reboot, and cross fingers.

Lo and behold: The BIOS has landed! I can select the USB-Stick from the EZ-Update-Tool and see the image file. It gets even better: The UEFI-Crap installs it without complaints!

All settings are reset to default, but I didn’t change much. Just turn on SVM again, fix the boot order and set all SATA ports except the SSD’s to hotplug. Exit and reset, crossing fingers and… PXE boot. WTF? Another hard reset later we have GRUB!

Let’s hope the update keeps its promises!

[UPDATE 2017/06/18 4:40AM]: Well, it doesn’t 🙁 I was working with libreoffice when suddenly the system lost power. It just turned off, like pressing the power button. The LED-thingy on the motherboard was still on, but nothing more. To turn it on again, I had to flip the switch on the PSU first. Just pushing the ACPI-Power-Button wouldn’t revive the system. Fortunately the RAID survived it. Has to be some BIOS setting. Can’t be the temperature, though. Voltage, maybe?

DBUS Crap

After today’s (2017/06/16) usual pacman -Syu & systemctl reboot the shit hit the fan. SDDM started up fine, but when I tried to login, nothing happened for a while until I got a nice X11-Widget right from the 80’s telling me that something “could not sync environment to dbus”. Yeah, sure! WTF!?

First stop: Google. I’m not the only one. For some reason I can’t just “startkde” any more, but have to use “dbus-launch startkde” in /usr/share/xsessions/plasma.desktop (that’s where SDDM gets the sessions from). Easy enough. KDE loads and seems to work, but it doesn’t really. Any connection attempt to the session bus fails: can’t connect to the ssh-agent even though it’s started, can’t do systemctl –user <something>, pulseaudio doesn’t work and so on… Craptastic!

Maybe it’s some cruft in ~/.config or ~/.session. Move both away, and just to make sure, ~/.cache, too. One swift reboot later it’s work… Fuck, same shit! While skimming through wiki-pages and forum-posts on my mobile, I read the suggestion to try a new user. OK, can’t hurt, can it?

Yes, it kinda can! Of course that works! Well, at least one way out. So, create a new user and port all settings there. Oh what fun! Well, I learned a lot of lessons, like:

  • If you have an USB2 stick plugged in, entering the UEFI-Crap-Thingy what’s now called BIOS doesn’t work (or takes an eternity, maybe I didn’t wait long enough). At least it still boots if you don’t hit DEL or F2
  • The ssh-agent.service for users is hand-crafted (or stolen from somewhere, I don’t remember). You must have $SSH_AUTH_SOCK set in your .bashrc (the latter is sourced by SDDM, BTW) to make it work.
  • Sometimes it ain’t so bad to have Google accounts. After logging in with Chromium, my bookmarks and extensions were back almost immediately.
  • To start a synergy Server, all you have to do is “systemctl –user enable synergys.service”, if you have a working config in /etc/synergys.conf. Starting the client is another beast, though…
  • How to copy and modify the beet database (stored in $HOME/.config/beets/musiclib.blb in my case):
$ ~/.config/beets $ sqlite3 musiclib.blb
SQLite version 3.19.3 2017-06-08 14:26:16 
Enter ".help" for usage hints. 
sqlite> update items set path = replace(path, '<oldhome>', '<newhome>');
  • You don’t have to fire up QtCreator if rdpk starts and exits immediately. If you tell xfreerdp to use pulseaudio and there’s no daemon running, it will do just that…
  • For some reason, letting minidlnad reindex everything is much, much faster than letting it read the database on startup
  • LibreOffice macros are stored in $HOME/.config/libreoffice/4/user/basic/Standard/Module1.xba for now. You can just copy that file to the new $HOME and have fun with it after restarting it

Maybe it was a good thing ™ to get rid of all the baggage, I don’t know… Sure enough, it happened on othalla, too 🙁

Ryzen

After Lausitzring

I ordered a new motherboard, an AMD Ryzen 6-Core CUP with 16 GB DDR-4 RAM and a Macho Rev. 2b Cooler on Thursday, May 18th 2017. Paid by cash in advance, because mindfactory didn’t offer payment by credit card. Anyway, a colleague of mine ordered a gaming computer there before, so prepayment was no problem. The shipment arrived on Saturday, the 20th, when I was at the Lausitzring. Because we left early, I got the package from my neighbor Sunday evening.

Unpacking

Craptastic. The biggest box in the parcel was the Macho CPU-Cooler! It’s so big that I can’t even close the lid on my casing. Was quite a challenge to assemble. It looks like this:

The heat sink is the big thing in the middle, the turning fan is the white thing to the leftmost. My bedside cabinet was easier to put together!

With the ASUS-AM4-Board you don’t have to remove the backplate. Actually, you can’t. The spacers fit into the threads if you remove the brackets (barely). The heat sink still slides when you fasten the screws, but fortunately it doesn’t really matter.

I benchmarked the whole thing by re-encoding several videos from 1080p to 720p with ffmpeg, threaded. The temp didn’t raise over 65 °C, and it’s blazing fast. My old 6 core did it in real time, now it’s about half the time. At least ffmpeg says so…

Loudness

At first I thought it would be a problem that I couldn’t close the lid, but it isn’t. Actually, the external RAID with 4 hard discs is louder than the CPU fan on full speed. Good thing I orderd the separate cooler. I thought they’d deliver the CPU boxed, with one, but as it turns out, they didn’t.

First Boot

Well, after stuffing everything into the small casing, I pushed the power button and… Nothing! Fortunately I quickly remembered that I forgot to connect the whole Shebang, HDD-Led, power button, speaker and such to the panel. So, disconnect everything (VGA, USB, Network), get it out from under the table and fix it. Next try: One short beep, three long ones, no picture on either display. Shit!

The manual says that it means a missing graphics card. There definitely is one, but maybe in the wrong slot. I now have 3 PCI-Express slots. The first one isn’t usable, because it’s covered by the giant heat sink. So I get under the table and place the NVIDIA-Card into the downmost slot.

That did it! I’m greeted by an UEFI-BIOS and press DEL instantly. Not much to do in there, besides turning on SVM (Virtualization). I managed to get all 3 network cables right the first time, so I have network! The external SATA-casing is no problem, either, instantly recognized. Perfect!

htop shows 12 CPUs, 6 real cores, and 6 Hyperthreading. No fiddling around with UEFI-shit. Grub loads the kernel, as it shoud. Share and enjoy!

Lausitzring 2017

Freitag

Ich hatte geplant, das Auto um 8:30 von der Vermietung abzuholen, aber Rico hatte tags vorher angedroht, dass sie schon um 11:00 Uhr aus Rostock losfahren. Da weder Danilo noch ich große Lust verspürten, mit den Schnarchern in der Dachkammer zu schlafen, mussten wir früher los.

Also habe ich bei der Enterprise angerufen und darum gebeten, schon um 7:30 Uhr vor der Tür stehen zu dürfen. Dabei stellte sich heraus, dass man mich auch anrufen wollte, um einen späteren Termin zu vereinbaren, damit ich noch einen Diesel bekomme. Um 9:30 hätte es einen nagelneuen Seat Leon gegeben, der allerdings erst aus Oldenburg abgeholt werden musste.

In Absprache mit Danilo haben wir uns für die frühere Abfahrt und den Benziner entschieden, was eine sehr gute Entscheidung war. Um 7:30 stand ein Ford Focus Diesel (von den anderen Ford Fötus genannt) vor der Tür, den ich mitnehmen durfte.

15 Minuten später waren alle Formalitäten erledigt. Dann kurz nach Hause, die Klonten einladen und dann ab zu Danilo. Um 8:20 Uhr sind wir losgefahren und haben ca. 5 Stunden bis nach Schwarzheide gebraucht, so dass wir um 13:30 auf den Hof gefahren sind.

Immer noch früh genug. Rico und Co. sind zwar pünktlich losgekommen, haben aber um Berlin im Stau gestanden, so dass sie insgesamt auch mehr als 5 Stunden gebraucht haben, inklusive Pinkelpausen. Ich war schon ziemlich angefurzt, als sie endlich auf den Hof gefahren sind. Danilo hatte am Abend zuvor Hasselröder kaltgestellt und am Morgen in eine Kühltasche gepackt. Guter Mann!

Da ich schon um 6:30 gefrühstückt hatte, war ich ziemlich breit, als wir endlich Essen gegangen sind. So breit, dass ich nicht mehr wusste, dass ich Falk die 80€ für die Eintrittskarte schon gegeben hatte 🙂

War mal wieder ein sehr lustiger Abend. Macht einfach Spaß, mit der Bande aus Rostock zu saufen. Toni hat den Pfeffi wie Limonade getrunken, und das Bier floss natürlich in Strömen. Wir sind zeitig, so gegen 24:00 Uhr ins Bett gekommen.

Samstag

Ich bin aufgewacht, als Danilo aufgestanden ist, bin aber wieder eingeschlafen und habe auch verschlafen. Um 8:15 Uhr hat Rico mich geweckt. Da wir eigentlich um 8:30 Uhr los wollten, musste ich mich ein wenig beeilen. Duschen, anziehen, Frühstück, alles in einer halben Stunde.

Zu meiner Überraschung ist Sprosso gefahren! Danilo ging es so gut, dass er auch sofort ein Bier eingeworfen hat. Toni ist mal wieder zur Hochform aufgelaufen und eine Runde nach der Anderen ausgegeben. Ich kam kaum dazwischen, überhaupt Geld auszugeben!

Wir haben uns zwar die Bändchen für das Fahrerlager abgeholt, waren aber nicht drin. Das DTM-Rennen war komischerweise spannender als die GT.  Bei letzterem Rennen ist kaum etwas passiert. Bei dem DTM-Rennen gab es zwar keine Crashes, aber dafür reichlich Überholmanöver. Die Formel 4 war auch enttäuschend. Kaum Unfälle. Nach dem DTM-Rennen haben wir uns vom Acker gemacht.

Leider konnten wir nicht in das Restaurant, weil dort eine Hochzeit war, aber wir hatten vorgesorgt. Wir haben gegrillt mit Fleisch vom ansässigen Metzger. Hat sehr gut geschmeckt! Und wieder einmal waren wir vernünftig genug, um 24:00 Uhr ins Bett zu gehen. Ich hatte die nötige Bettschwere, so dass mich das Gelaber draußen nicht mehr gestört hat. Fenster zu und gut!

Sonntag

Dieses Mal war ich clever und habe mir den Wecker gestellt. War allerdings unnötig, da wir sowieso erst später, also gegen 10:00 Uhr los wollten. Das Frühstück war wie immer klasse. Es gab Rührei und wieder die Wurst vom Fleischer. Da wusste man nicht, was man zuerst essen sollte.

Bevor wir zum Ring gefahren sind, habe ich in Schwarzheide getankt, oder besser gesagt, es versucht. Ich bin an die Säule für LKW-Diesel gefahren. Der Rüssel hat ein Stück weit in den Tank gepasst, aber als ich es laufen lassen wollte, ist mir alles entgegen gespritzt. Eine ziemliche Sauerei. Mein rechter Arm war mit Diesel getränkt, mein T-Shirt und meine Hose haben auch etwas abbekommen. Das Shirt konnte ich wechseln, habe aber trotzdem den ganzen Tag wie eine Tankstelle gerochen. Die Wacken-Armbänder riechen immer noch.

Nachdem ich meine Hände auf der Toilette geschrubbt hatte, ging es endlich zum Ring. Zum Glück sind wir den Schildern gefolgt und haben die Abfahrt Schwarzheide genommen. Wie ich später gehört habe, war die nächste Abfahrt gesperrt. Wir mussten zwar auf der gegenüberliegenden Seite der Tribüne parken, konnten aber den Shuttlebus nehmen.

Wir haben uns das DTM-Qualifying und das GT-Rennen angeschaut. Dann haben Danilo und ich uns vom Acker gemacht. Das DTM-Rennen haben wir ausgelassen, was eine sehr gute Entscheidung war. Wir sind ohne Probleme vom Gelände gekommen und konnten Vollgas geben.

Wir sind um ca. 15:00 losgefahren (15 – 20 Minuten Fußmarsch zum Parkplatz) und waren um 19:20 in Bremerhaven. Als Danilo um 16:50 mit Rico telefoniert hat, waren sie gerade auf der Autobahn. Ich hatte den Tempomat die meiste Zeit auf 180 km/h, bis auf die Streckenteile im Osten, wo es unsichtbare Fahrbahnschäden gab. Sehr seltsam, das…

Ein wenig Statistik

Gefahrene Kilometer: 1134
Getankt: 81.26l
Kraftstoffkosten: 91.72€
Durchschnittsverbrauch: 7.16l
Mietkosten: 55.41€ (15€ Dieselgebühr, abzüglich 1500 Punkte)
Parkgebühr für Sonntag: 5€
Gesamt: 152.13€

Der Bordcomputer hat nur 6l angezeigt, aber das war zu erwarten. Ein Benziner hätte sich erfahrungsgemäß 8-9l gegönnt, von daher war die Dieselgebühr gut investiertes Geld.

Bilder

gibt es hier.

Telekom und IPv6 – Total tell, Todd!

Zuvörderst…

… muss man IPv6 Konnektivität herstellen. Wie das geht, habe ich in diesem Artikel beschrieben.

Wenn man aber mehr will…

… wie z. B. ein geroutetes /56er, dann muss man sich weiter anstrengen.

Das geroutete Netz bekommt man nur via DHCPv6. Am einfachsten geht das mit dhcpcd6 und einer dafür gemachten Konfiguration. Davon ausgehend, dass ppp0 das PPPoE-Interface der Telekom ist, muss sie so aussehen:

duid 
noipv6rs 
waitip 6 
ipv6only 
interface ppp0 
ipv6rs 
iaid 1 
ia_pd 1 int
  • iaid ist lediglich ein Identifier, den man referenzieren kann/muss
  • die letzte Zeile “ia_pd 1 int” ist interessant: “int” ist der Name des Netzwerk-Interfaces, dem ein Prefix zugeteilt werden soll.  Standardmäßig bekommt das Teil ein /64-Prefix mit der IP-Adresse Prefix::1/64

ACHTUNG: DHCPv6 läuft über UDP/ipv6, Port 546 ausgehend. Sonst geht gar nix! Hier die Iptables-Regel, wenn die INPUT-Policy Drop heißt:

ip6tables -I INPUT -i ppp0 -p udp -m udp --dport 546 -j ACCEPT

Wenn nix geht, zum Testen die Policies auf “ACCEPT” setzen und dann mit tcpdump schnüffeln.

Wenn man ein Prefix bekommen hat, sollte man…

RADVD installieren…

Und zwar mit folgender Config:

interface int { 
        AdvSendAdvert on; 
        MinRtrAdvInterval 3; 
        MaxRtrAdvInterval 10; 
        prefix ::/64 { 
                AdvOnLink on; 
                AdvAutonomous on; 
                AdvRouterAddr on; 
        }; 
};

“int” ist wiederum das Interface, welches das geroutete Prefix bekommen hat und irgendwie im LAN ist. Wenn an den angeschlossenen Geräten IPv6-Autokonfiguration aktiviert ist, sollten alle glücklich sein 🙂

Nachteile

Mit SLAAC (also Autokonfiguration) und NetworkManager kann zumindest im GUI keine statischen IPv6-Adressen vergeben, da hilft nur IPv4, aber das kriege ich auch noch geregelt 🙂

Hadante Routing

Well, that took quite some doing. Turns out that KabelDeutschland/Vodafone is the least worse provider for VPN-Connections. Routed via Telekom the RDP-Connections are flaky at best.

By default, everything is routed via ppp0/tkom, set up in /etc/ppp/ip-up.d/tkom-up.sh, except for valhalla and the VPN-Server@Work:

/usr/bin/ip rule add to <valhalla>/32 lookup kd
/usr/bin/ip rule add to <work>/32 lookup kd

DO NOT flush all rules, no matter what! This will inevitably lead to “Destination Host Unreachable”, because the rules for looking up main and default are flushed, too. Took me a while to figure out 🙁

To fill the routing table kd, add this to /etc/systemd/network/ext.network:

[DHCP] 
RouteMetric=4096 
RouteTable=199

This adds the routes pushed by DHCP to table 199. RouteTable 199 is defined in /etc/iproute2/rt_tables:

# 
# reserved values 
# 
255     local 
254     main 
253     default 
0       unspec 
# 
# local 
# 
#1      inr.ruhep 
200 tkom 
199 kd

Together with the rules above everything to valhalla and work is now routed via KD.

 

KGlobalAccel

This definitely merits a post. While working on my Qt Audio Player (BeetPlayer), I wanted control it via the Media Keys of my Keyboard. Since I’m using KDE on Linux, I quickly found out about KGlobalAccel.

Unfortunately, there’s no decent documentation available. The API docs are kinda useless, and there’s no tutorial available, at least not with my Google foo, so here is how it works:

First and foremost, set QObject::objectName() for the QAction you want to register. It should be unique!

Don’t forget to change your CMake file or your .pro-File if you’re using qmake.

Then register a shortcut with KGlobalAccel::self()->setShortcut() like this:

QAction *muteA = new QAction(QIcon(":/mute.png"), tr("Mute"), this); 
muteA->setObjectName("beetPlayerMute"); 
connect(muteA, SIGNAL(triggered(bool)), this, SLOT(mute(bool))); 
KGlobalAccel::self()->setShortcut(muteA, QList<QKeySequence>() << QKeySequence(Qt::Key_VolumeMute), KGlobalAccel
::Autoloading);

After that launch KDE System Settings->Shortcuts->Global Shortcuts. There should be an entry for your Application. Select it and set the shortcut. Haven’t figured out how a default shortcut, but it doesn’t really matter when it shows up there.

Sabaton – Sporthalle Hamburg

Anreise (6.1.2017)

Da ich nicht wusste, ob, wie und wo man in Hamburg bei der Seemannsmission parken kann, habe ich mich für die Bahn entschieden. Die scheint die Preise zu würfeln. Hinreise 1. Klasse mit Zugbindung: 35€, Normalpreis ohne Zugbindung 2. Klasse: 40€. Schlussendlich habe ich das Niedersachsenticket gewählt (23€). Die Regionalzüge (DB und Metronom) waren wie erwartet pünktlich. Abfahrt 14:28 Bremerhaven HBF, Ankunft 16:42 Hamburg HBF mit nur 30 Minuten Aufenthalt in Bremen. Dann nochmal 42 Minuten Nahverkehr: erst Bus, dann S- und U-Bahn.

Am Busbahnhof hat uns eine Frau angesprochen, ob wir ein Telefon hätten und einen Krankenwagen rufen könnten, weil dort ein unterkühlter Mann auf der Bank saß, dem es gar nicht gut ging. Es war auch ziemlich kalt, um die -6°C. Bevor ich 112 wählen konnte, hatte Olaf einen Wagen der BP gesichtet und sie aktiviert. Sie haben sich schlussendlich gekümmert und einen Krankenwagen gerufen.

In der S-Bahn sind wir auf eine Gruppe aus Leer gestoßen, die auch zum Konzert wollte. Einer aus der Gruppe (ich glaube, er hieß Jannis) hatte noch keine Karte. Er konnte es kaum glauben, als Olaf ihm seine 2. Karte schenken wollte. Insgesamt waren es 4 Personen: Jannis, seine Schwester, ihr Freund und Phillip, 15 Jahre alt, sein erstes Metal-Konzert. Wir haben uns sofort verstanden, auch sie sind jedes Jahr in Wacken 🙂

Das Konzert – Sporthalle Hamburg

Wie alle guten Deutschen (und Engländer) haben wir uns natürlich artig an der langen Schlange angestellt. Nach der obligatorischen Abtastung hat man uns gesagt, dass Gästeliste-Gäste einen anderen Eingang benutzen müssen. Also kehrt marsch und einmal um die Halle gelaufen. Nach Vorzeigen des Personalausweises haben wir die Karten sofort bekommen. Jannis hatte bis zum Schluss nicht glauben können, dass er umsonst reinkommt. Die Tageskarte hätte 55€ gekostet.

Erstmal ein Bier. Jannis gibt einen aus. Hat er gerne gemacht, nachdem Olaf ihm die Karte geschenkt hat. Ein Bier (Astra Pilsener 0,5l im Plastikbecher) kostet 4,50€ plus 0,50€ Pfand. Egarl Karl! Wir sind hier, um Spaß zu haben! Nachdem wir die Anderen gefunden hatten, ging es in die Halle. Accept als Vorband, auch nicht schlecht! Ein Urgestein des Heavy-Metals. Sie haben keine schlechte Show abgeliefert, aber leider kannten weder Olaf noch ich auch nur ein Lied.

Nach einer halbstündigen Umbaupause, die wir zum Rauchen genutzt haben, und in der Jannis und Olaf Kontaktdaten ausgetauscht haben, kam Sabaton. Was soll ich sagen? Einfach eine geile Show, die die Jungs abgeliefert haben! Sie können auf der Bühne genauso viel wie im Studio. Ich habe fast alle Lieder wiedererkannt, und auch das Gelaber hielt sich in Grenzen. Ich frage mich allerdings, warum Leute einen Sitzplatz auf der Tribüne haben wollen!

Wir stehen direkt an dem Merchandise-Stand ganz hinten. Leider kommt es, wie es kommen musste. Olaf stellt sein Bier auf dem Tisch ab, und es kippt um. Warum, wieso oder weshalb bleibt offen. Das Bier läuft natürlich in einen Karton mit neuen T-Shirts. Das führt zu einer hitzigen Diskussion zwischen der jungen Verkäuferin und Olaf. Als sie ihm droht, ihn “von der Security entfernen zu lassen”, wird draußen weiter diskutiert. Nach einer Weile mache ich mir Sorgen und mache mich auf die Suche, kann sie aber nicht finden. Ich gehe wieder zurück in die Halle und genieße Sabaton. Zwei Lieder später gehe ich noch einmal los und finde Olaf, der mit einem ehemaligen Polizisten diskutiert. Er hat das angeblich schwangere Mädel in Grund und Boden geredet und das Problem gelöst. Ende gut, alles gut. Zum Schluss des Konzerts bin ich ziemlich breit, und die kalte, frische Luft tut ihr Übriges.

Rückreise mit U- und S-Bahn. Olaf möchte noch in die Haifisch-Bar, aber ich kann nicht mehr und lege mich schlafen. Frühstück von 6:30 bis 9:30.

Abreise (7.1.2017)

Das Zimmer war sauber und vollkommen OK für 35€. Nichts besonderes, 2 Betten, Dusche und Bad sowie Frühstück. Letzteres war gar nicht schlecht. 2 Eier, kleine Würstchen und Frikadellen, Rollmöpse, Kaffee und Orangensaft. Mineralwasser wäre nicht schlecht gewesen, aber man kann nicht alles haben.

Nach dem Frühstück Sachen packen und ab zum Hamburger HBF. Dieses Mal kein Bus, sondern nur S- und U-Bahn. Der Mensch an der Rezeption hat uns am Abend zuvor schon aufgeklärt, dass es auch eine S-Bahn-Station ganz in der Nähe gibt, was Gurgel nicht wusste.

Der Weg dorthin war nicht ganz unbeschwerlich. Viele Treppen und das bei Blitzeis! Die Nacht zuvor hatte es gefroren, wie schon geschrieben, und dazu kam Regen. Zum Glück haben wir uns nicht auf die Fresse gepackt. Ich nehme den Metronom um 11:14 und steige in Bremen in die NWB um, die gefühlt an jeder Milchkanne hält. Der Lokführer hat Humor und variiert seine Warnungen zum Glatteis an jedem Bahnhof.

Die größte Herausforderung war, vom Bahnhof nach Hause zu laufen. Bin fast nur auf der Straße gegangen, weil die Bürgersteige spiegelglatt waren. Die Fishtown Penguins hätten problemlos dort spielen können 🙂

Hier die Bilder

Ich habe fertig.

 

IPv6 mit der Telekom, Linux und pppoe

Pflicht: IPv4-Konnektivität

Wie das geht, habe ich hier beschrieben. Wenn das nicht läuft, geht auch nichts mit IPv6.

Kür: IPv6-Konnektivität

Ist eigentlich ganz einfach, wenn man weiß, dass Forwarding für das ppp-Interface ausgeschaltet sein muss. Ansonsten kann man lange auf ein Prefix warten: Man bekommt zwar eins, aber das Interface wird nicht konfiguriert!

So geht dem:

Unter Arch Linux gibt es die Datei /etc/ppp/ipv6-up.d/00-iface-config.sh. Dort trägt man Folgendes ein:

#!/bin/bash
echo 1 > /proc/sys/net/ipv6/conf/$1/use_tempaddr 
echo 0 > /proc/sys/net/ipv6/conf/$1/forwarding 
echo 1 > /proc/sys/net/ipv6/conf/$1/autoconf 
echo 1 > /proc/sys/net/ipv6/conf/$1/accept_ra

Wichtig ist die 2. Zeile: forwarding == 0, wie schon oben erwähnt. Diese Option ist der Schlüssel zum Glück, wirklich!

use_tempaddr kann ganz nach Gusto gesetzt werden, und autoconf muss natürlich auch aktiviert sein. Bei accept_ra bin ich mir nicht sicher.

Als Nächstes braucht man rdisc6 (Arch Linux: pacman -S ndisc6). Dann legt man eine neue Datei in /etc/ppp/ip-up.d an (Name egal, Hauptsache, es ist ein ausführbares Shell-Script). Bei mir heißt sie tkom-up.sh:

#!/bin/bash
rdisc6 ${IFNAME}

${IFNAME} wird von dem PPP-Gerümpel gesetzt und enthält den Namen des PPP-Interfaces (Überraschung!).

Zu guter Letzt muss man dem PPP-Dämonen noch sagen, dass er auch für IPv6 zuständig ist. Dafür fügt man die Zeile

+ipv6

irgendwo in /etc/ppp/options hinzu. Nach einem beherzten

# systemctl restart adsl

sollte eine globale IPv6-Adresse an ppp* rangeflanscht sein!

Ansonsten wäre da noch…

systemd-networkd, das standardmäßig Router-Announcements an IPv4-Only-Interfaces entgegennimmt und eine nervige Default-Route via fe80::1 setzt. Das kann man dem Trum abgewöhnen, indem man IPv6AcceptRA=false zu der .network-Unit hinzufügt. Bei mir sieht das so aus (ehemals KD, jetzt Vodafone-Verbimmelung):

[Match] 
Name=ext 
 
[Network] 
DHCP=v4 
IPv6AcceptRA=false