Merkwürdiges Routing-Problem bei Versatel, KD

root@odroidc2:~# traceroute www.example.com
[…]
 9  82.140.19.142 (82.140.19.142)  31.625 ms  29.894 ms  28.916 ms
10  www.example.com (x.x.x.x)  29.849 ms  30.720 ms  31.541 ms
root@odroidc2:~#

ver­sus

root@odroidc2:~# traceroute gitlab.example.com
[...]
 9  82.140.19.142 (82.140.19.142)  27.259 ms  27.241 ms  27.116 ms
10  * * *
11  * * *
12  * * *

Bei­de im sel­ben AS, im sel­ben /24. Mein Root-ser­ver bei Net­cup hat kein Pro­blem.

Ich mein’: Wenn das gesam­te AS weg­ge­fal­len wäre, gut — aber ein ein­zel­ner Host???

0

Minimalistic war früher anders

Auf mei­nem fet­ten Raspi4 mit 4 GB RAM lau­fen nun Zab­bix und Grafa­na. Ich möch­te mir in Grafa­na eine geren­der­te Gra­fik (als png oder jpeg) anse­hen, allein:

Goog­len bringt: Das soll so, weil Phan­tom­JS tot sei. Eine Alter­na­ti­ve wird noch gesucht. Das ist mir frei­lich ziem­lich Wum­pe, es geht um eine Instal­la­ti­on bei mir zuhau­se, nicht um ein AKW. Also instal­lie­re ich doch ein­fach Phan­tom­JS nach:

root@r4:~# apt-cache search phantomjs
phantomjs - minimalistic headless WebKit-based browser with JavaScript API

Na wun­der­bar! Ein nied­li­ches klei­nes Java­script­chen!

root@r4:~# apt install phantomjs
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  adwaita-icon-theme at-spi2-core geoclue-2.0 gtk-update-icon-cache
  hicolor-icon-theme iio-sensor-proxy libatk-bridge2.0-0 libatk1.0-0
  libatk1.0-data libatspi2.0-0 libavahi-glib1 libcairo-gobject2 libcolord2
  libcups2 libdouble-conversion1 libegl-mesa0 libegl1 libepoxy0 libevdev2
  libgbm1 libgles2 libgles2-mesa libgtk-3-0 libgtk-3-bin libgtk-3-common
  libhyphen0 libinput-bin libinput10 libmbim-glib4 libmbim-proxy libmm-glib0
  libmtdev1 libnotify4 libpcre2-16-0 libqmi-glib5 libqmi-proxy libqt5core5a
  libqt5dbus5 libqt5gui5 libqt5network5 libqt5positioning5 libqt5printsupport5
  libqt5qml5 libqt5quick5 libqt5sensors5 libqt5svg5 libqt5webchannel5
  libqt5webkit5 libqt5widgets5 librest-0.7-0 libsoup-gnome2.4-1 libwacom-bin
  libwacom-common libwacom2 libwayland-server0 libwoff1 libxcb-icccm4
  libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-util0
  libxcb-xinerama0 libxcb-xkb1 libxcomposite1 libxkbcommon-x11-0 modemmanager
  notification-daemon qt5-gtk-platformtheme qttranslations5-l10n
Suggested packages:
  colord cups-common gvfs qt5-image-formats-plugins qtwayland5
  qt5-qmltooling-plugins
The following NEW packages will be installed:
  adwaita-icon-theme at-spi2-core geoclue-2.0 gtk-update-icon-cache
  hicolor-icon-theme iio-sensor-proxy libatk-bridge2.0-0 libatk1.0-0
  libatk1.0-data libatspi2.0-0 libavahi-glib1 libcairo-gobject2 libcolord2
  libcups2 libdouble-conversion1 libegl-mesa0 libegl1 libepoxy0 libevdev2
  libgbm1 libgles2 libgles2-mesa libgtk-3-0 libgtk-3-bin libgtk-3-common
  libhyphen0 libinput-bin libinput10 libmbim-glib4 libmbim-proxy libmm-glib0
  libmtdev1 libnotify4 libpcre2-16-0 libqmi-glib5 libqmi-proxy libqt5core5a
  libqt5dbus5 libqt5gui5 libqt5network5 libqt5positioning5 libqt5printsupport5
  libqt5qml5 libqt5quick5 libqt5sensors5 libqt5svg5 libqt5webchannel5
  libqt5webkit5 libqt5widgets5 librest-0.7-0 libsoup-gnome2.4-1 libwacom-bin
  libwacom-common libwacom2 libwayland-server0 libwoff1 libxcb-icccm4
  libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-util0
  libxcb-xinerama0 libxcb-xkb1 libxcomposite1 libxkbcommon-x11-0 modemmanager
  notification-daemon phantomjs qt5-gtk-platformtheme qttranslations5-l10n
