Ralf Hüsing

Juni 26, 2008

Wordpress nervt zwar aber ich lass es wie es ist

Abgelegt unter: Sonstiges — ralf @ 5:51 pm

Wie Paul so schön anmerkte nervt Wordpress, gut, stimm ich zu. Ein weiterer Punkt in seiner Auflistung ist das die Code Qualität (teilweise) unter aller Sau ist - evtl. kommen daher die teils gravierenden Sicherheitsprobleme. Mag sein das das in neueren Versionen behoben wurde.

Was mir übrigens gefällt ist das man in meinem Blog Kommentare posten kann ohne sich zuregistrieren - bei Paul geht das nicht. Mag nun nur eine Einstellungssache sein, aber für den User ists wurst. Ich schreibe deswegen einen Beitrag mit Trackback und setze keinen Kommentar bei Paul.

Juni 19, 2008

rcm-de.amazon.de schickt kaputte http header bei http pipeline

Abgelegt unter: Hirndefekt — ralf @ 9:47 pm

Ein HTTP-Pipeline Request gegen “rcm-de.amazon.de” gibt einen kaputten Connection Header zurück.
Die Buchstaben werden (irgendwie..) zufällig durcheinander gewürfelt:


$ nc rcm-de.amazon.de 80 < pipe.txt
HTTP/1.1 200 OK
Date: Thu, 19 Jun 2008 19:37:14 GMT
Server: Server
Cache-control: no-store
Content-Length: 2234
Cneonction: close
Content-Type: text/html

Date: Thu, 19 Jun 2008 19:37:14 GMT
Server: Server
Cache-control: no-store
Content-Length: 2234
Cneonction: close
Content-Type: text/html

Wobei “pipe.txt” in etwa wie folgt ausschaut:

HEAD /e/cm?t= HTTP/1.1
Host: rcm-de.amazon.de
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; de; rv:1.9) Gecko/2008052906 Firefox/3.0
Connection: keep-alive
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300

HEAD /e/cm?t= HTTP/1.1
Host: rcm-de.amazon.de
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; de; rv:1.9) Gecko/2008052906 Firefox/3.0
Connection: keep-alive
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300

Die Konsequenz dessen ist das Pipeline fähige Browser ihre Verbindung nicht umgehend beenden da es ja keinen “Connection: close” Header gab. Letzlich dürfte das unnötige offene Verbindungen bei Amazon’s HTTP-”Server” (der Name ist schon kreativ gewählt worden :-)) verursachen.

Webseiten Werbeblocker zentral im Windows Netzwerk über DNS

Abgelegt unter: Windows — ralf @ 7:22 pm

Zielsetzung

  • Werbung mit möglichst wenig Aufwand zentral Blockieren
  • Browser Unabhängig
  • Wenige bis keine Änderungen an den Netzwerk-Clients bzw. Browsern

Voraussetzung

  • Zentraler DNS Server
  • Alle Clients benutzen diesen DNS Server
  • (optional) lokaler Webserver

Umsetzung

Generell läuft es darauf hinaus das man komplette DNS-Zonen deaktiviert.
Hierbei ist besondere Vorsicht angebracht da man sehr schnell zuviel blockiert, also lieber zuwenig als zuviel blockieren. Nichts ist schlimmer wenn nach der Umsetzung die ganze Firma anruft.

Als erstes gilt es zu ermitteln welche Domains zu blockieren sind.
Dazu ruft man am einfachsten Webseiten auf, die ungewünschte Werbung darstellen und versucht die Ursprungsdomain der Werbung zu ermitteln.

Setzt man Windows 2000 ein sollte man als nächstes DNS-Wildcard Auflösung aktivieren.

Danach erstellt man im DNS Server eine neue Zone. Es ist hierbei unerheblich ob diese Aktive Directory integriert ist oder nicht.
In dieser Zone legt man einen neuen Hosteintrag an der keinen Namen hat. Als IP Adresse verwendet man entweder die eines lokalen Webservers oder 127.0.0.1. Die Folgende Warnmeldung kann man getrost bestätigen.
Danach legt man unter dieser Zone eine “Neue Domäne” mit der Bezeichnung “*” an, darunter dann
wieder einen Hosteintrag mit der IP des lokalen Webservers oder 127.0.0.1.

Das Ergebniss könnte dann in etwa wie folgt aussehen:


Windows 2000 DNS Konfiguration

Windows 2000 DNS Konfiguration

Hat man sekundäre DNS Server darf man nicht vergessen zum einen die Zonenübertragung zu aktivieren und zum anderen die neuen Zonen auch auf den sekundären DNS Servern einzurichten.

Damit ist die Hauptarbeit erledigt.
Jegliche DNS Aufrufe gegen zBspl. “ads.msn.com” beantwortet der DNS Server mit der gleichen Antwort:


Windows 2000 DNS nslookup

Zum sofortigen Testen ist es oft nötig den lokalen DNS Cache zu leeren: ipconfig /flushdns.

Möchte man die Werbeanfragen auf einen lokalen Webserver weiterleiten um darauf individuell zu Antworten kann man Apache so Konfigurieren das er auf alle Anfragen gleich antwortet:

NameVirtualHost *:80
<VirtualHost *:80>
ServerName *
DocumentRoot /home/www/catchall.our.dom/htdocs
AliasMatch /(.*)$ /home/www/catchall.our.dom/htdocs/index.php/$1
</VirtualHost>

