<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>alexanderkoch.net</title>
	<atom:link href="http://alexanderkoch.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://alexanderkoch.net</link>
	<description>Just another freak's blog</description>
	<lastBuildDate>Sat, 04 Sep 2010 14:31:17 +0000</lastBuildDate>
	<generator>http://wordpress.org</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Aktueller Desktop</title>
		<link>http://alexanderkoch.net/2010/aktueller-desktop/</link>
		<comments>http://alexanderkoch.net/2010/aktueller-desktop/#comments</comments>
		<pubDate>Sat, 04 Sep 2010 14:31:17 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[screenshots]]></category>
		<category><![CDATA[screenshot]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=770</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<div id="attachment_771" class="wp-caption aligncenter" style="width: 310px"><a href="http://alexanderkoch.net/wp-content/uploads/2010/09/screeny10.png" rel="shadowbox[post-770];player=img;" title="Screeny"><img class="size-medium wp-image-771" title="Screeny" src="http://alexanderkoch.net/wp-content/uploads/2010/09/screeny10-300x168.png" alt="" width="300" height="168" /></a><p class="wp-caption-text">KDE SC 4.5.1, Conky, Kopete und Clementine</p></div>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/aktueller-desktop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Audigy 2 &#8211; Eine Ode an die Vergangenheit</title>
		<link>http://alexanderkoch.net/2010/audigy-2-eine-ode-an-die-vergangenheit/</link>
		<comments>http://alexanderkoch.net/2010/audigy-2-eine-ode-an-die-vergangenheit/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 15:15:26 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[alsa]]></category>
		<category><![CDATA[audigy]]></category>
		<category><![CDATA[pinout]]></category>
		<category><![CDATA[sound]]></category>
		<category><![CDATA[soundblaster]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=756</guid>
		<description><![CDATA[&#8230; oder Früher war alles besser! Der letzte Jammerpost beschreibt den Ärger, den man heute immer noch mit dem Thema &#8220;Sound unter Linux&#8221; haben kann &#8211; zumindest bei neuer (und minderwertiger) Hardware. Völlig schmerzfrei und absolut out-of-the-box kann es dagegen bei älterer (bzw. hochwertigerer) Hardware laufen:
Beim Verfassen des vergangenen Posts habe ich mich immer wieder [...]]]></description>
			<content:encoded><![CDATA[<p><strong>&#8230; oder <em>Früher war alles besser! </em>Der letzte Jammerpost beschreibt den Ärger, den man heute immer noch mit dem Thema &#8220;Sound unter Linux&#8221; haben kann &#8211; zumindest bei neuer (und minderwertiger) Hardware. Völlig schmerzfrei und absolut out-of-the-box kann es dagegen bei älterer (bzw. hochwertigerer) Hardware laufen:</strong></p>
<p>Beim Verfassen des vergangenen Posts habe ich mich immer wieder versucht, zu erinnern, wie das früher so mit ALSA &amp; Co. lief; dabei viel mir meine gute, alte <strong>Creative Soundblaster Audigy 2 Platinum</strong> ein, die irgendwo im Keller in der Hardwarekiste vor sich hin gammelte. <em>&#8220;Moment, die war doch hardwaremixing-fähig&#8230;&#8221;</em> &#8211; kurz Google befragt und bestätigt.</p>
<p>Problem bei der Audigy (und Grund für das Triste Dasein in der Kiste) war, dass das zugehörige Output-Rack für die Front bei Einbau in einen 5,25&#8243;-Schacht aufgrund der herausstehenden Regler das Schließen meiner Gehäusetür verhindern würde. Ohne Rack hätte es jedoch keinen Kopfhörer- und Mikro-Ausgang vorne am Gehäuse gegeben. Zumindest nicht so ohne Weiteres, was ich damals noch nicht wusste&#8230;</p>
<p><a href="http://alexanderkoch.net/wp-content/uploads/2010/09/IMG_0768b.jpg" rel="shadowbox[post-756];player=img;" title="AC97 Adapter"><img src="http://alexanderkoch.net/wp-content/uploads/2010/09/IMG_0768b-150x150.jpg" alt="" title="AC97 Adapter" width="150" height="150" class="alignright size-thumbnail wp-image-761" /></a>Nach ein par Google-Orgien fand ich diverse HowTos (z.B. <a href="http://audigy2zshowto.blogspot.com/" target="_blank">hier</a> oder <a href="http://www.hifi-forum.de/viewthread-54-1967.html" target="_blank">hier</a>), wie man an einen internen, 10-poligen Anschluss auf der Karte ein AC&#8217;97- bzw. HD-Audio Frontpanel anschließen kann. Nun ist dieser Anschluss leider bei der Audigy 2 (ohne &#8220;ZS&#8221;) leider nicht bestückt &#8211; also Arbeit für den Lötkolben. Mit ein paar Zentimetern altem Telefonkabel konnte ich die benötigten Pins (1, 2, 4, 6, 8<!-- -->) schließlich emulieren und mithilfe einer kurzerhand umfunktionierten USB-Buchse an mein Frontpanel anschließen. Hierbei noch ein Tip: Wer Pin 1 (HP-Masse) nicht festgelötet bekommt, kann sich die Masse auch einfach vom Slotblech holen, verursacht keine Störgeräusche.</p>
<p>Also dann im BIOS die onboard-Karte deaktiviert, System gebootet und noch flux das <code>emu10k1</code>-Modul gebacken &#8211; fertig. Sound läuft direkt über ALSA mit parallelem Zugriff, 5.1 mit 48000Hz, out-of-the-box. Kein Soundserver, keine <code>/etc/asound.conf</code>, keine <code>~/.asoundrc</code> &#8211; so einfach und elegant kann Sound unter Linux auch sein, die richtige Karte vorausgesetzt. Leider haben selbst die etwas besseren (=teureren) aktuellen Karten kaum noch Hardwaremixer.</p>
<p>Upmixing für Stereo-Signale erreiche ich mit den folgenden paar Zeilen:</p>

<div class="wp_syntax"><div class="code"><pre class="none" style="font-family:monospace;"># /etc/asound.conf
&nbsp;
pcm.ch51dup {
    type plug
    slave.pcm &quot;surround51&quot;
    slave.channels 6
    route_policy duplicate
}</pre></div></div>

<p>Früher waren also zumindest die Soundkarten besser <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/audigy-2-eine-ode-an-die-vergangenheit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ALSA, OSS4, PulseAudio, Jack &#8211; and back</title>
		<link>http://alexanderkoch.net/2010/alsa-oss4-pulseaudio-jack-and-back/</link>
		<comments>http://alexanderkoch.net/2010/alsa-oss4-pulseaudio-jack-and-back/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 19:16:47 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Unkategorisiert]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[alsa]]></category>
		<category><![CDATA[asus]]></category>
		<category><![CDATA[dmix]]></category>
		<category><![CDATA[jack]]></category>
		<category><![CDATA[oss]]></category>
		<category><![CDATA[oss4]]></category>
		<category><![CDATA[pulseaudio]]></category>
		<category><![CDATA[sound]]></category>
		<category><![CDATA[x-fi]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=743</guid>
		<description><![CDATA[Übers Wochenende habe ich mich meinem Problem gewidmet, bei gestartetem Chromium keinen Sound mehr über mplayer ausgeben zu können.
Hardware: SupremeFX X-Fi* Soundkarte, analoges Logitech 5.1 System
Ich wusste, dass meine Karte nicht hardwaremixing-fähig ist, also war dmix die erste Anlaufstelle. Laut Arch-Wiki ist dmix allerdings ab ALSA 1.0.9rc2 automatisch aktiv, also habe ich da nicht weiter [...]]]></description>
			<content:encoded><![CDATA[<p>Übers Wochenende habe ich mich meinem Problem gewidmet, bei gestartetem Chromium keinen Sound mehr über mplayer ausgeben zu können.</p>
<p><strong>Hardware:</strong> <strong><em>SupremeFX X-Fi<a href="#soundkarte">*</a> </em><span style="font-weight: normal;">Soundkarte, analoges </span>Logitech 5.1<span style="font-weight: normal;"> System</span></strong></p>
<p>Ich wusste, dass meine Karte nicht hardwaremixing-fähig ist, also war <strong>dmix</strong> die erste Anlaufstelle. Laut Arch-Wiki ist dmix allerdings ab ALSA 1.0.9rc2 <a title="Arch Wiki: dmix" href="http://wiki.archlinux.org/index.php/Allowing_Multiple_Programs_to_Play_Sound#dmix_-_Alsa.27s_Software_Mixing_System." target="_blank">automatisch aktiv</a>, also habe ich da nicht weiter gedreht und nach Alternativen gesucht.</p>
<p><a href="http://en.wikipedia.org/wiki/Open_Sound_System" target="_blank" title="Wikipedia (en): OSS">OSS4</a> ist die Neuimplementierung des alten Unix Standard-Audiosystems, und erfreulicherweise vollständig kompatibel, d.h. ich hätte keine Anwendungen patchen müssen &#8211; also erste Wahl.<br />
Die Installation lief problemlos (vgl. <a title="Arch Wiki: OSS" href="http://wiki.archlinux.org/index.php/OSS" target="_blank">Wiki</a>), allerdings wird meine tolle Soundkarte noch nicht offiziell unterstützt und ich bekam nur Stereo-Output, mit dem Kopfhörerausgang als primärem Ausgabemodul.</p>
<p>Nachdem die beiden existierenden direkten Hardware ansprechenden Möglichkeiten ausgeschöpft waren also ran an die Soundserver &#8211; allen voran <strong><a href="http://de.wikipedia.org/wiki/PulseAudio" title="Wikipedia: PulseAudio" target="_blank">PulseAudio</a></strong> als prominentestem Vertreter. Auch hier lief die Installation reibungslos; nach ein paar Eingriffen in die Configs gem. Wiki hatte ich ein statisches 5.1 Setup mit 48000Hz und Upsampling. Problem hierbei: ein penetrantes Kratzen im hochfrequenten Bereich, das alle Stimmen extrem blechern wirken ließ, neben einem viel zu schwachen Subwoofer-Kanal. Hat mich an meine Windows-Zeit erinnert, als ich mit einer Audigy 2 und denselben Boxen mal die <em>Bass-Umleitung</em> aktiviert hatte. Hierfür habe ich keine Lösung gefunden, also nächster Versuch.</p>
<p><a href="http://de.wikipedia.org/wiki/JACK_Audio_Connection_Kit" title="Wikipedia: JACK" target="_blank"><strong>JACK</strong></a> war meine letzte Idee, und ebenfalls schnell aufgesetzt (de facto war hier eigentlich nichts aufzusetzen, da bereits installiert &#8211; musste nur gestartet werden). Problem mit JACK war mal wieder das Multiplexing, bei parallelen Zugriffen bekam der zweite Client <em>Device or Ressource busy.</em></p>
<p>Etwas genervt von der Rumprobiererei galt der letzte Blick wieder <strong>dmix</strong>, und siehe da: ein manuell per <code>/etc/asound.conf</code> eingebundenes dmix ermöglicht nun mplayer und flash-Audio parallel &#8211; ganz ohne Soundserver <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

<div class="wp_syntax"><div class="code"><pre class="none" style="font-family:monospace;"># /etc/asound.conf:
pcm.!default {
    type plug
    slave.pcm &quot;dmixer&quot;
}
&nbsp;
pcm.dsp0 {
    type plug
    slave.pcm &quot;dmixer&quot;
        hint {
         show on
         description &quot;dmix dsp0&quot;
    }
}
&nbsp;
pcm.dmixer {
    type dmix
    ipc_key 1024
    slave {
        pcm &quot;hw:0,0&quot;
        period_time 0
        period_size 1024
        buffer_size 8192
        rate 48000
    }
}
&nbsp;
ctl.dmixer {
    type hw
    card 0
}</pre></div></div>

<p>Genervt hat übrigens die ganze Zeit über auch knotify4, dass ständig alle möglichen devices blockierte und des Öfteren mit SEGFAULT abstürzte. Hier warte ich gespannt auf KDE 4.5, wo selbiges komplett überholt sein soll.</p>
<hr />
<p style="font-size: 9px;"><a name="soundkarte">*</a> Ein von ASUS groß als <em>X-Fi</em> mit EAX4 beworbenes Müll-Teil, was eigentlich einen ganz anderen Chip besitzt und sich nur ähnlich einer <em>X-Fi</em> verhält. Wird von so gut wie keinem Spiel als EAX-fähig erkannt und sorgt bei unzähligen Usern für Probleme, siehe Foren.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/alsa-oss4-pulseaudio-jack-and-back/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>aerotools Update</title>
		<link>http://alexanderkoch.net/2010/aerotools-update/</link>
		<comments>http://alexanderkoch.net/2010/aerotools-update/#comments</comments>
		<pubDate>Wed, 18 Aug 2010 15:44:07 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[aerotools]]></category>
		<category><![CDATA[aquaero]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[code]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=740</guid>
		<description><![CDATA[Dank der Semesterferien fand ich nun endlich Zeit, mein aerotools-Projekt auf Vordermann zu bringen. Neben einigen Bugfixes und Vereinfachungen am Daemon habe ich die Library auf libusb-1.0 portiert, was laut Homepage die empfohlene, aktuelle Version ist. Unter Arch coexistiert sie als libusb1 neben der libusb, die standardmäßig installiert wird &#8211; etwas verwirrend, wenn man den Hinweistext auf [...]]]></description>
			<content:encoded><![CDATA[<p>Dank der Semesterferien fand ich nun endlich Zeit, mein <em><a title="aerotools auf Github" href="http://github.com/lynix/aerotools" target="_blank">aerotools</a></em>-Projekt auf Vordermann zu bringen. Neben einigen Bugfixes und Vereinfachungen am Daemon habe ich die Library auf <em>libusb-1.0</em> portiert, was laut Homepage die empfohlene, aktuelle Version ist. Unter Arch coexistiert sie als <em>libusb1</em> neben der <em>libusb</em>, die standardmäßig installiert wird &#8211; etwas verwirrend, wenn man den Hinweistext auf der Homepage nicht gelesen hat <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Alle aquaero®-Besitzer seien also herzlich eingeladen, die neue Version zu testen! Bugreports sind immer willkommen, am Besten über die &#8220;Issues&#8221;-Funktion auf Github.</p>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/aerotools-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>logcheck-rules prüfen</title>
		<link>http://alexanderkoch.net/2010/logcheck-rules-prufen/</link>
		<comments>http://alexanderkoch.net/2010/logcheck-rules-prufen/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 20:28:17 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Unkategorisiert]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[logcheck]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=735</guid>
		<description><![CDATA[Beim Ändern von ignore-Regelsätzen für logcheck unterlaufen mir ganz gern Tippfehler in komplexeren Ausdrücken. Dumm nur, wenn ich das erst beim nächsten Cron-Run merke, in Form einer solchen Meldung:
egrep: Unmatched ) or \)
Toll: weder Regelsatz noch Zeilennummer werden genannt, also manuell suchen. Da es sich aber meist um umfangreiche Regelsätze handelt und ich (selbst bei [...]]]></description>
			<content:encoded><![CDATA[<p>Beim Ändern von ignore-Regelsätzen für <strong><code><a href="http://www.logcheck.org/" target="_new">logcheck</a></code></strong> unterlaufen mir ganz gern Tippfehler in komplexeren Ausdrücken. Dumm nur, wenn ich das erst beim nächsten Cron-Run merke, in Form einer solchen Meldung:</p>
<p><code>egrep: Unmatched ) or \)</code></p>
<p>Toll: weder Regelsatz noch Zeilennummer werden genannt, also manuell suchen. Da es sich aber meist um umfangreiche Regelsätze handelt und ich (selbst bei gefundenem Satz) keine Möglichkeit gefunden habe, egrep die Zeilennummer des ungültigen Ausdrucks zu entlocken, entstand auf die Schnelle folgendes simples Script:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$#</span> <span style="color: #660033;">-ne</span> <span style="color: #000000;">1</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;usage: $0 RULES_FILE&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">1</span>
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #000000; font-weight: bold;">!</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-r</span> <span style="color: #ff0000;">&quot;$1&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;unable to read $1&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">1</span>
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
<span style="color: #007800;">LINES</span>=$<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">wc</span> <span style="color: #660033;">-l</span> <span style="color: #ff0000;">&quot;$1&quot;</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">cut</span> <span style="color: #660033;">-d</span> <span style="color: #ff0000;">' '</span> <span style="color: #660033;">-f</span> <span style="color: #000000;">1</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">for</span> I <span style="color: #000000; font-weight: bold;">in</span> $<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">seq</span> <span style="color: #007800;">$LINES</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>; <span style="color: #000000; font-weight: bold;">do</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;line <span style="color: #007800;">$I</span>...&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;foo&quot;</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">egrep</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$(cat &quot;$1&quot; | head -n $I | tail -n 1)</span>&quot;</span>
<span style="color: #000000; font-weight: bold;">done</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">0</span></pre></div></div>

<p>Es gibt bestimmt auch irgendeine elegantere Lösung, aber vielleicht erspart es ja jemandem die nervige Sucherei <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/logcheck-rules-prufen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Browser Benchmark: Chromium cheatet</title>
		<link>http://alexanderkoch.net/2010/browser-benchmark-chromium-cheatet/</link>
		<comments>http://alexanderkoch.net/2010/browser-benchmark-chromium-cheatet/#comments</comments>
		<pubDate>Thu, 22 Jul 2010 17:29:39 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[benchmark]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[chromium]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[peacekeeper]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=710</guid>
		<description><![CDATA[Fasziniert von der Entdeckung eines Browserbenchmarks (Peacekeeper) gleich mal an meinem per ramdisk getunten Firefox 3.6.7 und der aktuellen Chromium-Version aus den Arch Repos (﻿﻿﻿﻿5.0.375.99) ausprobiert. Bittere Niederlage für Firefox:
Kurios bei der Ausführung: Chromium cheatet    Beim Rendering-Test Stufe 1 mit den Kugeln sollen selbige nicht nur an den &#8220;Wänden&#8221;, sondern auch gegenseitig abprallen, was [...]]]></description>
			<content:encoded><![CDATA[<p>Fasziniert von der Entdeckung eines Browserbenchmarks (<a title="Peacekeeper Benchmark" href="http://service.futuremark.com/peacekeeper" target="_blank">Peacekeeper</a>) gleich mal an meinem per ramdisk getunten Firefox 3.6.7 und der aktuellen Chromium-Version aus den Arch Repos (﻿﻿﻿﻿5.0.375.99) ausprobiert. Bittere Niederlage für Firefox:</p>
<div id="attachment_711" class="wp-caption aligncenter" style="width: 310px"><a href="http://alexanderkoch.net/wp-content/uploads/2010/07/peacekeeper1.png" rel="shadowbox[post-710];player=img;" title="Benchmark"><img class="size-medium wp-image-711" title="Benchmark" src="http://alexanderkoch.net/wp-content/uploads/2010/07/peacekeeper1-300x188.png" alt="" width="300" height="188" /></a><p class="wp-caption-text">Firefox vs. Chromium</p></div>
<p>Kurios bei der Ausführung: <strong>Chromium cheatet</strong> <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   Beim Rendering-Test Stufe 1 mit den Kugeln sollen selbige nicht nur an den &#8220;Wänden&#8221;, sondern auch gegenseitig abprallen, was Firefox korrekt umsetzt. Chromium hingegen scheint sich die Kollisionsabfrage der Kugeln untereinander zu sparen und lässt sie tunneln:</p>
<div id="attachment_712" class="wp-caption aligncenter" style="width: 310px"><a href="http://alexanderkoch.net/wp-content/uploads/2010/07/peacekeeper2.png" rel="shadowbox[post-710];player=img;" title="Chromium cheatet"><img class="size-medium wp-image-712" title="Chromium cheatet" src="http://alexanderkoch.net/wp-content/uploads/2010/07/peacekeeper2-300x217.png" alt="" width="300" height="217" /></a><p class="wp-caption-text">Tunneleffekt</p></div>
<p>Ich schließe mal böse Absicht aus; wer die gegebenen JavaScript-Algorithmen jetzt korrekt umsetzt und damit &#8220;Recht&#8221; hat, bleibt zu klären <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>Update:</strong> Hier der Link zum Eintrag im <a href="http://code.google.com/p/chromium/issues/detail?id=43222" target="_blank">Bugtracker</a></p>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/browser-benchmark-chromium-cheatet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Temperatur &gt; Tuning</title>
		<link>http://alexanderkoch.net/2010/temperatur-tuning/</link>
		<comments>http://alexanderkoch.net/2010/temperatur-tuning/#comments</comments>
		<pubDate>Mon, 28 Jun 2010 20:51:22 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Unkategorisiert]]></category>
		<category><![CDATA[corei7]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[temperatur]]></category>
		<category><![CDATA[tuning]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=689</guid>
		<description><![CDATA[ Meinen Core i7-920 (2.67GHz Standardtakt) hatte ich bis vor kurzem noch per BCLK auf 3.6GHz übertaktet, was bei den 2009er Modellen erfreulicherweise recht zuverlässig funktioniert &#8211; ambitioniertere Tuner jagen die Dinger sogar permanent auf über 4GHz hoch. Negativer Nebeneffekt der Sache: Hitze. Der (alte) Core i7 hat mit 130W TDP auf Standardtakt schon eine [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://alexanderkoch.net/wp-content/uploads/2010/06/Corei7.png" alt="" title="Corei7" width="57" height="70" class="alignleft size-full wp-image-697" style="padding-top: 5px; padding-right: 7px;" /> Meinen <strong>Core i7-920</strong> (2.67GHz Standardtakt) hatte ich bis vor kurzem noch per BCLK auf 3.6GHz übertaktet, was bei den 2009er Modellen erfreulicherweise recht zuverlässig funktioniert &#8211; ambitioniertere Tuner jagen die Dinger sogar permanent auf über 4GHz hoch. Negativer Nebeneffekt der Sache: Hitze. Der (alte) Core i7 hat mit <strong>130W TDP</strong> auf Standardtakt schon eine recht hohe Verlustleistung; übertaktet entwickelt er sich dann endgültig zum Hitzkopf.</p>
<p><a href="http://alexanderkoch.net/wp-content/uploads/2010/06/IMG_0682.jpg" rel="shadowbox[post-689];player=img;" title="WaKü"><img src="http://alexanderkoch.net/wp-content/uploads/2010/06/IMG_0682-150x150.jpg" alt="" title="WaKü" width="120" height="120" class="alignright size-thumbnail wp-image-701" style="padding-top: 5px; padding-left: 7px;" /></a>Trotz Wasserkühlung knackte mein Exemplar so nicht selten die <strong>70°C</strong> &#8211; Marke, was mir im Hinblick auf den Sommer einige Sorgen bereitete. Zugegeben, mein System hat in Punkto Kühlungsdesign zwei entscheidende Defizite: 1.) Im Kreislauf hängt neben CPU auch eine GTX 280 als GraKa, die nicht unerheblich zur Hitze beiträgt. 2.) Der Rechner steht eingekeilt zwischen Schreibtisch-Seitenteil, Schrank und Tischplatte, sodass nur nach vorne Luft zu- und wegströmen kann.</p>
<p>Das alles veranlasste mich kürzlich zu einem konkreten Benchmark mit linpack:</p>

<div class="wp_syntax"><div class="code"><pre class="none" style="font-family:monospace;">Intel(R) LINPACK data
&nbsp;
Current date/time: Fri May  7 19:49:37 2010
&nbsp;
CPU frequency:    3.610 GHz
Number of CPUs: 8
Number of threads: 8
&nbsp;
Parameters are set to:
&nbsp;
Number of tests                             : 1
Number of equations to solve (problem size) : 21000
Leading dimension of array                  : 21000
Number of trials to run                     : 100  
Data alignment value (in Kbytes)            : 4    
&nbsp;
Maximum memory requested that can be used = 3528424096, at the size = 21000
&nbsp;
============= Timing linear equation system solver =================
&nbsp;
Size   LDA    Align. Time(s)    GFlops   Residual     Residual(norm)
21000  21000  4      252.846    24.4215  3.959026e-10 3.178913e-02
21000  21000  4      252.587    24.4466  3.959026e-10 3.178913e-02
21000  21000  4      252.602    24.4451  3.959026e-10 3.178913e-02
21000  21000  4      252.614    24.4439  3.959026e-10 3.178913e-02
21000  21000  4      252.531    24.4520  3.959026e-10 3.178913e-02
21000  21000  4      252.550    24.4501  3.959026e-10 3.178913e-02
21000  21000  4      252.500    24.4549  3.959026e-10 3.178913e-02
21000  21000  4      252.466    24.4583  3.959026e-10 3.178913e-02
21000  21000  4      252.481    24.4568  3.959026e-10 3.178913e-02
21000  21000  4      252.489    24.4560  3.959026e-10 3.178913e-02
21000  21000  4      252.467    24.4582  3.959026e-10 3.178913e-02
21000  21000  4      252.475    24.4574  3.959026e-10 3.178913e-02
21000  21000  4      252.482    24.4567  3.959026e-10 3.178913e-02
21000  21000  4      252.477    24.4573  3.959026e-10 3.178913e-02</pre></div></div>


<div class="wp_syntax"><div class="code"><pre class="none" style="font-family:monospace;">Intel(R) LINPACK data
&nbsp;
Current date/time: Mon May 10 20:33:50 2010
&nbsp;
CPU frequency:    2.670 GHz
Number of CPUs: 8
Number of threads: 8
&nbsp;
Parameters are set to:
&nbsp;
Number of tests                             : 1
Number of equations to solve (problem size) : 21000
Leading dimension of array                  : 21000
Number of trials to run                     : 100  
Data alignment value (in Kbytes)            : 4    
&nbsp;
Maximum memory requested that can be used = 3528424096, at the size = 21000
&nbsp;
============= Timing linear equation system solver =================
&nbsp;
Size   LDA    Align. Time(s)    GFlops   Residual     Residual(norm)
21000  21000  4      342.691    18.0188  3.959026e-10 3.178913e-02
21000  21000  4      342.756    18.0154  3.959026e-10 3.178913e-02
21000  21000  4      342.765    18.0149  3.959026e-10 3.178913e-02
21000  21000  4      342.770    18.0146  3.959026e-10 3.178913e-02</pre></div></div>

<p>Summa summarum also ~25% Performance-Einbuße, genau der linearer Weise erwartete Wert. Nun zu den Auswirkungen auf die Temperaturen:</p>
<table border="0">
<tr>
<td width="20%"></td>
<td width="20%"><strong>CPU idle</strong></td>
<td width="20%"><strong>CPU Last</strong></td>
<td width="20%"><strong>Case</strong></td>
<td width="20%"><strong>Wasser</strong></td>
</tr>
<tr>
<td><strong>OC&#8217;ed</strong></td>
<td>47°C</td>
<td>75°C</td>
<td>38°C</td>
<td>43°C</td>
</tr>
<tr>
<td><strong>norm.</strong></td>
<td>42°C</td>
<td>53°C</td>
<td>31°C</td>
<td>33°C</td>
</tr>
</table>
<p>Alle Werte außer &#8220;CPU Last&#8221; beziehen sich auf eine Uptime von ca. 4h bei normalem Office-Workload und einer Raumtemperatur von ca. 23°C.</p>
<p><strong>Fazit: </strong>25% weniger (theoretische) CPU-Performance für 30% bessere Temperaturwerte &#8211; für den Sommer ein wie ich finde fairer Tausch. Zumal bei den einzigen wirklich Rechenintensiven Anwendungen (Games!) hauptsächlich GPU und weniger CPU belastet wird.</p>
<p>Hier noch die relevanten Settings für beide Modi:</p>
<table border="0">
<tr>
<td width="20%"></td>
<td width="20%"><strong>BCLK</strong></td>
<td width="20%"><strong>Multipl.</strong></td>
<td width="20%"><strong>DRAM Freq.</strong></td>
<td width="20%"><strong>VCore</strong></td>
</tr>
<tr>
<td><strong>OC&#8217;ed</strong></td>
<td>180.0MHz</td>
<td>20.0</td>
<td>DDR3-1443MHz</td>
<td>1.18750V</td>
</tr>
<tr>
<td><strong>norm.</strong></td>
<td>133.0MHz</td>
<td>20.0</td>
<td>&#8211;*</td>
<td>&#8211;*</td>
</tr>
</table>
<p>Die *-Werte werden noch nachgeliefert. Am VCore könnte man sicher noch etwas Undervolting betreiben, hier heißt das Ziel <1.0V <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/temperatur-tuning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iptables init-script für Arch</title>
		<link>http://alexanderkoch.net/2010/iptables-init-script-fur-arch/</link>
		<comments>http://alexanderkoch.net/2010/iptables-init-script-fur-arch/#comments</comments>
		<pubDate>Mon, 28 Jun 2010 19:31:26 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[arch-hacks]]></category>
		<category><![CDATA[sicherheit]]></category>
		<category><![CDATA[arch]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=685</guid>
		<description><![CDATA[Ja, das vom Paket iptables mitgebrachte init-script leistet wunderbare Dienste. Nein, es besteht kein akuter Grund, eine Alternative zu schreiben&#8230;
Einen Nachteil hat es schon: die Konfiguration wird in einem nicht kommentierbaren Format hinterlegt, was bei mir in letzter Zeit ständig zur Frage &#8220;WTF hat doch gleich dieser Port da verloren? Was lässt die rule da [...]]]></description>
			<content:encoded><![CDATA[<p>Ja, das vom Paket <strong><code>iptables</code></strong> mitgebrachte init-script leistet wunderbare Dienste. Nein, es besteht kein akuter Grund, eine Alternative zu schreiben&#8230;<br />
Einen Nachteil hat es schon: die Konfiguration wird in einem nicht kommentierbaren Format hinterlegt, was bei mir in letzter Zeit ständig zur Frage <em>&#8220;WTF hat doch gleich dieser Port da verloren? Was lässt die rule da nochmal durch?&#8221;</em> geführt hat.</p>
<p>&lt;bash-addicted&gt;Yep, eindeutige Notwenigkeit für ein selbst gehämmertes, kommentierbares  Script!&lt;/bash-addicted&gt; Wie in guten alten Debian-Zeiten übernimmt jetzt also bei mir ein einfaches, aber für den Job völlig ausreichendes init-script den Job. Wer es verwenden mag:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#</span>
<span style="color: #666666; font-style: italic;">#   easy-to-edit iptables init script for Arch</span>
<span style="color: #666666; font-style: italic;">#           2010 by Alexander Koch</span>
<span style="color: #666666; font-style: italic;">#</span>
&nbsp;
&nbsp;
<span style="color: #666666; font-style: italic;"># TCP services: ssh</span>
<span style="color: #007800;">SERVICES_TCP</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span> <span style="color: #000000;">22</span> <span style="color: #7a0874; font-weight: bold;">&#41;</span>
<span style="color: #666666; font-style: italic;"># UDP services:</span>
<span style="color: #007800;">SERVICES_UDP</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span> <span style="color: #7a0874; font-weight: bold;">&#41;</span>
&nbsp;
. <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>rc.conf
. <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>rc.d<span style="color: #000000; font-weight: bold;">/</span>functions
&nbsp;
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;/etc/conf.d/iptables&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    . <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>conf.d<span style="color: #000000; font-weight: bold;">/</span>iptables
<span style="color: #000000; font-weight: bold;">fi</span>
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-z</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$IPTABLES</span>&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #007800;">IPTABLES</span>=<span style="color: #ff0000;">&quot;/usr/sbin/iptables&quot;</span>
<span style="color: #000000; font-weight: bold;">fi</span>
<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #000000; font-weight: bold;">!</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #660033;">-x</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$IPTABLES</span>&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;unable to execute iptables binary: <span style="color: #007800;">$IPTABLES</span>&quot;</span>
    <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">1</span>
<span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> reset_tables<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
    <span style="color: #007800;">ERR</span>=<span style="color: #000000;">0</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-F</span> <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-X</span> <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-P</span> INPUT ACCEPT <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-P</span> OUTPUT ACCEPT <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #007800;">$IPTABLES_FORWARD</span> <span style="color: #660033;">-eq</span> <span style="color: #000000;">1</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span>
        <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-P</span> FORWARD ACCEPT <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
        <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #000000;">1</span> <span style="color: #000000; font-weight: bold;">&gt;/</span>proc<span style="color: #000000; font-weight: bold;">/</span>sys<span style="color: #000000; font-weight: bold;">/</span>net<span style="color: #000000; font-weight: bold;">/</span>ipv4<span style="color: #000000; font-weight: bold;">/</span>ip_forward <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #000000; font-weight: bold;">else</span>
        <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-P</span> FORWARD DROP <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
        <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #000000;">0</span> <span style="color: #000000; font-weight: bold;">&gt;/</span>proc<span style="color: #000000; font-weight: bold;">/</span>sys<span style="color: #000000; font-weight: bold;">/</span>net<span style="color: #000000; font-weight: bold;">/</span>ipv4<span style="color: #000000; font-weight: bold;">/</span>ip_forward <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #000000; font-weight: bold;">fi</span>
&nbsp;
    <span style="color: #7a0874; font-weight: bold;">return</span> <span style="color: #007800;">$ERR</span>
<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> setup_tables<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span>
    <span style="color: #007800;">ERR</span>=<span style="color: #000000;">0</span>
&nbsp;
    <span style="color: #666666; font-style: italic;"># setup prevention chain against common attacks</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-N</span> preventions <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> preventions <span style="color: #660033;">-f</span> <span style="color: #660033;">-j</span> DROP <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>                           <span style="color: #666666; font-style: italic;"># frags</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> preventions <span style="color: #660033;">-p</span> tcp <span style="color: #660033;">--tcp-flags</span> ALL ALL <span style="color: #660033;">-j</span> DROP <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>   <span style="color: #666666; font-style: italic;"># XMAS</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> preventions <span style="color: #660033;">-p</span> tcp <span style="color: #660033;">--tcp-flags</span> ALL NONE <span style="color: #660033;">-j</span> DROP <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>  <span style="color: #666666; font-style: italic;"># null</span>
&nbsp;
    <span style="color: #666666; font-style: italic;"># setup services chain</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-N</span> services <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #000000; font-weight: bold;">for</span> PORT <span style="color: #000000; font-weight: bold;">in</span> <span style="color: #800000;">${SERVICES_TCP[@]}</span>; <span style="color: #000000; font-weight: bold;">do</span>
        <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> services <span style="color: #660033;">-p</span> tcp <span style="color: #660033;">--dport</span> <span style="color: #007800;">$PORT</span> <span style="color: #660033;">-j</span> ACCEPT <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #000000; font-weight: bold;">done</span>
    <span style="color: #000000; font-weight: bold;">for</span> PORT <span style="color: #000000; font-weight: bold;">in</span> <span style="color: #800000;">${SERVICES_UDP[@]}</span>; <span style="color: #000000; font-weight: bold;">do</span>
        <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> services <span style="color: #660033;">-p</span> udp <span style="color: #660033;">--dport</span> <span style="color: #007800;">$PORT</span> <span style="color: #660033;">-j</span> ACCEPT <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #000000; font-weight: bold;">done</span>
&nbsp;
    <span style="color: #666666; font-style: italic;"># allow incoming ping requests</span>
    iptables <span style="color: #660033;">-A</span> services <span style="color: #660033;">-p</span> icmp <span style="color: #660033;">--icmp-type</span> echo-request <span style="color: #660033;">-j</span> ACCEPT <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
&nbsp;
    <span style="color: #666666; font-style: italic;"># setup main chains</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> INPUT <span style="color: #660033;">-m</span> state <span style="color: #660033;">--state</span> RELATED,ESTABLISHED <span style="color: #660033;">-j</span> ACCEPT <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> INPUT <span style="color: #660033;">-i</span> lo <span style="color: #660033;">-j</span> ACCEPT <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> INPUT <span style="color: #660033;">-j</span> preventions <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> INPUT <span style="color: #660033;">-m</span> state <span style="color: #660033;">--state</span> NEW <span style="color: #660033;">-j</span> services <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> INPUT <span style="color: #660033;">-p</span> tcp <span style="color: #660033;">-j</span> REJECT <span style="color: #660033;">--reject-with</span> tcp-reset <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-A</span> INPUT <span style="color: #660033;">-p</span> udp <span style="color: #660033;">-j</span> REJECT <span style="color: #660033;">--reject-with</span> icmp-port-unreachable <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
    <span style="color: #007800;">$IPTABLES</span> <span style="color: #660033;">-P</span> INPUT DROP <span style="color: #000000; font-weight: bold;">||</span> <span style="color: #007800;">ERR</span>=<span style="color: #000000;">1</span>
&nbsp;
    <span style="color: #7a0874; font-weight: bold;">return</span> <span style="color: #007800;">$ERR</span>
<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">case</span> <span style="color: #ff0000;">&quot;$1&quot;</span> <span style="color: #000000; font-weight: bold;">in</span>
    start<span style="color: #7a0874; font-weight: bold;">&#41;</span>
        stat_busy <span style="color: #ff0000;">&quot;Loading IP Tables&quot;</span>
        reset_tables
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #000000; font-weight: bold;">!</span> setup_tables; <span style="color: #000000; font-weight: bold;">then</span>
            stat_fail
            <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">1</span>
        <span style="color: #000000; font-weight: bold;">else</span>
            add_daemon miptables
            stat_done
        <span style="color: #000000; font-weight: bold;">fi</span>
        <span style="color: #000000; font-weight: bold;">;;</span>
    stop<span style="color: #7a0874; font-weight: bold;">&#41;</span>
        stat_busy <span style="color: #ff0000;">&quot;Flushing IP Tables&quot;</span>
        <span style="color: #000000; font-weight: bold;">if</span> reset_tables; <span style="color: #000000; font-weight: bold;">then</span>
            rm_daemon miptables
            stat_done
        <span style="color: #000000; font-weight: bold;">else</span>
            stat_fail
            <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">1</span>
        <span style="color: #000000; font-weight: bold;">fi</span>
        <span style="color: #000000; font-weight: bold;">;;</span>
    restart<span style="color: #7a0874; font-weight: bold;">&#41;</span>
        <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #000000; font-weight: bold;">!</span> ck_daemon miptables; <span style="color: #000000; font-weight: bold;">then</span>
            rm_daemon miptables
        <span style="color: #000000; font-weight: bold;">fi</span>
        $<span style="color: #000000;">0</span> start
        <span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #007800;">$?</span>
        <span style="color: #000000; font-weight: bold;">;;</span>
    <span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
        <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;usage: $0 {start|stop|restart}&quot;</span>
        <span style="color: #000000; font-weight: bold;">;;</span>
<span style="color: #000000; font-weight: bold;">esac</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">0</span></pre></div></div>

<p>Gefiltert werden nur eingehende Pakete; <code>related</code> und <code>established</code> Pakete werden ebenfalls ohne weitere Beachtung durchgelassen, ebenso alles über loopback. Für neue Pakete werden zuerst ein paar Vulnerability-Checks durchgeführt. Nach Außen wird ein Verhalten wie ohne iptables emuliert (z.B. REJECTs mit tcp-reset).</p>
<p>Bugreports wie immer willkommen, und Benutzung auf eigene Gefahr!</p>
<p><strong>Update 31.07.10:</strong> Bugfixed <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/iptables-init-script-fur-arch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Netbook Screeny</title>
		<link>http://alexanderkoch.net/2010/netbook-screeny/</link>
		<comments>http://alexanderkoch.net/2010/netbook-screeny/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 17:07:17 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[screenshots]]></category>
		<category><![CDATA[arch]]></category>
		<category><![CDATA[awn]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[screenshot]]></category>
		<category><![CDATA[xfce]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=683</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<div id="attachment_621" class="wp-caption aligncenter" style="width: 310px"><a href="http://alexanderkoch.net/wp-content/uploads/2010/06/2010-06-09-211941-pluto.png" rel="shadowbox[post-683];player=img;" title="2010-06-09-21:19:41-pluto"><img class="size-medium wp-image-621" title="2010-06-09-21:19:41-pluto" src="http://alexanderkoch.net/wp-content/uploads/2010/06/2010-06-09-211941-pluto-300x175.png" alt="" width="300" height="175" /></a><p class="wp-caption-text">XFCE mit AWN statt xfce4-panel</p></div>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/netbook-screeny/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java Gridbags</title>
		<link>http://alexanderkoch.net/2010/java-gridbags/</link>
		<comments>http://alexanderkoch.net/2010/java-gridbags/#comments</comments>
		<pubDate>Thu, 27 May 2010 21:18:03 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[coding]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://alexanderkoch.net/?p=596</guid>
		<description><![CDATA[Dieser animierte Blogpost beschreibt meinen Abend perfekt  

]]></description>
			<content:encoded><![CDATA[<p>Dieser animierte Blogpost beschreibt meinen Abend perfekt <img src='http://alexanderkoch.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://madbean.com/anim/totallygridbag" target="_new" title="Gridbad Matrix"><img class="aligncenter size-full wp-image-600" title="Gridbad Matrix" src="http://alexanderkoch.net/wp-content/uploads/2010/05/2010-05-17.png" alt="" width="391" height="295" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://alexanderkoch.net/2010/java-gridbags/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