0 upgraded, 71 newly installed, 0 to remove and 0 not upgraded.
Need to get 42.7 MB of archives.
After this operation, 161 MB of additional disk space will be used.
Do you want to continue? [Y/n]

Das Ende ist nah!!!

0

Wertschätzung

Weil ich gera­de mal wie­der abends nach 22 Uhr allei­ne vorm Rech­ner sit­ze und dar­auf war­te, daß Die Bes­te Ehe­frau Von Allen (© Ephraim Kis­hon) end­lich vom Dienst nach Hau­se kommt: In was für einem Scheiß­land leben wir eigent­lich, in dem ein Aus­puffsound­op­ti­mie­rer bei Por­sche ein Viel­fa­ches einer Kran­ken­schwes­ter ver­dientbekommt, und das noch ohne Schich­ten?

🤮

 

0

All along the watchtower

Nein, es geht weder um Bob Dyl­an noch Jimi Hen­drix 🙂

Pro­blem: Docker selbst hat kein self-manage­ment, d.h., wenn es ein neu­es Image gibt, kriegt Docker das erst­mal nicht mit. Man muß sel­ber pul­len, um dann sowas zu krie­gen:

root@big:~# docker pull collabora/code
Using default tag: latest
latest: Pulling from collabora/code
Digest: sha256:1b53e1119f92eb99e07186a8afdda9be1179fcefcbda415ed5b7b4087e7617a1
Status: Image is up to date for collabora/code:latest
docker.io/collabora/code:latest
root@big:~#

Außer Spe­sen nichts gewe­sen — das Image ist aktu­ell. Aber das weiß ich eben erst, wenn ich das docker pull aus­füh­re. Man könn­te das per cron machen. Aber auch dann wür­de ein neu­es Image gepullt wer­den, aber es muß ja noch mehr gemacht wer­den dann: docker stop foobar && docker rm foobar && docker run foobar --with many arguments
Aber es geht auch ele­gan­ter — mit einem Con­tai­ner, der uns die Arbeit abnimmt: Watch­to­wer. Ich kann bestä­ti­gen: der küm­mert sich um alles — Down­load neu­er Images, Restart des Con­tai­ners. Auch sich selbst updatet er.
Zitat:

With watch­to­wer you can update the run­ning ver­si­on of your con­tai­ne­ri­zed app sim­ply by pushing a new image to the Docker Hub or your own image regis­try.

Das ver­wen­de ich zwar nicht, hört sich aber geil an: ein neu­es Image in die Regis­try pushen (egal ob Docker­hub oder die eige­ne) — und der Con­tai­ner wird auto­ma­tisch mit dem neu­en Image neu gestar­tet.
Hab’ ich mir jetzt meh­re­re Wochen ange­se­hen, funk­tio­niert, wirk­lich!
Natür­lich kann man das nur pri­vat und nicht pro­fes­sio­nell ein­set­zen: es funk­tio­niert ein­fach ohne jede wei­te­re Inter­ak­ti­on, es gibt kein User-inter­face, von einer GUI ganz zu schwei­gen. Das ist natür­lich nicht Enter­pri­se, weil völ­lig schmerz­frei, aber für klei­ne­re Hob­by-Pro­jek­te mag es ja rei­chen…

0

Das neue grep ist raus

get it while it’s hot 🙂

root@big:~# apt list --upgradable -a
Listing... Done
grep/bionic-updates 3.1-2build1 amd64 [upgradable from: 3.1-2]
grep/bionic,now 3.1-2 amd64 [installed,upgradable to: 3.1-2build1]

root@big:~#
0

Apple Watch, kein Siri

Ges­tern kam die neue Watch. Ein­rich­ten war ein Krampf. Time­routs über Time­outs beim Anmel­den, Her­un­ter­la­den der Aktua­li­sie­run­gen — schließ­lich ging es dann doch. Mei­ne Ver­mu­tung: Die Apple-Ser­ver sind ein­fach über­las­tet, weil jetzt die ers­ten Bestel­lun­gen aus­ge­lie­fert wur­den, vgl auch IOS 13.
Was nicht ging, und dich hat­te dann kei­nen Bock mehr zu Tes­ten: Siri. Kein Stück, nach kur­zer Bedenk­zeit mein­te Siri jedes­mal, sie kön­ne im Moment lei­der nicht…