Dadurch wird von jedem Browser statt der Werbung die index.php aufgerufen.

In meinem Fall enthält diese Code der den Browser auf eine statische lokale Datei umlenkt.
Dies hat zwei Vorteile: Zum einen kann der Browser die Weiterleitung sowie die Ziel Datei zwischenspeichern, zum anderen wird durch Apache der richtige Content-Type zurückgeschickt.
Die Dateien habe ich manuell als leere bzw. 10×10 weiße Pixel Bilder angelegt.
Zusätzlich wird noch ein Apache error.log Eintrag generiert.
Wichtig ist das im Webserver ein Extra-VHost anlegt wird sonst der catchall-vhost die Anfragen gegen diese statischen Dateien beantworten würde - was vermutlich zu einer Endlos Schleife führt.


<?php
error_reporting (E_NONE);

$log = '';
$log .= 'HTTP_HOST=' . $_SERVER['HTTP_HOST'] . ‘ ‘;
$log .= ‘REQUEST_URI=’ . $_SERVER['REQUEST_URI'] . ‘ ‘;

$match = array();
$blank = ‘index.html’;

if (TRUE == preg_match(’/.+\.(js|jpe?g|css|png|bmp|x?html?|php|cfm|gif)/i’, $_SERVER['REQUEST_URI'], $match)) {
$blank = ‘blank.’ . $match[1];
}
header (’HTTP/1.1 301 Moved Permanently‘, TRUE, 301);
header (’Location: http://static.our.dom/catchall/’ . $blank, TRUE);

$log = ‘BLANK=’. $blank. ‘ ‘ . $log;

error_log ($log,0);

?>

Es kann passieren das Webseiten nicht mehr ordnungsgemäß funktionieren wenn Teile davon deaktiviert werden. Der Internet Explorer 6 meckert dies manchmal an was man in den Einstellungen deaktivieren kann:


Internet Explorer 6: Script Debugging deaktivieren

Zum Abschluß sei noch zu erwähnen das Werbung natürlich auch lokal gefiltert werden kann.

Nahezu jeder Browser bietet dazu Addons oder von Haus aus seine Möglichkeiten.
Bei FireFox zBspl. das AdBlock AddOn, bei Opera kann man Inhalte direkt blockieren, umfangreiche Filterlisten gibt es natürlich auch.
Für den Internet Explorer bleibt meines Wissens nach nur die Möglichkeit die DNS Auflösung lokal in der “C:\WINNT\system32\drivers\etc\hosts” Datei zu deaktivieren.

Juni 18, 2008

Spiel Statistiken in CoD4

Abgelegt unter: Call of Duty 4 — ralf @ 6:41 pm

Die Statistiken in Call of Duty 4 bei zBspl. Team-Deathmatch sind meiner Meinung nach alles andere als Gut.

Soweit ich das Überblicken kann errechnen sich die Punkte für einen einzelnen Spieler wie folgt: (Abschüsse * 10) + (Assists * 2).
Hat man also einen Abschuss und einen Assist erhält man 102 Punkte.
Das stimmt in 99.9% der von mir beobachteten Fälle, manchmal stimmts aber nicht ganz. Evtl. wenn man jemand aus seinem eigenen Team auf dem Gewissen hat.

Die Punkte für das ganze Team sollte die Summe aus den einzel Punkten jedes Spielers sein - das hab ich allerdings nicht verifiziert.

Mein Kritikpunkt ist das folgende Eigenschaften garkeine Beachtung finden.

Verhältniss zwischen Abschüssen und eigenen Toden

Zum besseren Verständniss mal ein theoretisches CoD4 Ergebniss:

Spieler Abschüsse Tode CoD4-Punkte
A 100 100 100
B 10 0 10

Welcher der beiden Spieler ist nun tatsächlich der bessere?
Die Zahlen absolut zu betrachten macht natürlich keinen Sinn da die Spieldauer des jeweiligen Spielers beachtet werden muss. Beispielsweise 100 Kills in 30 Minuten (3,33 Kills/Minute) im Vergleich zu 10 Kills in einer Minute (10 Kills/Minute).

Verhältniss eines einzelnen Spielers zum Team

Call of Duty ist ein Team Spiel. Konsequenterweise sollte dies bedeuten das ein Spieler nur so gut ist wie sein eigentliches Team. Diese Annahme fehlt aber gänzlich in den Statistiken für ein Spiel.
Meiner Meinung nach sollten die Punkte eines einzelnen Spielers relativ zu den anderen Spielern im Team stehen.
Die Gesamtpunkte des jeweiligen Teams sollte dann die Summe aus den realtiven Spielerpunkten sein.

Der Raketen oder Granaten - Werfer in CoD4

Abgelegt unter: Call of Duty 4 — ralf @ 6:24 pm

Ich finde man sollte in Call of Duty 4 den Raketenwerfer bzw. Granatenwerfer nicht verwenden.

Der Grund ist relativ einfach: Es erfordert nicht wirklich viel Geschick mit einer solchen Waffe in diesem Spiel einen möglichst großen Effekt zu erzielen.

Anders gesagt, verwendet man eine andere Waffe, zBspl. das G3, und ist damit erfolgreich kann man von sich selbst sagen das man Skill hat.

Powered by WordPress ( WordPress Deutschland )