<?xml version="1.0"?>
<rss version="2.0">
<channel>
<title>Thomas' ramblings</title>
<link>http://thomas.mangin.com/</link>
<description>a site with no purpose</description>
<language>en</language>
<copyright>Copyright 2010 Thomas</copyright>
<pubDate>Thu, 25 Mar 2010 13:52:39 GMT</pubDate>
<lastBuildDate>Thu, 25 Mar 2010 13:52:39 GMT</lastBuildDate>
<docs>http://blogs.law.harvard.edu/tech/rss</docs>
<generator>TiddlyWiki 2.6.0</generator>
<item>
<title>Patch for proftpd mod_clamav</title>
<description>This fixes bug number 1 &quot;Clamd protocol change introduced in version 0.95&quot; ! &lt;br&gt;See &lt;a class=&quot;externalLink&quot; href=&quot;https://secure.thrallingpenguin.com/redmine/issues/show/1&quot; title=&quot;External link to https://secure.thrallingpenguin.com/redmine/issues/show/1&quot; target=&quot;_blank&quot;&gt;https://secure.thrallingpenguin.com/redmine/issues/show/1&lt;/a&gt;&lt;br&gt;The ticket system for proftpd mod_clamav module does not allow me to add a patch. So here it is.&lt;br&gt;This is the daftest patch I ever wrote. It is one hour of my life I will never get back !!&lt;br&gt;&lt;br&gt;Do not forget that on most recent Linux distro, you setup apparmor to let clamd read/write the files to scan.&lt;br&gt;&lt;br&gt;&lt;pre&gt;
root@750-11:~/install/mod_clamav-0.10# diff -u mod_clamav.c.org mod_clamav.c
--- mod_clamav.c.org	2010-03-25 11:02:36.000000000 +0000
+++ mod_clamav.c	2010-03-25 13:28:24.000000000 +0000
@@ -107,7 +107,7 @@
  * Start a session with Clamavd.
  */
 int clamavd_session_start(int sockd) {
-	if (sockd != -1 &amp;amp;&amp;amp; write(sockd, &quot;SESSION\n&quot;, 8) &amp;lt;= 0) {
+	if (sockd != -1 &amp;amp;&amp;amp; write(sockd, &quot;nIDSESSION\n&quot;, 11) &amp;lt;= 0) {
 		pr_log_pri(PR_LOG_ERR, 
 				MOD_CLAMAV_VERSION &quot;: error: Clamd didn't accept the session request.&quot;);
 		return -1;
@@ -119,7 +119,7 @@
  * End session.
  */
 int clamavd_session_stop(int sockd) {
-	if (sockd != -1 &amp;amp;&amp;amp; write(sockd, &quot;END\n&quot;, 4) &amp;lt;= 0) {
+	if (sockd != -1 &amp;amp;&amp;amp; write(sockd, &quot;nEND\n&quot;, 5) &amp;lt;= 0) {
 		pr_log_pri(PR_LOG_INFO, 
 				MOD_CLAMAV_VERSION &quot;: info: Clamd didn't accept the session end request.&quot;);
 		return -1;
@@ -183,7 +183,7 @@
 		return -1;
 	}
 	
-	sprintf(scancmd, &quot;SCAN %s\n&quot;, abs_filename);
+	sprintf(scancmd, &quot;nSCAN %s\n&quot;, abs_filename);
 	
 	if (!clamavd_connect_check(sockd)) {
 		if ((clamd_sockd = clamavd_connect()) &amp;lt; 0) {
&lt;/pre&gt;</description>
<link>http://thomas.mangin.com/#%5B%5BPatch%20for%20proftpd%20mod_clamav%5D%5D</link>
<pubDate>Thu, 25 Mar 2010 13:44:37 GMT</pubDate>

</item>
<item>
<title>Broken Link</title>
<description>&lt;strong&gt;If you just followed a link and did not land on the page you expected, this is normal, just continue reading&lt;/strong&gt;&lt;br&gt;&lt;br&gt;This site is went from using &lt;a class=&quot;externalLink&quot; href=&quot;http://www.templeet.org&quot; title=&quot;External link to http://www.templeet.org&quot; target=&quot;_blank&quot;&gt;Templeet&lt;/a&gt; to &lt;a class=&quot;externalLink&quot; href=&quot;http://www.minitiddlyserver.com/&quot; title=&quot;External link to http://www.minitiddlyserver.com/&quot; target=&quot;_blank&quot;&gt;MiniTiddlyServer&lt;/a&gt; (a wiki server extension for &lt;a class=&quot;externalLink&quot; href=&quot;http://www.tiddlywiki.com/&quot; title=&quot;External link to http://www.tiddlywiki.com/&quot; target=&quot;_blank&quot;&gt;TiddlyWiki&lt;/a&gt;) to simply &lt;a class=&quot;externalLink&quot; href=&quot;http://www.tiddlywiki.com/&quot; title=&quot;External link to http://www.tiddlywiki.com/&quot; target=&quot;_blank&quot;&gt;TiddlyWiki&lt;/a&gt;. This mean that all the site in now self contained in one html document ..&lt;br&gt;&lt;br&gt;Using the &lt;strong&gt;search box&lt;/strong&gt; on the top right, or using the &lt;strong&gt;tags&lt;/strong&gt; on the bottom right you should be able to bring the page you are looking in no time.&lt;br&gt;&lt;br&gt;You can take a full offline copy of this site by right clicking &lt;a class=&quot;externalLink&quot; href=&quot;http://thomas.mangin.com/index.html&quot; title=&quot;External link to http://thomas.mangin.com/index.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt; and saving the document.</description>
<link>http://thomas.mangin.com/#%5B%5BBroken%20Link%5D%5D</link>
<pubDate>Fri, 30 Oct 2009 13:09:00 GMT</pubDate>

</item>
<item>
<title>OpenSource</title>
<description>My most recent work related OSS like a BGP route injector, or network tools can be find at &lt;a class=&quot;externalLink&quot; href=&quot;http://wiki.exa.org.uk/&quot; title=&quot;External link to http://wiki.exa.org.uk/&quot; target=&quot;_blank&quot;&gt;http://wiki.exa.org.uk/&lt;/a&gt;.</description>
<category>link_oss</category>
<link>http://thomas.mangin.com/#OpenSource</link>
<pubDate>Fri, 30 Oct 2009 13:07:00 GMT</pubDate>

</item>
<item>
<title>Enabling ipv6 on a Juniper M-serie</title>
<description>This page is based on diffs done on our configurations before and after some work on our network (mostly by Richard). This is not a step by step how-to but enough information to give you an overview of the work performed to enable ipv6 (and an idea of the complexity).&lt;br&gt;&lt;br&gt;add some ipv6 loopback to your machine (for BGP, etc.)&lt;br&gt;&lt;pre&gt;[edit interfaces lo0 unit 0]
family inet6 {
   address 2a02:b80::4:0:1/128;
   address 2a02:b80::4:0:B3/128;
}
&lt;/pre&gt;make sure your tunnel interface are not using ethernet (it does not support ipv6) and use frame-relay instead.&lt;br&gt;We use logical-routers and it is needed to connect them using ipv6.&lt;br&gt;&lt;pre&gt;[edit interfaces lt-1/2/0 unit 0]
- encapsulation ethernet;
+ encapsulation frame-relay;
+ dlci 201;
&lt;/pre&gt;add the transfer network you need on your interfaces (we use some /80 part of one /64 allocated for transfer net only).&lt;br&gt;&lt;pre&gt;[edit interfaces ge-0/3/0 unit 1]
family inet6 {
    address 2a02:b80:0:2:F:0:6:1/80;
}
&lt;/pre&gt;where in &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#IPv4&quot; title=&quot;External link to http://thomas.mangin.com/#IPv4&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;IPv4&quot;&gt;IPv4&lt;/a&gt; we were using /24 to connect servers, we now use some &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#IPv6&quot; title=&quot;External link to http://thomas.mangin.com/#IPv6&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;IPv6&quot;&gt;IPv6&lt;/a&gt; /64, &lt;br&gt;&lt;pre&gt;[edit interfaces ge-0/3/0 unit 2]
family inet6 {
    address 2a02:b80:0:90::1/64;
}
&lt;/pre&gt;allows autoconfiguration of your hosts (the MAC address is used for the end part of the IP) - if you want it&lt;br&gt;&lt;pre&gt;[edit protocols]
router-advertisement {
    interface ge-0/3/0.2 {
        prefix 2a02:b80:0:90::/64;
    }
}
&lt;/pre&gt;updating our rib groups to include ipv6 rib to complement the already existing &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#IPv4&quot; title=&quot;External link to http://thomas.mangin.com/#IPv4&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;IPv4&quot;&gt;IPv4&lt;/a&gt;&lt;br&gt;&lt;pre&gt;[edit routing-options]
rib-groups {        
    if6-rib {       
        import-rib inet6.0;
    }               
    isis6-rib {     
        export-rib inet6.0;
        import-rib inet6.0;
}                   
&lt;/pre&gt;routing table groups for interface routes&lt;br&gt;&lt;pre&gt;[edit routing-options]
interface-routes {
rib-group {
    inet6 if6-rib;
}
&lt;/pre&gt;enable ipv6 routing for your IGP&lt;br&gt;&lt;pre&gt;[edit protocol isis]
- no-ipv6-routing;
&lt;/pre&gt;&lt;pre&gt;[edit protocol isis]
rib-group {
    inet isis-rib;
    inet6 isis6-rib;
}
&lt;/pre&gt;we are filtering the static route getting into isis, update the policy-statement to be &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#IPv6&quot; title=&quot;External link to http://thomas.mangin.com/#IPv6&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;IPv6&quot;&gt;IPv6&lt;/a&gt; aware&lt;br&gt;&lt;pre&gt;[edit protocol isis]
export static-to-isis;
&lt;/pre&gt;&lt;pre&gt;[edit policy-options]
policy-statement static-to-isis {
    term from-v4 {
        from {
            protocol static;
            family inet;
            prefix-list static-to-isis;
        }
        to protocol isis;
        then accept;
    }
    term from-v6 {
        from {
            protocol static;
            family inet6;
            prefix-list static6-to-isis;
        }
        to protocol isis;
        then accept;
    }               
}                   
&lt;/pre&gt;&lt;pre&gt;prefix-list static6-to-isis {
    2a02:b80:0:6:7b::1/128;
}
&lt;/pre&gt;the matching static route would be something like&lt;br&gt;&lt;pre&gt;[edit routing-options rib inet6.0]
rib inet6.0 {
    static {
        route 2a02:b80:0:6:7b::1/128 {
            next-hop 2a02:b80:0:100:0:0:0:1;
            resolve;
        }
}
&lt;/pre&gt;We are using communities to define our bgp export policies, add our network to the community needed for ebgp to let our peer/transit know about our RIPE allocation&lt;br&gt;&lt;pre&gt;[edit protocol bgp]
group ibgp-v6 {
    type internal;
    local-address 2a02:b80::4:0:b3;
    import blackhole;
    family inet6 {
        any;
    }
    authentication-key &quot;&quot;; ## SECRET-DATA
    export [ v6-only originate-community originate-customer export-ibgp next-hop-self ];
    peer-as 30740;
    neighbor 2a02:b80::7:0:b3;
    neighbor 2a02:b80::5:0:b3;
}
&lt;/pre&gt;&lt;pre&gt;[edit policy-options]
policy-statement v6-only {
    from family inet;
    then reject;
}
&lt;/pre&gt;&lt;pre&gt;[edit policy-options]
policy-statement originate-community {
    from community originate;
    then {
        next-hop self;
        accept;
    }
}
&lt;/pre&gt;&lt;pre&gt;community originate members 30740:30740;
&lt;/pre&gt;&lt;pre&gt;[edit routing-options rib inet6.0]
aggregate {
    route 2a02:b80::/32 {
        community 30740:30740;
        as-path {
            origin igp;
        }
    }
}
&lt;/pre&gt;source a default route (if you want/need it)&lt;br&gt;&lt;pre&gt;[edit routing-options rib inet6.0]
generate {
    route ::/0 discard;
}
&lt;/pre&gt;if all works you want to peer :)&lt;br&gt;&lt;pre&gt;[edit protocol bgp]
group linx-v6 {
    type external;
    description &quot;LINX IPv6 Peers&quot;;
    local-preference 175;
    local-address 2001:7f8:4::7814:1;
    log-updown;
    import [ v6-only no-ix no-bogons-v6 no-small-prefixes-v6 no-leak tag-peering tag-linx damping local-preference-linx local-preference-peer no-community-import ];
    family inet6 {
        unicast;
    }
    export [ v6-only originate-community originate-customer no-transit no-small-prefixes-v6 export-peering export-linx no-community-export next-hop-self ];
    remove-private; 
    neighbor 2001:7f8:4:0::1b1b:1 {
        apply-macro inet6 {
            prefix-limit 10000;
        }
        description &quot;AS-HURRICANE | Hurricane Electric | noc@he.net | &quot;;
        peer-as 6939;
    }
}
&lt;/pre&gt;&lt;pre&gt;[edit policy-options]
policy-statement no-bogons-v6 {
    term default-route {
        from {
            family inet6;
            route-filter ::/0 exact;
        }
        then reject;
    }
    term general-badness {
        from {
            family inet6;
            /* Old 6bone */
            route-filter 3ffe::/16 orlonger;
            /* Loopback, unspecified, v4-mapped */
            route-filter ::/8 orlonger;
            /* Documentation Prefix */
            route-filter 2001:db8::/32 orlonger;
            /* Teredo - No more or less specifics */
            route-filter 2001::/32 exact next policy;
            route-filter 2001::/31 longer;
            /* 6to4 - allow exact /16 */
            route-filter 2002::/16 exact next policy;
            route-filter 2002::/16 longer;
            /* multicast ranges, RFC3513 */
            route-filter fe00::/9 orlonger;
            route-filter ff00::/8 orlonger;
        }
        then reject;
    }
}
&lt;/pre&gt;&lt;pre&gt;policy-statement no-small-prefixes-v6 {
    from {
        family inet6;
        route-filter ::/0 prefix-length-range /49-/128 reject;
    }
    then reject;
}
&lt;/pre&gt;eh ! we missed v6 in that one :D&lt;br&gt;&lt;pre&gt;policy-statement no-ix {
    from {
        /* Enlix */
        route-filter 193.189.130.0/24 orlonger reject;
        /* LINX */
        route-filter 195.66.224.0/22 orlonger reject;
        /* AMS-IX */
        route-filter 195.69.144.0/23 orlonger reject;
    }
    then reject;
}
&lt;/pre&gt;That is more or less it.. just need to update my RIPE tools now :(</description>
<category>Network</category>
<category>ISIS</category>
<category>BGP</category>
<category>Juniper</category>
<category>IPv6</category>
<category>link_ipv6_on_juniper</category>
<link>http://thomas.mangin.com/#%5B%5BEnabling%20ipv6%20on%20a%20Juniper%20M-serie%5D%5D</link>
<pubDate>Sat, 09 May 2009 11:38:00 GMT</pubDate>

</item>
<item>
<title>ScavengerEXA</title>
<description>The last few weeks I have been actively working on a new anti-spam software now named &lt;a class=&quot;externalLink&quot; href=&quot;http://scavenger.exa.org.uk&quot; title=&quot;External link to http://scavenger.exa.org.uk&quot; target=&quot;_blank&quot;&gt;ScavengerEXA&lt;/a&gt;. &lt;br&gt;&lt;br&gt;&lt;a class=&quot;externalLink&quot; href=&quot;http://scavenger.exa.org.uk&quot; title=&quot;External link to http://scavenger.exa.org.uk&quot; target=&quot;_blank&quot;&gt;ScavengerEXA&lt;/a&gt; differentiates itself from other solutions by analysing the mail leaving a network and not entering a mail server and can be run mail infrastructure, making it useful to a different audience in the Internet infrastructure community (Hosting providers and Cloud services as well as ISP's, for example).</description>
<category>ScavengerEXA</category>
<category>Mail</category>
<category>Spam</category>
<link>http://thomas.mangin.com/#ScavengerEXA</link>
<pubDate>Sun, 01 Feb 2009 09:58:00 GMT</pubDate>

</item>
<item>
<title>Generating NAPTR and SRV record for TINYDNS</title>
<description>&lt;a class=&quot;externalLink&quot; href=&quot;http://cr.yp.to/djbdns/tinydns.html&quot; title=&quot;External link to http://cr.yp.to/djbdns/tinydns.html&quot; target=&quot;_blank&quot;&gt;TINYDNS&lt;/a&gt; is a good DNS server, however &lt;a class=&quot;externalLink&quot; href=&quot;http://cr.yp.to/djbdns/tinydns-data.html&quot; title=&quot;External link to http://cr.yp.to/djbdns/tinydns-data.html&quot; target=&quot;_blank&quot;&gt;tinydns-data&lt;/a&gt; is missing some builtin syntax for the generation of NAPTR and SRV record.&lt;br&gt;&lt;br&gt;Anders Brownworth wrote a nice web page on which generate those record using the &lt;a class=&quot;externalLink&quot; href=&quot;http://cr.yp.to/djbdns/tinydns.html&quot; title=&quot;External link to http://cr.yp.to/djbdns/tinydns.html&quot; target=&quot;_blank&quot;&gt;tinydns&lt;/a&gt; generic record syntax &lt;a class=&quot;externalLink&quot; href=&quot;http://www.anders.com/projects/sysadmin/djbdnsRecordBuilder/&quot; title=&quot;External link to http://www.anders.com/projects/sysadmin/djbdnsRecordBuilder/&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;br&gt;&lt;br&gt;However I needed to be able to generate those record for the configuration of IENUM (technically ENUM on private DNS) from some of our python code.&lt;br&gt;As a result I wrote the following &quot;&lt;a class=&quot;externalLink&quot; href=&quot;http://thomas.mangin.com/data/source/sipdns.py&quot; title=&quot;External link to http://thomas.mangin.com/data/source/sipdns.py&quot; target=&quot;_blank&quot;&gt;library&lt;/a&gt;&quot; to generate some domain SIP NAPTR and SRV records.&lt;br&gt;&lt;br&gt;Hopefully it may save someone the time to reverse engineering Anders' page output.&lt;br&gt;&lt;br&gt;A bug was fixed on the 8th of october 2008</description>
<category>Software</category>
<category>Python</category>
<category>DJBDNS</category>
<category>link_djbdns_naptr_srv</category>
<link>http://thomas.mangin.com/#%5B%5BGenerating%20NAPTR%20and%20SRV%20record%20for%20TINYDNS%5D%5D</link>
<pubDate>Wed, 08 Oct 2008 22:00:00 GMT</pubDate>

</item>
<item>
<title>Obfuscated TCP</title>
<description>Google seems to have reacted to the menace Phorm is creating to their business model with &lt;a class=&quot;externalLink&quot; href=&quot;http://code.google.com/p/obstcp/&quot; title=&quot;External link to http://code.google.com/p/obstcp/&quot; target=&quot;_blank&quot;&gt;Obfuscated TCP&lt;/a&gt;. It is interesting to see someone of Google stature pushing forward some of the &lt;a class=&quot;externalLink&quot; href=&quot;http://cr.yp.to/talks/2004.04.28/slides.pdf&quot; title=&quot;External link to http://cr.yp.to/talks/2004.04.28/slides.pdf&quot; target=&quot;_blank&quot;&gt;idea&lt;/a&gt; presented Daniel Bernstein.&lt;br&gt;</description>
<category>Rambling</category>
<category>Phorm</category>
<category>Google</category>
<link>http://thomas.mangin.com/#%5B%5BObfuscated%20TCP%5D%5D</link>
<pubDate>Wed, 08 Oct 2008 10:00:00 GMT</pubDate>

</item>
<item>
<title>Rambling</title>
<description>Once uppon a time, I used to ramble a lot about various ISP/technical related matters (mainly Phorm and ISP 'hidden' traffic shaping). I removed most of the documents as I was not updating them often enough to keep them accurate and provided a summary on traffic shaping and Phorm.</description>
<category>Menu</category>
<link>http://thomas.mangin.com/#Rambling</link>
<pubDate>Mon, 30 Jun 2008 13:05:00 GMT</pubDate>

</item>
<item>
<title>The real cost of P2P</title>
<description>Should you read &lt;a class=&quot;externalLink&quot; href=&quot;http://slashdot.org/&quot; title=&quot;External link to http://slashdot.org/&quot; target=&quot;_blank&quot;&gt;Slashdot&lt;/a&gt;, you must have already seen its readers complaining about their ISP traffic shaping policies.&lt;br&gt;When working in the ISP industry it is painful to see the lack of understanding those 'techies' are displaying.&lt;br&gt;&lt;br&gt;In the UK, if anything ISPs are guilty of bad advertising misleading customers with 'up to' speeds and obscure fair usage policies and trying to market their product on price instead of quality (but Internet is a commodity market nowdays, so it is to be expected)&lt;br&gt;&lt;br&gt;Customers should be clearly told that DSL product sold are contended. Previously dialup products were as well, but the impact with dialup was much more noticeable with the inability to get online.&lt;br&gt;&lt;br&gt;The recent increase in content (video even more than P2P) has recently caused many of them to realise that they had oversubscribed their infrastructure to the point they could not deliver to their customers what they came to expect.&lt;br&gt;Once down to the wall, ISPs had only a few options :&lt;br&gt; * raise price to reflect the cost of running the service at a low contention (and we all know that it is impossible) &lt;br&gt; * apply traffic policing globally (everyone is slowed down the same way to modem speed).&lt;br&gt; * apply targeted traffic policy (P2P users here you are)&lt;br&gt;&lt;br&gt;As it is hard to tell a customer, who may cancel its contract returning a then useless free router, that he can no longer have fast email and web surfing, the path of least resistance is to throttle P2P traffic which is an important part (but not all) of an ISP traffic, freeing capacity for other services and allowing to delay infrastructure upgrade.&lt;br&gt;(The cost of implementing traffic shaping is recovered if it allows to delay a network upgrade if only for a month!)&lt;br&gt;&lt;br&gt;For information, an ISP for a DSL service can be simplified as:&lt;br&gt; * the 'last mile' cost from the home to the exchange&lt;br&gt; * the cost of the space used, power consumed and hardware located at the exchange&lt;br&gt; * the cost of moving the traffic within the country (fiber, etc.)&lt;br&gt; * the cost of the space used, power consumed and hardware located at national point of presence&lt;br&gt; * the cost of moving the traffic to other ISPs&lt;br&gt; * the cost of supporting the customer (ie: taking unrelated calls about their virus or other issues)&lt;br&gt; * the cost of collection the client payment&lt;br&gt; * all other generic business&lt;br&gt;&lt;br&gt;For quite few small/medium ISPs, the transit cost (the cost an ISP will pay for another bigger ISP to take its traffic somewhere worldwide) is more than the income that the customer provides. Most ISPs are making a loss trying to become big enough to be acquired.&lt;br&gt;P2P being notably known to not really care about locality, one can see why it is the target of shaping (with the fact that the biggest torrent are often providing copyrighted material for which end users may or may not have a license to see/use).&lt;br&gt; &lt;br&gt;In that context it is not surprising that the industry is facing issues and trying to find more income streams (see my rant on Phorm).&lt;br&gt;</description>
<category>Rambling</category>
<category>ISP</category>
<category>P2P</category>
<link>http://thomas.mangin.com/#%5B%5BThe%20real%20cost%20of%20P2P%5D%5D</link>
<pubDate>Mon, 30 Jun 2008 13:01:00 GMT</pubDate>

</item>
<item>
<title>Software</title>
<description>All the documents related to software I wrote are tagged with 'Software', you can find them using the search feature or the 'Tags' tab.</description>
<category>Menu</category>
<link>http://thomas.mangin.com/#Software</link>
<pubDate>Mon, 30 Jun 2008 11:28:00 GMT</pubDate>

</item>
<item>
<title>Network</title>
<description>All the documents related to networking are tagged with 'Network', you can find them using the search feature or the 'Tags' tab.</description>
<category>Menu</category>
<link>http://thomas.mangin.com/#Network</link>
<pubDate>Mon, 30 Jun 2008 11:27:00 GMT</pubDate>

</item>
<item>
<title>PageTemplate</title>
<description>&lt;pre&gt;&amp;lt;div class='header' macro=&quot;gradient vert #5c4894 #6b69ad&quot;&amp;gt;
    &amp;lt;div&amp;gt;
       &amp;lt;span class='siteTitle' refresh='content' tiddler='SiteTitle'&amp;gt;&amp;lt;/span&amp;gt;&amp;amp;nbsp;
       &amp;lt;span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'&amp;gt;&amp;lt;/span&amp;gt;
    &amp;lt;/div&amp;gt;
    &amp;lt;div id='topMenu'&amp;gt;
       &amp;lt;span refresh='content' tiddler='MainMenu'&amp;gt;&amp;lt;/span&amp;gt;
    &amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt; 
&amp;lt;div id='sidebar'&amp;gt;
	&amp;lt;div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'&amp;gt;&amp;lt;/div&amp;gt;
	&amp;lt;div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;
&amp;lt;div id='displayArea'&amp;gt;
	&amp;lt;div id='messageArea'&amp;gt;&amp;lt;/div&amp;gt;
	&amp;lt;div id='tiddlerDisplay'&amp;gt;&amp;lt;/div&amp;gt;
&amp;lt;/div&amp;gt;
&lt;/pre&gt;</description>
<link>http://thomas.mangin.com/#PageTemplate</link>
<pubDate>Sun, 29 Jun 2008 20:11:00 GMT</pubDate>

</item>
<item>
<title>StyleSheet</title>
<description>&lt;pre&gt;.headerForeground { display: none;}
#sidebar {width: 170px; background: #efefef;border-left: solid 2px #b8b9c7;border-top: solid 2px #d7d8e8;}
#sidebarTabs .tabContents {width: 158px; background: #eae9ee;font-weight: bold; color: #333 ;}
#sidebarOptions input { border: solid 2px #b8b9c7; }
#sidebarOptions .sliderPanel { background: #eee;}
#sidebarOptions a {;border: none;}
#sidebarOptions .sliderPanel a {border: none;color: #5c4894;}
#displayArea {background: #fff;margin: 1em 15.7em 0em 1em;border-left: solid 2px #b8b9c7;}
.viewer {line-height: 1.4em;padding-bottom: 1em;border-bottom:solid 1px #b8b9c7;}
.viewer th, thead td {background: #5d4b97;border: 1px solid #666;color: #fff;}
.title {color: #000}
h1,h2,h3,h4,h5 {color: #fff;background: #6b69ad;}
a{ color: #700126;}
a:hover{ background: #6b69ad; color: #fff;font-weight: bold;}
.externalLink {	text-decoration: underline; color: #000083;}
body {	background: #d7d8e8;}
.popup { background: #6b69ad; border: 1px solid #04b;}
.popup li a:hover {background: #d7d8e8;color: #000;border: none;}
.popup li.disabled {color: #000;}
.button:hover {color: #fff;background: #6b69ad;
	border: 1px solid #d7d8e8;}
#topMenu { background: transparent; padding: 6px;margin-left: -5px;border-bottom: solid 3px  #5c4894;}
#topMenu .button,  #topMenu .tiddlyLink, tiddlyLinkExisting, #topMenu .externalLink
{
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 1.1em;
	text-decoration: none;
	letter-spacing: 1.5px;
	background: transparent;
	border-right: solid 1px #fff;
        padding: 5px 15px 8px 15px;
}
#topMenu a:hover {
	color: #700126;
	background: #d7d8e8;
}
#topMenu br {display: none; padding-right: 1em;}
#topMenu span .tiddlyLinkNonExisting {font-style:normal;}
&lt;/pre&gt;</description>
<link>http://thomas.mangin.com/#StyleSheet</link>
<pubDate>Sun, 29 Jun 2008 20:07:00 GMT</pubDate>

</item>
<item>
<title>Topology</title>
<description>The bgp articles on this site are using based on the following virtual network. The router are owned by an ISP with its own AS number. The IGP is EIGRP as it is the protocol I am most familiar with at the time of writing (it could be OSPF or &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#IS-IS&quot; title=&quot;External link to http://thomas.mangin.com/#IS-IS&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;IS-IS&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;IS-IS&lt;/a&gt;).&lt;br&gt;&lt;br&gt;&lt;h1&gt;Servers&lt;/h1&gt;&lt;br&gt;The following server are present on the network:&lt;br&gt;10.0.0.1 		Primary caching DNS&lt;br&gt;10.1.0.1 		Secondary caching DNS&lt;br&gt;10.2.3.200 		SNMP Monitoring station&lt;br&gt;10.2.3.201 		SYSLOG loging server&lt;br&gt;10.2.3.202 		NTP server&lt;br&gt;10.2.3.205 		Netflow monitoring server&lt;br&gt;&lt;br&gt;&lt;h1&gt;IP Range&lt;/h1&gt;&lt;br&gt;The ISP internal range is:&lt;br&gt;10.0.0.0/16 		AS 65200&lt;br&gt;10.1.0.0/16 		AS 65200&lt;br&gt;10.2.3.0/24 		AS 65200&lt;br&gt;&lt;br&gt;The ISP provides transit to:&lt;br&gt;192.168.0.0/24 		AS 65350&lt;br&gt;192.168.1.0/24 		AS 65360&lt;br&gt;&lt;br&gt;&lt;h1&gt;The Internet Exchange&lt;/h1&gt;&lt;br&gt;The exchange Information is running a dual ring topology with a separate /23 for each&lt;br&gt;172.16.0.0/23 		AS 65400&lt;br&gt;172.16.2.0/23 		AS 65400&lt;br&gt;&lt;br&gt;&lt;h1&gt;Internal routing&lt;/h1&gt;&lt;br&gt;It is assumed that the 192.168.0.0/24 and 192.168.1.0/24 are available through the IGP. The client eBGP connection is configured to pass through another internal routers (multi-hop), which will have a directly connected interface or a static route to the networks advertised.&lt;br&gt;&lt;br&gt;No encryption is used between BGP peers, no access list is in place to protect EIGRP, BGP and NTP traffic to the router.&lt;br&gt;&lt;br&gt;The local preference used are beetween 100 and 200. To calculate the RIPE preference, apply the following rule : ripe_pref = 200 - local_pref</description>
<category>Network</category>
<link>http://thomas.mangin.com/#Topology</link>
<pubDate>Sun, 29 Jun 2008 18:44:00 GMT</pubDate>

</item>
<item>
<title>Home</title>
<description>&lt;ul&gt;&lt;li&gt; &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#Software&quot; title=&quot;External link to http://thomas.mangin.com/#Software&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;Software&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;Software&lt;/a&gt; related stuff&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#Network&quot; title=&quot;External link to http://thomas.mangin.com/#Network&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;Network&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;Network&lt;/a&gt; related stuff&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#About&quot; title=&quot;External link to http://thomas.mangin.com/#About&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;About&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;About&lt;/a&gt; this site and me&lt;/li&gt;&lt;/ul&gt;&lt;br&gt;Should you want to contact me feel free to email me here.&lt;br&gt;My public PGP key is here.&lt;br&gt;&lt;br&gt;Should you want to link to this site please use &lt;a class=&quot;externalLink&quot; href=&quot;http://thomas.mangin.com/&quot; title=&quot;External link to http://thomas.mangin.com/&quot; target=&quot;_blank&quot;&gt;http://thomas.mangin.com/&lt;/a&gt; as hostname</description>
<link>http://thomas.mangin.com/#Home</link>
<pubDate>Sun, 29 Jun 2008 18:33:00 GMT</pubDate>

</item>
<item>
<title>GettingStarted</title>
<description>To get started with this blank TiddlyWiki, you'll need to modify the following tiddlers:&lt;br&gt;&lt;ul&gt;&lt;li&gt; &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#SiteTitle&quot; title=&quot;External link to http://thomas.mangin.com/#SiteTitle&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;SiteTitle&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;SiteTitle&lt;/a&gt; &amp;amp; &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#SiteSubtitle&quot; title=&quot;External link to http://thomas.mangin.com/#SiteSubtitle&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;SiteSubtitle&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;SiteSubtitle&lt;/a&gt;: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#MainMenu&quot; title=&quot;External link to http://thomas.mangin.com/#MainMenu&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;MainMenu&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;MainMenu&lt;/a&gt;: The menu (usually on the left)&lt;/li&gt;&lt;li&gt; &lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#DefaultTiddlers&quot; title=&quot;External link to http://thomas.mangin.com/#DefaultTiddlers&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;DefaultTiddlers&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;DefaultTiddlers&lt;/a&gt;: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened&lt;/li&gt;&lt;/ul&gt;You'll also need to enter your username for signing your edits: &lt;input option=&quot;txtUserName&quot; class=&quot;txtOptionInput&quot; title=&quot;Username for signing your edits&quot;&gt;</description>
<link>http://thomas.mangin.com/#GettingStarted</link>
<pubDate>Sun, 29 Jun 2008 18:31:00 GMT</pubDate>

</item>
<item>
<title>DefaultTiddlers</title>
<description>&lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#About&quot; title=&quot;External link to http://thomas.mangin.com/#About&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;About&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;About&lt;/a&gt;&lt;br&gt;&lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#OpenSource&quot; title=&quot;External link to http://thomas.mangin.com/#OpenSource&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;OpenSource&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;OpenSource&lt;/a&gt;&lt;br&gt;&lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#Broken Link&quot; title=&quot;External link to http://thomas.mangin.com/#Broken Link&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;Broken Link&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;Broken Link&lt;/a&gt;</description>
<link>http://thomas.mangin.com/#DefaultTiddlers</link>
<pubDate>Sun, 29 Jun 2008 18:24:00 GMT</pubDate>

</item>
<item>
<title>MainMenu</title>
<description>&lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#Network&quot; title=&quot;External link to http://thomas.mangin.com/#Network&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;Network&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;Network&lt;/a&gt;&lt;br&gt;&lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#Software&quot; title=&quot;External link to http://thomas.mangin.com/#Software&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;Software&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;Software&lt;/a&gt;&lt;br&gt;&lt;a class=&quot;externalLink null&quot; href=&quot;http://thomas.mangin.com/#Rambling&quot; title=&quot;External link to http://thomas.mangin.com/#Rambling&quot; target=&quot;_blank&quot; refresh=&quot;link&quot; tiddlylink=&quot;Rambling&quot; tiddlyfields=&quot;server.host:&amp;quot;thomas.mangin.com&amp;quot; server.type:&amp;quot;file&amp;quot;&quot;&gt;Rambling&lt;/a&gt;</description>
<link>http://thomas.mangin.com/#MainMenu</link>
<pubDate>Sun, 29 Jun 2008 18:22:00 GMT</pubDate>

</item>
<item>
<title>SiteSubtitle</title>
<description>a site with no purpose</description>
<link>http://thomas.mangin.com/#SiteSubtitle</link>
<pubDate>Sun, 29 Jun 2008 18:20:00 GMT</pubDate>

</item>
<item>
<title>SiteTitle</title>
<description>Thomas' ramblings</description>
<link>http://thomas.mangin.com/#SiteTitle</link>
<pubDate>Sun, 29 Jun 2008 18:19:00 GMT</pubDate>

</item>
</channel>
</rss>