Suchen, tes­ten. Stellt sich raus: Irgend­wie hat die Uhr kein Inter­net. Die Uhr bekommt ja ihr Inter­net über das Tele­fon, das Tele­fon hat aber Inter­net völ­lig pro­blem­los.
WTF???
Wei­ter­su­chen. Oha! Ich schi­cke mir sel­ber eine Nach­richt mit einer HTTPS-URL dar­in. Die Nach­richt kommt auf der Uhr an (via Blue­tooth vom Han­dy). URL kann auf der Uhr nicht auf­ge­ru­fen wer­den. Das­sel­be mit einer HTTP-URL funk­tio­niert. WTF^2??? (Neben­bei: es war eine Her­aus­for­de­rung, noch eine blan­ke HTTP-URL zu fin­den)
Das Tele­fon geht nicht direkt ins Inter­net, son­dern über einen Pro­xy (Squid + pri­v­o­xy mit easy­l­ist). Las­se ich das Tele­fon direkt ins Inter­net, geht auf ein­mal Siri. WTF^3???

Aus dem access_log des squid die ent­schei­den­de Zei­le:

25/Sep/2019:08:55:11 +0200 3 2001:470:6d:c40:20cc:7969:752:428c TAG_NONE/400 4441 NONE error:invalid-request - HIER_NONE/- text/html

Kei­ne Ahnung, ob ich das repa­riert bekom­me. Der Pro­xy fil­tert wun­der­bar Wer­bung und Tra­cker… — natür­lich geht jetzt Siri auch wie­der

0

Bei outlook.com darf jeder mal Absender faken

Nut­zer kommt, er sen­det mit sei­ner Fir­men-Adres­se von außer­halb der Fir­ma, und das geht aber nicht:

Weitere Informationen für E‑Mail-Administratoren
Sta­tus­code: 550 5.7.23

Die­ser Feh­ler tritt bei einem Feh­ler der SPF-Über­prü­fung (Sen­der Poli­cy Frame­work) für die Absen­der­do­mä­ne auf. Wenn Sie der E‑Mail-Admi­nis­tra­tor des Absen­ders sind, über­prü­fen Sie, ob die SPF-Ein­trä­ge für Ihre Domä­ne bei Ihrer Domä­nen­re­gis­trie­rungs­stel­le kor­rekt ein­ge­rich­tet sind. Office 365 unter­stützt nur einen SPF-Ein­trag (ein TXT-Ein­trag, der SPF defi­niert) für Ihre Domä­ne. Schlie­ßen Sie den fol­gen­den Domä­nen­na­men mit ein: spf.protection.outlook.com. Wenn Sie eine Hybrid­kon­fi­gu­ra­ti­on betrei­ben (mit eini­gen Post­fä­chern in der Cloud und eini­gen loka­len Post­fä­chern) oder ein eigen­stän­di­ger Exchan­ge Online Pro­tec­tion-Kun­de sind, fügen Sie dem TXT-Ein­trag die aus­ge­hen­de IP-Adres­se Ihres loka­len Ser­vers hin­zu.

Mal sehen:

~$ host -t txt spf.protection.outlook.com
spf.protection.outlook.com descriptive text "v=spf1 ip4:207.46.100.0/24 ip4:207.46.163.0/24 ip4:65.55.169.0/24 ip4:157.56.110.0/23 ip4:157.55.234.0/24 ip4:213.199.154.0/24 ip4:213.199.180.128/26 ip4:52.100.0.0/14 include:spfa.protection.outlook.com -all"
~$

Dar­un­ter also ein /14 und ein inclu­de.
Mal sehen:

~$ host -t txt spfa.protection.outlook.com
spfa.protection.outlook.com descriptive text "v=spf1 ip4:157.56.112.0/24 ip4:207.46.51.64/26 ip4:64.4.22.64/26 ip4:40.92.0.0/15 ip4:40.107.0.0/16 ip4:134.170.140.0/24 include:spfb.protection.outlook.com ip6:2001:489a:2202::/48 -all"
~$

Ein /16, ein /48 v6 und ein wei­te­rer inclu­de.
Mal sehen:

~$ host -t txt spfb.protection.outlook.com
spfb.protection.outlook.com descriptive text "v=spf1 ip6:2a01:111:f400::/48 ip4:23.103.128.0/19 ip4:23.103.198.0/23 ip4:65.55.88.0/24 ip4:104.47.0.0/17 ip4:23.103.200.0/21 ip4:23.103.208.0/21 ip4:23.103.191.0/24 ip4:216.32.180.0/23 ip4:94.245.120.64/26 -all"
~$

Noch ein /17 dar­un­ter.

Das sind ins­ge­samt ver­dammt vie­le Adres­sen, die mal eben im Namen der Fir­ma Mails ver­schi­cken sol­len kön­nen dür­fen. Aber nicht mit mir! 🙂

0