Ich habe zu Hause einen modernen DSL-Anschluss, der sich durch Carrier-grade NAT (CGN) und dynamisches IPv6 auszeichnet. Ein guter Grund, mit einem Tunnel wenigstens das IPv6 statisch (=brauchbar) zu machen.
Dummerweise stört sich Netflix an diesem IPv6-Tunnel, weil böses VPN. Also im Chrome IPv6 abschalten, was nicht mehr geht. Natürlich könnte ich IPv6 global unter /proc/sys/net/ipv6/conf/all/disable_ipv6 abschalten. Das würde dann andere Anwendungen betreffen, die IPv6 benötigen.
Mein Ansatz: Ich erzeuge einen Networknamespace, der kein IPv6 hat und starte in diesem dann den Chrome.
Networknamespace erzeugen:
ip netns add v4only
Interfacepaar erzeugen:
ip link add veth0 type veth peer name veth1
Ein Interface dem Networknamespace zuweisen:
ip link set veth1 netns v4only
Addressen und Routen festlegen:
ip a add 10.0.0.1/31 dev veth0
ip link set veth0 up
ip netns exec v4only ip a add 10.0.0.0/31 dev veth1
ip netns exec v4only ip link set veth1 up
ip netns exec v4only ip r add default via 10.0.0.1
Wenn ich über Mumble kommuniziere, habe ich üblicherweise ein Headset auf und verwende VOX. So habe ich die Hände frei und kann während dessen andere Dinge tun. Bis VOX richtig eingestellt ist, dauert es in der Regel. Auch berücksichtigen die Einstellungen nicht die Nebengeräusche (Husten, Essen, ...), die man nicht seinem Gesprächspartner zumuten möchte.
Also lieber Push-to-Talk verwenden. Problem 1: Ich habe nur 10 Finger und bauche die schon zum Schreiben. Problem 2: Ich habe auf meiner Tastatur (Modell M) keine Taste, auf die ich nicht verzichten kann. Modifier wie Strg oder Alt stören, wenn ich gleichzeitig schreiben möchte.
Idee: Fußtaster, der irgendwie ein PTT-Signal an Mumble sendet.
Beim Fußtaster ist nur zu beachten, dass er nicht sofort auseinander fällt und noch Platz im Gehäuse frei ist. Beim Arduino ist darauf zu achten, dass es sich als Human Interface Device (HID) per USB ausgeben kann. Das ist bei vielen China-Clones nicht der Fall. Hier wird in der Regel ein günstiger CH340 verbaut, der ausschließlich USB zu Serial wandeln kann. Echte Arduinos haben irgendeinen FTDI-Chip verbaut, der wesentlich mehr kann. Ich habe mich einfach für ein Board entschieden, auf dem ein ATmega32U4 verbaut ist. Der hat den Wandler integriert und lässt sich als HID programmieren.
Nach dem üblichen Monat Wartezeit waren dann beide Komponenten angekommen. Auf dem im Fußtaster befindlichen Taster steht drauf, dass er für 230V geeignet sei. Ich habe aus dem Fußtaster etwas Kunststoff rausgefräst. So konnte ich den Arduino-Clone sicher befestigen. Den Taster habe ich gegen GND und einen digitalen Pin verlötet. Für die Verbindung mit dem Rechner habe ich ein USB-Kabel geschlachtet und angebracht.
Im Bild ist noch ein Piezo-Lautsprecher zu sehen. Dieser spielt beim Einschalten die Startmelodie von grml ab. Durch das Gehäuse ist davon nicht viel zu hören.
Ich habe auf verschiedene Arten versucht, mumble exklusiv den Taster zuzuweisen. Leider ist der Client im Gegensatz zum Server nicht scriptbar. Weiterhin ist es mir nicht gelungen, Spezialtasten zu erzeugen, die nicht mit anderen Programmen wechselwirken. Folgende Vorgehensweise funktioniert:
Bezüglich der Programmierung habe ich irgendein Beispiel genommen und eingestellt, dass die Super-Taste (Windows) gesendet wird. Per lsusb sieht es so aus:
Bus 006 Device 004: ID 2341:8036 Arduino SA Leonardo (CDC ACM, HID)
Nun muss ich verhindern, dass das Signal an den i3 und andere Programme weitergegeben wird. Dazu entferne ich mit xinput das Gerät vom aktuellen Master:
Keine Ahnung, woher mumble seine Informationen über betätigte Tasten herbekommt. Jetzt ist es jedenfalls das einzige Programm. Mit Teamspeak funktioniert dieser Trick nicht.
Mit dem Ergebnis werden jene Leute und Firmen konfrontiert, die hier offensichtlich ihre Datenbank verloren haben. Anschließend wird der recipient_access-Filter vom Postfix um jene Adressen erweitert.
Hintergrund: Ich gebe jeder Person/Firma/Webseite eine eigene Emailadresse. Diese werden alle in das gleiche Postfach zugestellt. Im einfachsten Fall macht man das mit dem + als Trenner. Postfix kann auch mit regulären Ausdrücken in Aliasen umgehen. Nicht immer wird ein + in der Emailadresse akzeptiert. Auf diese Weise kann ich anhand der Empfängeradresse erkennen, wer diese an Spammer verkauft/verloren hat.
Wie ihr sicherlich bereits wisst, lerne ich seit Februar diesen Jahres für die Amateurfunklizenz Klasse A. Gestern habe ich dann in Reutlingen die Prüfung abgelegt:
Betriebstechnik: 1 Fehler (max. 9 Fehler)
Gesetzeskunde: 1 Fehler (max. 9 Fehler)
Technik A: 7 Fehler (max. 15 Fehler)
Also bestanden!1!!
Nach 2 Stunden (max. 3,5h) war ich mit den Bögen durch, wobei ich Betriebstechnik und Gesetzeskunde doppelt durchgegangen war. Mit dabei waren noch etwa 15 weitere Leute mit teils stark abweichenden Hintergründen. Laut Prüfer hatten alle anwesenden bestanden, was sicherlich auch recht komfortabel für die Prüfer war.
Üblicherweise wird dann direkt im Anschluss die Zulassung mit Rufzeichen beantragt. Zu meiner großen Überraschung konnte ich die Zulassung schon am nächsten Tag aus dem Briefkasten holen. Das #CCCamp15 kann also kommen.
Wie ihr sicherlich wisst, betreue ich zahlreiche Personen im großen Bereich der IT. Oft höre ich den Satz: „Der Computer ist schuld“. Hier wird oft die Schuld einem Glied in der Kette zwischen Entwickler und Anwender gegeben, welches nur in ausführender Position arbeitet. Der Computer selbst nimmt nur Befehle entgegen und arbeitet diese (mit hoher Geschwindigkeit) ab. Diese Befehle kommen in Form von Programmen und Konfigurationen vom Entwickler bzw. dem Admin, der die Software am Ende konfiguriert. Es gilt „Wer einem Computer Unsinn erzählt, muss immer damit rechnen.“ Wenn also beispielsweise ein Emailserver Emails ohne Fehlermeldung weg wirft, liegt dies nicht am Server, sondern dem, der das ganze eingerichtet hat.
Wie ihr sicherlich bereits wisst, bin ich Konsument von zahlreichen Newsseiten. Ich habe mir mal ein Tiny Tiny RSS aufgesetzt. Da leider viele RSS/Atom-Feeds nicht die kompletten Artikel enthalten, besteht noch etwas Bedarf für Optimierungen. In diesem Zuge bin ich auf dieses Git-Repo gestoßen, in dem einige recht interessante "Helfer"-Plugins enthalten sind. Weiterhin ganz nett ist die Software hinter fivefilters.org/content-only, welche News-Feeds mittels Magie zu verwendbaren Newsfeeds umbaut.
Für folgende Anleitung braucht ihr eine aktuelle Version von Bird. Version 1.3.7 aus den Standardquellen für wheezy ist zu alt. Nehmt mindestens Version 1.4.5 aus den wheezy-backports
In #dn42 gab es eine kleine Info, wie man bei bird herausfinden kann, welche Routen den eigenen Filtern zum Opfer gefallen sind. Dazu muss bei den protocol-Optionen die Option import keep filtered; gesetzt werden. Bei mir sieht das dann etwa so aus:
filter dn42_in
prefix set include;
prefix set exclude;
{
exclude = [ 10.10.10.0/24+]; # kabel deutschland dns
include = [ 172.22.0.0/15{22,28}, # dn42 main net
172.22.254.0/24{26,30}, # dn42 transfer nets
172.22.0.53/32, # dn42 anycast dn42
10.0.0.0/8{12,30}, # freifunk
172.31.0.0/16+]; # chaosvpn
# 94.45.224.0/19{19,30}, # ccc event
if net ~ exclude then reject;
if net ~ include then accept;
reject;
}
Das Eventnetz lasse ich nur dann zu, wenn es genutzt wird. Interessanterweise verhindere ich mit dem Filter tatsächlich, dass mir neue default-Routen untergeschoben werden:
root@chero ~ # birdc
BIRD 1.4.5 ready.
bird> show route table dn42 filtered
0.0.0.0/1 via 172.XX.XX.X on dn42.XXXXX [dn42_XXXXX 18:21:21] * (100) [ASXXXXXXXXXXi]
172.23.245.1/32 via 172.XX.XXX.XXX on dn42.XXXXXXX [dn42_XXXXXXX 18:20:28] * (100) [ASXXXXXi]
172.22.247.128/32 via 172.XX.XXX.XXX on dn42.XXXXXXX [dn42_XXXXXXX 18:20:28] * (100) [ASXXXXXi]
[…]
128.0.0.0/1 via 172.XX.XX.X on dn42.XXXXX [dn42_XXXXX 18:21:21] * (100) [ASXXXXXXXXXXi]
[…]
Es lohnt sich also, nachzusehen und evtl. Leute zu informieren. Beim Rest handelt es sich hauptsächlich um Routen zu /31 und /32er Netzen.
Folgende Konfigurationsdateien enthalten die Konfiguration für den Tunnel. Soll der Tunnel über ipv6 aufgebaut werden, die Option "proto udp" durch "proto udp6" ersetzen. Wenn kein IPv6 innerhalb vom Tunnel gebraucht wirdi, kann die Zeile "up /etc/open..." und das up-Script weg gelassen werden. Ich verwende das separate up-Script, weil die direkte Einrichtung durch OpenVPN keine Netzgröße kleiner als /64 annimmt.
/etc/openvpn/dn42-NICK.conf
mode p2p
rport REMOTE-PORT
lport LOCAL-PORT
remote REMOTE-HOST
proto udp
dev-type tun
dev dn42.NICK
comp-lzo
secret /etc/openvpn/dn42-NICK.key
user nobody
group nogroup
persist-key
persist-tun
ifconfig LOCAL-TUNNEL-IP REMOTE-TUNNEL-IP
float
script-security 2
up /etc/openvpn/dn42-NICK.up
keepalive 10 60
/etc/openvpn/dn42-NICK.up
1
2
#!/bin/sh
/sbin/ip -6 a add fd58:XXXX:XXXX:42/124 dev $1
Wie ihr sicherlich wisst, verwende ich üblicherweise Weechat für IRC. Neuerdings tue ich dies in einem Dockercontainer, der zusätzlich noch bitlbee enthält. Beim Einrichten haben dann manche Server die Verbindung abgewiesen. Grund:
Do not IRC as root
Ich will aber!1!! Weiterhin hat dieser root eh nur Zugriffsrechte auf den Container. Viel kann er also nicht zerstören. In diesem Fall hilft es, die Variable irc.server_default.username auf etwas ungleich "root" zu setzen.
ACHTUNG: Dass manche Server dieses Verhalten haben, wird daran liegen, dass es viel zu viele Leute gibt, die nicht wissen, was sie tun. Tut dies also nur, wenn ihr genau wisst, warum ihr auf diesen "Sicherheitsmechanismus" verzichten könnt.
Da ich auf meiner Agenda habe, künftig mit SSDs zu arbeiten, verlinke ich mal auf diesen Artikel von Thomas Leist, der da über einen Fallstrick berichtet.
Wie ihr sicherlich wisst, haben diese Emaildisclaimer, die vor langer Zeit in Mode waren, keine Rechtsverbindlichkeit. Hier mal mein Favorit aus dem Heiseforum, den ich hier mal zitiere, bevor der aus irgendeinem Grund verschwindet:
(aus de.alt.netdigest, März 2008)
From: <interne@mailadresse>
To: <interne@mailadresse>
Subject: Re: Ostern Start in Frankfurt/Oder
<mail content>
DISCLAIMER:
Diese E-Mail kann zur Gänze oder in Teilen vertrauliche und/oder
persönliche Informationen enthalten und ist ausschließlich für den/die
im Text ("Body") oder in der elektronischen Kopfzeile ("Header")
genannten primären Empfänger ("Recipient:") bzw. sekundären Empfänger
von elektronischen Kopien ("Cc:") bzw. weiteren, im Text oder ggf. in
Anhängen ("Attachments") namentlich genannten bzw. durch Kurz-, Spitz-
Ordens- oder Künstlernamen eindeutig identifizierbaren Empfänger zur
alleinigen, vertraulichen und/oder persönlichen Verwendung bestimmt.
Für den Fall, dass der tatsächliche Empfänger dieses E-Mails nicht zu
den im Text oder in der elektronischen Kopfzeile genannten primären
Empfängern bzw. sekundären Empfängern von elektronischen Kopien bzw.
weiteren, im Text oder ggf. in Anhängen namentlich bzw. durch Kurz-,
Spitz- Ordens- oder Künstlernamen genannten Empfängern gehört bzw.
nicht von einem Mitglied dieses Personenkreises ausdrücklich, z.B.
durch Weiterleiten ("forwarding"), Kopieren und Einfügen ("copy and
paste"), bzw. Ausschneiden und Einfügen ("cut and paste"), oder durch
andere belegbare und nachvollziehbare Art und Weise, wie z.B. dem
Ausdrucken und Versenden als persönliches Übergabeeinschreiben, zum
Empfang autorisiert wurde, weisen wir darauf hin, dass das Ansehen,
Lesen, Kopieren, die Wiedergabe, Verbreitung, Vervielfältigung,
Bekanntmachung, Veränderung, Verteilung und/oder Veröffentlichung,
sowohl in elektronischer Form als auch als Ausdruck auf Papier oder
anderen bedruckbaren bzw. belichtbaren Materialien wie Folien, Filme
oder Microfiche, sowie die alleinige Kenntnis seiner Existenz
strengstens untersagt sind und Straf- und/oder Zivil- und/oder
Datenschutz- und/oder Sozial- und/oder Arbeits- und/oder sonstige
rechtliche Verfolgung sowie eine lebenslange Vendetta der Kalabrischen
Mafia nach sich ziehen können. Sollten Sie dieses E-Mail irrtümlich
erhalten haben, sind Sie verpflichtet innerhalb einer angemessenen
Frist den Absender per E-Mail, Einwurfeinschreiben ohne Rückschein,
Telefonanruf im Festnetz oder Mobil, Telex, Telefax, Teletext, Minitel,
Postkarte (Motiv freigestellt), persönliches Aufsuchen und/oder
Strip-Telegramm zu benachrichtigen. Laut Auskunft unserer
Rechtsabteilung beträgt eine angemessene Frist derzeit 7,049 " (Sieben
Komma Null Vier Neun Sekunden). Vorsorglich machen wir Sie darauf
aufmerksam, dass Sie zum Ausfindigmachen des Absenders das E-Mail nicht
lesen dürfen! Unmittelbar im Anschluß an das Benachrichtigen des
Absenders ist das E-Mail komplett und rückstandslos und in einer Weise
zu löschen, die eine Wiederherstellung mit allgemeinen und/oder
speziellen Mitteln der Datenwiederherstellung wie
Archivierungssoftware, sogenannte "Disk Utilities",
Festplattenelektronenmikroskopie, Tricoder und/oder
naturwissenschaftlich nicht anerkannte Methoden wie unter anderem (aber
nicht ausschließlich) das Besprühen der Festplatte mit Weihwasser unter
Anstimmen stupider Gesänge unmöglich macht. Der Inhalt dieses E-Mail
ist nur rechtsverbindlich, wenn er innerhalb einer angemessenen Frist
von unserer Seite ausdrücklich und schriftlich sowohl durch Brief als
auch durch Telefax, Einwurfeinschreiben ohne Rückschein, Teletext,
Minitel, Postkarte mit floralem Motiv und Strip-Telegramm bestätigt
wird, wobei die Übermittlung des Strip-Telegramms unter notarieller
Aufsicht erfolgen muss. Sollte dieses oder ein bzw. mehrere andere
E-Mails von uns an Sie Computerviren, sogenannte "Trojanische Pferde",
bzw. sonstige Software zum Vervielfältigen, Ausspionieren, Manipulieren
und/oder Löschen Ihrer Daten und/oder unrechtmäßig kopierte Software,
Texte, Bilder, Filme, Tonaufnahmen enthalten, bzw. solche Software,
Texte, Bilder, Filme, Tonaufnahmen enthalten, die im Sender- und/oder
Empfängerland oder einem sonstigen Land der Erde als illegal oder gegen
die guten Sitten verstoßend gelten, so verzichten Sie mit der Annahme
dieser Mail automatisch und unwiderruflich auf sämtliche Garantien,
Gewährleistungen, Ansprüche und/oder sonstige Verpflichtungen
unsererseits, die sich aus diesem E-Mail oder aus anderen E-Mails oder
auch aus ganz anderen Gründen mittelbar oder unmittelbar ergeben. Die
Versendung von E-Mails an uns hat keine fristwahrende,
fristverlängernde, fristverkürzende, aufschiebene, abziehende,
rechtlich oder in irgend einer anderen Weise verbindliche bzw. bindende
oder sonstige Wirkung und wird generell nicht empfohlen.
Wie ihr sicherlich mitbekommen habt, habe ich mal wieder die Software gewechselt, welche diesen Blog generiert. Jetzt kommt jekyll zum Einsatz. Mal sehen, wie lange dies so bleibt. Dass das Aussehen aktuell stark verbesserungswürdig ist, liegt noch daran, dass ich mich um wichtigere Dinge, als das Design meines Blogs kümmern muss.
Als Fan des Trackpoints, den gute Laptops (bei mir ThinkPad x220t; ArchLinux) mitbringen, verwende ich das Touchpad fast nie. Allerdings hat der Trackpoint einen Nachteil: präzises Scrollen über weite Strecken ist nicht möglich. Es liegt also die Idee nahe, das Touchpad ausschließlich zum Scrollen zu verwenden. Scrollen auf der gesamten Fläche mit zwei fingern geht oft schon mit den Standardeinstellungen.
Mein Plan war zuerst, die Zeigerfunktion zu deaktivieren und die Anzahl der Finger zum Scrollen auf einen zu reduzieren. Jemand aus dem Chaos inKL. gab mir dann den entscheidenen Tipp: Die Scrollfläche rechts aufm Touchpad auf die gesammte Breite ausdehnen.
Mit synclient [var1=value1] kann man die Parameter ändern. Ohne Argumente bekommt man eine Liste der Einstellungsmöglichkeiten. Ich habe LeftEdge, RightEdge, TopEdge und BottomEdge auf 0 gesetzt. Somit gibt es keinen Bereich mehr, mit dem der Cursor bewegt werden kann. Dann habe ich noch HorizEdgeScroll auf 1 gesetzt, um auch horizontal scrollen zu können. VertTwoFingerScroll und HorizTwoFingerScroll brauche ich jetzt auch nicht mehr und haben dementsprechend den Wert 0. Gleiches gilt für TapButton{1,2,3}, ClickFinger{1,2,3} und ClickPad.
Meine /etc/X11/xorg.conf.d/50-synaptics.conf sieht jetzt so aus:
Gründe, wieso man einen anderen Host nur über seine linklokale ipv6-Adresse erreichen kann, gibt es viele. Wer sich dann mal schnell per ssh auf diese Maschine verbinden möchte, wird dann vor dieses Problem gestellt:
$ ssh root@fe80::5054:ff:affe:b32b
ssh: connect to host fe80::5054:ff:affe:b32b port 22: Invalid argument
Dies liegt an der Tatsache, dass das Betriebssystem nicht wissen kann, über welches Interface es die Pakete versenden soll. SSH benötigt in diesem Fall die Angabe eines des Interfaces. Am einfachsten geht dies, in dem ein %[interface] an die Adresse angehängt wird. Das sieht dann beispielsweise so aus:
Diese Tatsache ist mir letztens aufgefallen. Eigendlich war ich der Meinung, für Geräte aus dieser Zeit zu jung zu sein. Dementsprechend hatte ich keine gekreuzten Kabel rumliegen. Ich habe das Problem mit Adaptern gelöst. Diese haben allerings den großen Nachteil, dass im schlimmsten Fall die fünf umliegenden Ports nicht verwendet werden können.
Mitlerweile ist es in Mode gekommen, Dienste verschlüsselt reden zu lassen. Wer SSL nicht nativ spricht, kommt also mit telnet nicht weit. Ich empfehle in diesem Fall den ganzen Cryptokram von OpenSSL mittels
Für den Fall, dass ihr einen einfachen Mediaplayer sucht, der euch 3D-Videos verschiedener übertragungs-Formate (Side-by-Side, etc.) in anderen Verfahren ausgibt, kann ich euch das Programm bino empfehlen. Dieses Programm gibt’s für ArchLinux aktuell nur im AUR.
Mplayer2 enthält ebenfalls oben genannte Fähigkeiten. Manpage lesen lohnt sich.
hier seht ihr nun den ersten Post auf meinem Blog. Mal sehen, ob es nicht nur bei diesem Post bleibt. Es handelt sich hier um einen dieser unzähligen Anläufe, ein Blog über längere Zeit zu betreiben.