<?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>[?] Joy, Works and Thoughts &#187; Works</title>
	<atom:link href="http://www.tajidyakub.net/category/works/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.tajidyakub.net</link>
	<description>About taking notes of my personal understanding on various subjects.</description>
	<lastBuildDate>Fri, 07 May 2010 13:00:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Dapur Dapur-an 3d 3d-an (3dsmax, vray)</title>
		<link>http://www.tajidyakub.net/2008/08/17/dapur-dapur-an-3d-3d-an-3dsmax-vray/</link>
		<comments>http://www.tajidyakub.net/2008/08/17/dapur-dapur-an-3d-3d-an-3dsmax-vray/#comments</comments>
		<pubDate>Sat, 16 Aug 2008 19:35:32 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Works]]></category>
		<category><![CDATA[3dsmax]]></category>
		<category><![CDATA[dapur]]></category>
		<category><![CDATA[vray]]></category>

		<guid isPermaLink="false">http://www.tajidyakub.net/?p=387</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p>Tempo hari bikinin 3d dapur yang bentuknya aneh dan jadi gak enak banget ngatur camnya, ini hasilnya (3dsmax, vray, 12 jam);</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-388" title="area-kompor-opt" src="http://www.tajidyakub.net/wp-content/uploads/2008/08/area-kompor-opt.jpg" alt="Area Kompor" width="400" height="270" /></p>
<p style="text-align: center;">
<p style="text-align: center;"><img class="aligncenter size-full wp-image-389" title="area-wastafel-opt" src="http://www.tajidyakub.net/wp-content/uploads/2008/08/area-wastafel-opt.jpg" alt="Area Wastafel" width="400" height="270" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2008/08/17/dapur-dapur-an-3d-3d-an-3dsmax-vray/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Squid Cache, TProxy, dan Mikrotik (Alternate Configuration for Simple Networks)</title>
		<link>http://www.tajidyakub.net/2008/03/22/squid-cache-tproxy-dan-mikrotik-alternate-configuration-for-simple-networks/</link>
		<comments>http://www.tajidyakub.net/2008/03/22/squid-cache-tproxy-dan-mikrotik-alternate-configuration-for-simple-networks/#comments</comments>
		<pubDate>Sat, 22 Mar 2008 07:56:23 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Notes]]></category>
		<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/2008/03/22/squid-cache-tproxy-dan-mikrotik-alternate-configuration-for-simple-networks/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p>This is the english version of this <a href="http://tajidyakub.net/2007/08/08/squid-cache-tproxy-dan-mikrotik-alternatif-perpaduan-untuk-jaringan-sederhana/">indonesian article</a>;</p>
<p>IMO, there 2 types of network topology involving linux machine with squid installed doing cache on simple network (with <a href="http://www.mikrotik.com">mikrotik</a> os spesific router). This article tends to give alternative topology using  <a title="TPROXY" href="http://www.balabit.com/support/community/products/tproxy/" target="_blank">tproxy</a> (<em>A set of kernel patches reimplementing support for userspace transparent proxies</em>).</p>
<p>Those 2 types are;</p>
<ol>
<li>Squid is in equal position with the client, the http port interception is done through dst-nat or ip proxy parent with redirect port configuration (Configuration A).</li>
<li>Squid is after the client&#8217;s router and before the internet, the http port intercaption done through iptables redirect port (or transparent).</li>
</ol>
<p><span id="more-360"></span></p>
<p style="text-align: center;"><img src="http://tajidyakub.net/wp-content/uploads/2007/12/konfigurasi_a_squid.jpg" alt="konfigurasi_a_squid.jpg" /></p>
<p style="text-align: center;"><img src="http://tajidyakub.net/wp-content/uploads/2007/12/konfigurasi_b_squid.jpg" alt="konfigurasi_b_squid.jpg" /></p>
<p>Both of the models have significant downside as follows (subjective opinion);</p>
<p>Only one IP Address recognized after Squid because of NAT which caused;</p>
<ol>
<li>For networks counting on Mikrotik Router OS as bandwidth shaper, request to the internet coming from Squid cannot be shaped enymore (per client basis), which also automatically will eat all available bandwith, and another shape will be done globally by Internet Service Provider (Bandwidth Provider) in their router.</li>
<li>Bandwitdh coming out from Squid to the users (although taken from cache) will be included into client&#8217;s shape and limit (not a fair solution if we provide a dedicated bandwitdh for our client).</li>
<li>For multiple Gateway Connection (Configured by the Router &#8211; eg. Internasional through ADSL and wireless configuration), Squid will only use one gateway (the default gateway) &#8211; not a problem if International through ADSL and IIX through Wireless. It will be a problem if there is a load balancing configuration (client&#8217;s group or sessions based).</li>
</ol>
<p><strong>Intention</strong></p>
<p>Building Squid in bridged configuration without any additional configuration, not possible at this moment, since Squid works in application layer (layer 3) and required routing. Guide on <a title="freshmeat" href="http://freshmeat.net/articles/view/1433/" target="_blank">http://freshmeat.net/articles/view/1433/</a> not able to give solution to the downside mentioned above, because after Squid there will be only one IP Address. Although it is possible to implement the configuration in simple internet cafe without plenty of subnets. You could find another useful guide on bridged tpoxy through this article   <a title="TProxy" href="http://fuzzylab00net.blog.dada.net/post/413913/Squid-2.6-+-tproxy-+-bridge-+-gentoo.html" target="_blank">TProxy pada bridge</a>;</p>
<p><!--more--><strong>Alternative Description</strong></p>
<p>Squid become transition gateway between the clients and router (Gateway to the clients), the linux machine will route internet request package to the router without doing NAT by using Tproxy (patching linux kernel and iptables) and tcp_outgoing_address directive in squid.conf. The requiest on http port (80) will be routed to to the upper router (mikrotik in this case). Then static routing entries have to be configured in the mikrotik router which will route the answer from the internet to the Squid TProxy.</p>
<p style="text-align: center;"><img src="http://tajidyakub.net/wp-content/uploads/2007/12/konfigurasi_alternatif_squi.jpg" alt="konfigurasi_alternatif_squi.jpg" /></p>
<p>Data flow (HTTP) become.</p>
<p>Client (172.16.17.4) &#8211;&gt; eth1(172.16.17.1) (port 80 interception) &#8211;&gt; port 3128 (squid) witdh tcp_outgoing_address menggunakan 172.16.17.1 (client gateway) &#8212;-&gt; routing (without NAT) &#8211;&gt; Mikrotik (shaping + NAT) &#8211;&gt; Another Router&#8211;&gt; Internet &#8211;&gt; Back to Mikrotik &#8211;&gt; Static Routing to Squid Gateway&#8211;&gt; Port 80 interception &#8211;&gt; Client</p>
<p>These are the general steps;</p>
<ol>
<li>Standard Debian Etch Installation, Kernel 2.6.18</li>
<li>cttproxy kernel patch</li>
<li>TPROXY iptables userspace patch</li>
<li>Squid installation from source</li>
<li>Squid configuration</li>
<li>Routing configuration (without NAT) with Firehol</li>
<li>Static Routing in Mikrotik Router</li>
</ol>
<p><em><strong>Disclaimer</strong></em></p>
<ol>
<li>Tested in my own network.</li>
<li>This article is not intended to describe squid optimalization.</li>
<li>Possibility to be an incorrect solution (this is experimental)</li>
<li>Most importantly, <em>I am a Linux and Networking N00bs.</em></li>
</ol>
<p><strong>More Detailed Steps;</strong></p>
<p><strong>1. Standard Debian Etch Instalation, Kernel 2.6.18-4</strong></p>
<p>Base install, fetch Debian Etch net-install ISO from your favorite mirror, arrange the HDD partition scheme to your flavour. Mine was;</p>
<blockquote><p><code>df -h<br />
Filesystem            Size  Used Avail Use% Mounted on<br />
/dev/sda1              14G  1.2G   12G   9% /<br />
tmpfs                 253M     0  253M   0% /lib/init/rw<br />
udev                   10M   48K   10M   1% /dev<br />
tmpfs                 253M     0  253M   0% /dev/shm<br />
/dev/sda2              19G  278M   19G   2% /cache1<br />
/dev/sda3              19G  278M   19G   2% /cache2<br />
/dev/sda6              24G  223M   22G   1% /home</code></p></blockquote>
<p><strong>2. cttproxy Kernel Patching</strong></p>
<p>Read more information about kernel patching and compilation on <a title="Howtoforge" href="http://www.howtoforge.com/kernel_compilation_debian_etch">howtoforge</a>, I use the first method (Building a kernel .deb package), which steps are as follows (re-read the guide on howtoforge if you failed to follow my steps);</p>
<p>Required package installation (for kernel compilation);</p>
<blockquote><p><code>apt-get update<br />
apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential</code></p></blockquote>
<p>Download source kernel, the same kernel in this case since compilation will be done not for upgrading purpose;</p>
<blockquote><p><code>cd /usr/src/<br />
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.4.tar.gz<br />
tar -xzvf linux-2.6.18.4.tar.gz<br />
ln -s linux-2.6.18.4 linux</code></p></blockquote>
<p>Download and Apply kernel patch from cttproxy, read the detailed README in the package.</p>
<blockquote><p><code>cd /usr/src/<br />
wget http://www.balabit.com/downloads/files/tproxy/obsolete/linux-2.6/cttproxy-2.6.18-2.0.6.tar.gz<br />
cd /usr/src/linux<br />
for i in &lt;pathtocttproxy&gt;/patch_tree/0{1,2,3}*.diff; do cat $i | patch -p1; done</code></p></blockquote>
<p>Compile the kernel, activate conntrack, NAT and TPROXY support (inside Netfilter Configuration)</p>
<blockquote><p><code>make clean &amp;&amp; make mrproper<br />
cp /boot/config-`uname -r` ./.config</code></p></blockquote>
<p>Inside Kernel Compilation menu, choose  <em>Load an Alternate Configuration File</em> and choose <em>.config</em></p>
<blockquote><p><code>menuconfig position</code></p>
<p><code> -&gt; Networking<br />
---&gt; Networking support<br />
-----&gt; Networking options<br />
-------&gt; Network packet filtering<br />
----------&gt; IP: Netfilter Configuration</code></p></blockquote>
<p>After done configuring, exit the menuconfig, answer Yes on question  <em>Do you wish to save your new kernel configuration?</em></p>
<p>Build the Kernel</p>
<blockquote><p><code>make-kpkg clean<br />
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers</code></p></blockquote>
<p>Wait.., Install the newly compiled kernel</p>
<blockquote><p><code>cd /usr/src/<br />
ls -l&lt; </code></p></blockquote>
<p>thesw 2 files should exist;</p>
<blockquote><p><code>linux-headers-2.6.18.4-custom_2.6.18.4-custom-10.00.Custom_i386.deb<br />
linux-image-2.6.18.4-custom_2.6.18.4-custom-10.00.Custom_i386.deb</code></p></blockquote>
<p>Install those .deb;</p>
<blockquote><p><code>dpkg -i linux-headers-2.6.18.4-custom_2.6.18.4-custom-10.00.Custom_i386.deb<br />
dpkg -i linux-image-2.6.18.4-custom_2.6.18.4-custom-10.00.Custom_i386.deb</code></p></blockquote>
<p>GRUB bootloader  will be done automatically applying the new kernel, restart the system.</p>
<blockquote><p><code>shutdown -r now</code></p></blockquote>
<p><strong>3. TPROXY iptables userspace patching</strong></p>
<p>Fetch iptables source</p>
<blockquote><p><code>cd /usr/src/<br />
apt-get source iptables</code></p></blockquote>
<p>patch iptables (detailed info in README cttproxy)</p>
<blockquote><p><code>cd /usr/src/iptables-1.3.6.0debian1<br />
cat &lt;pathtocttproxy&gt;/iptables/iptables-1.3-cttproxy.diff | patch -p1<br />
chmod +x extensions/.tproxy-test<br />
make KERNELDIR=/usr/src/linux</code></p></blockquote>
<p>Build the .deb, and install</p>
<blockquote><p><code>cd /usr/src/iptables-1.3.6.0debian1<br />
dpkg-buildpackage -b -rfakeroot<br />
cd /usr/src/<br />
dpkg -i iptables_1.3.6.0debian1-5_i386.deb</code></p></blockquote>
<p>Create TPROXY rule to intercept HTTP request packets</p>
<blockquote><p><code>iptables -t tproxy -A PREROUTING -i eth1 -p tcp --dport 80 -j TPROXY --on-port 3128</code></p></blockquote>
<p>In Debian, put this command inside /etc/rc.local to automatically applied after restart, assumption = clients connected through eth1</p>
<p><strong>4. Install Squid from the source (Squid Binary 2.6.STABLE14)</strong></p>
<p>Fetch directly from squid-cache website, since squid package from debian doesn&#8217;t support tproxy;</p>
<p>http://packages.debian.org/changelogs/pool/main/s/squid/squid_2.6.5-6/changelog</p>
<blockquote><p><code>squid  (2.6.5-2) unstable; urgency=low<br />
* debian/rules<br />
- Remove mispelled configure option enablig TPROXY support<br />
(TPROXY support is NOT enabled since it needs kernel patches which<br />
are not in the kernel sources distributed by debian)</code></p></blockquote>
<blockquote><p><code>cd /usr/src/<br />
wget http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE14.tar.gz<br />
tar -xzvf squid-2.6.STABLE14.tar.gz</code></p></blockquote>
<p>Compile Squid, same configuration option with standard installation, witch additional option &#8211;enable-linux-tproxy, if you wish to view the standard configuration of your Squid, install squid with apt-get and run squid witch -v</p>
<blockquote><p><code>apt-get install squid<br />
squid -v</code></p></blockquote>
<p>Install Squid from the source, run .configure (in one line)</p>
<blockquote><p><code>cd /usr/src/squid-2.6.STABLE14/<br />
./configure --prefix=/usr --exec_prefix=/usr --bindir=/usr/sbin --sbindir=/usr/sbin --libexecdir=/usr/lib/squid --sysconfdir=/etc/squid --localstatedir=/var/spool/squid --datadir=/usr/share/squid --enable-linux-netfilter --enable-storeio=ufs,aufs,diskd,null --enable-arp-acl --enable-removal-policies=lru,heap --enable-snmp --enable-delay-pools --enable-htcp --enable-poll --enable-cache-digests --enable-underscores --enable-referer-log --enable-useragent-log --enable-auth="basic,digest,ntlm" --enable-carp --enable-large-files --enable-linux-tproxy<br />
make all<br />
make install<br />
cp /usr/src/linux/include/linux/netfilter_ipv4/ip_tproxy.h /usr/include/linux/netfilter_ipv4<br />
cp /usr/include/linux/capability.h /usr/include/sys</code></p></blockquote>
<p><strong>5. Squid Configuration</strong></p>
<p>Principally, Squid required routing to route the internet request, routing is depends on your linux routing table;</p>
<blockquote><p><code>route<br />
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface<br />
10.40.40.0      *               255.255.255.252 U     0      0        0 eth0<br />
172.16.80.0     *               255.255.255.248 U     0      0        0 eth1<br />
default         10.40.40.1      0.0.0.0         UG    0      0        0 eth0</code></p></blockquote>
<p>The default gateway is 10.40.40.1, and by default, all package from Squid will route to this IP Address. What we want to do here is to keep the Local IP Address or subnet (client&#8217;s subnet) when routed to the upper router by Squid. This will be done by binding the client&#8217;s real IP Address to the Linux Local IP Address (client&#8217;s gateway).<br />
On Squid, after we activate the tproxy, and put tcp_outgoing_address based on src-address, these are part of my configuration, this configuration might differ for recent Squid (3.0++)</p>
<blockquote><p><code>http_port 3128 tproxy transparent</code></p>
<p>##ACLs###<br />
acl client_3dnet_isplasa src 172.16.17.0/255.255.255.248<br />
acl client_3dnet_alwy src 172.16.17.8/255.255.255.248<br />
acl client_3dnet_anis src 172.16.17.16/255.255.255.248<br />
acl client_3dnet_pkstebet src 172.16.17.24/255.255.255.248<br />
acl client_3dnet_pkstebet2 src 172.16.17.32/255.255.255.248<br />
acl client_sonny src 172.16.35.8/255.255.255.248<br />
acl client_christ src 172.16.35.16/255.255.255.248<br />
acl client_shandy src 172.16.35.24/255.255.255.248<br />
acl client_tono src 172.16.35.32/255.255.255.248<br />
&#8230;</p>
<p>##TCP_Outgoing_Address###<br />
tcp_outgoing_address 172.16.17.1 client_3dnet_isplasa<br />
tcp_outgoing_address 172.16.17.9 client_3dnet_alwy<br />
tcp_outgoing_address 172.16.17.17 client_3dnet_anis<br />
tcp_outgoing_address 172.16.17.25 client_3dnet_pkstebet<br />
tcp_outgoing_address 172.16.17.33 client_3dnet_pkstebet2<br />
tcp_outgoing_address 172.16.35.9 client_sonny<br />
tcp_outgoing_address 172.16.35.17 client_christ<br />
tcp_outgoing_address 172.16.35.25 client_shandy<br />
tcp_outgoing_address 172.16.35.33 client_tono<br />
&#8230;</p>
<p>##Default##<br />
tcp_outgoing_address 10.40.40.2<br />
server_persistent_connections off</p></blockquote>
<p>With the configuration, hopefully when a request come from 172.16.17.4, squid on 172.16.17.1:3128 will route the request with local client;s IP Address (172.16.71.4) to Mikrotik. Please make sure that 172.16.17.1 (Client&#8217;s Gateway) is assigned to the Linux Local Interface.</p>
<p><strong>6. NAT Without Routing with Firehol</strong></p>
<p>Normally an internet gateway (on a non-public IP Address configuration) will NAT the request from their local users before route the traffic to the upper router, this is what we don&#8217;t one.</p>
<p>For this requirement, I use Firehol, you can read all about it on  <a href="http://firehol.sourceforge.net/" target="_blank">http://firehol.sourceforge.net</a>, this my configuration sample;</p>
<blockquote><p><code>Install Firehol<br />
apt-get install firehol</code></p></blockquote>
<p>For Firehol applied during reboot</p>
<blockquote><p>nano /etc/default/firehol<br />
#Rubah NO menjadi YES<br />
START_FIREHOL=YES<br />
#If you want to have firehol wait for an iface to be up add it here<br />
WAIT_FOR_IFACE=&#8221;"</p></blockquote>
<p>Standard Configuration</p>
<blockquote><p><code>cat /etc/firehol/firehol.conf</code></p>
<p>version 5</p>
<p>interface eth0 tomt<br />
policy accept</p>
<p>interface eth1 toclient<br />
policy accept</p>
<p>## for  eth1 could route to eth0 ##<br />
router localpublic inface eth1 outface eth0<br />
route all accept</p>
<p>## for  eth0 could route to eth1 ##<br />
router publiclocal inface eth0 outface eth1<br />
route all accept</p>
<p>## for local packets##<br />
router locallocal inface eth1 outface eth1<br />
route all accept</p>
<p>Run Firehol</p>
<p>/etc/init.d/firehol start</p></blockquote>
<p>Please notice that after you run firehol, all the iptables rule applied previously will be flushed. So re-applied the iptables TPROXY after you start or restart Firehol.</p>
<p><strong>7. Static Routing in Mikrotik Router</strong></p>
<p>For Mikrotik router to understand how to reach the client&#8217;s and answer their request, static routing must be applied here;<strong><br />
</strong></p>
<blockquote><p><code>/ip route pr<br />
..<br />
A S 172.16.80.0/24                     r 10.40.40.2               local<br />
..</code></p></blockquote>
<p>Create the rule for each of your local client&#8217;s subnet.</p>
<p>Additionally, if you want your Linux Box also become the DNS for the client&#8217;s, install bind, and make sure you have valid nameserver in /etc/resolv.conf.</p>
<blockquote><p>apt-get install bind<br />
cat /etc/resolv.conf<br />
nameserver 10.40.40.1</p></blockquote>
<p><em>special thanks to</em>;</p>
<p>Logan, Rizal dari <a href="http://lintaswave.net.id">LintasWave</a><br />
Baba, Maulana<br />
especially <a href="http://google.com">Google</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2008/03/22/squid-cache-tproxy-dan-mikrotik-alternate-configuration-for-simple-networks/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>LintasWave.NET.ID, Desain Situs</title>
		<link>http://www.tajidyakub.net/2008/03/09/lintaswavenetid-desain-situs/</link>
		<comments>http://www.tajidyakub.net/2008/03/09/lintaswavenetid-desain-situs/#comments</comments>
		<pubDate>Sun, 09 Mar 2008 04:54:21 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/index.php/2008/03/09/lintaswavenetid-desain-situs/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://lintaswave.net.id" title="LintasWave.NET.ID" target="_blank"><img src="http://tajidyakub.net/wp-content/uploads/2008/03/scr-shot-lintaswave.jpg" alt="Lintaswave.net.id" /></a></p>
<p>Sempet tergantung beberapa lama sih, tapi akhirnya master desain layoutnya kelar juga. Situs ini punya temen-temen yang punya ISP di matraman, judulnya <a href="http://lintaswave.net.id" title="LintasWave.NET.ID" target="_blank">LintasWave.NET.ID</a>, kedepannya diharapkan bisa digarap kontennya sehinggamampu menjadi situs yang informatif paling tidak untuk pelanggannya sendiri.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2008/03/09/lintaswavenetid-desain-situs/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>TCL Abadi Web Site</title>
		<link>http://www.tajidyakub.net/2008/01/16/tcl-abadi-web-site/</link>
		<comments>http://www.tajidyakub.net/2008/01/16/tcl-abadi-web-site/#comments</comments>
		<pubDate>Wed, 16 Jan 2008 05:01:45 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/index.php/2008/01/16/tcl-abadi-web-site/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p>Situs kantornya temennya <a href="http://biduritwins.com">temen</a>, di buat sesederhana mungkin dengan waktu pengerjaan yang secepat mungkin :P, dapat di akses di <a href="http://tcl-abadi.com">http://tcl-abadi.com</a>, screen shotnya ada di bawah.</p>
<p><img src="http://tajidyakub.net/wp-content/uploads/2008/01/tcl-abadi.jpg" alt="tcl-abadi.jpg" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2008/01/16/tcl-abadi-web-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Distribusi dalam Kotak &#8211; 1st Appearance</title>
		<link>http://www.tajidyakub.net/2008/01/10/distribusi-dalam-kotak-1st-appearance/</link>
		<comments>http://www.tajidyakub.net/2008/01/10/distribusi-dalam-kotak-1st-appearance/#comments</comments>
		<pubDate>Wed, 09 Jan 2008 19:47:44 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/index.php/2008/01/10/distribusi-dalam-kotak-1st-appearance/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p>Berawal dari memburuknya link ke sebuah point distribusi di Tebet dan keterbatasan dana, akhirnya Server <a href="http://indoupload.net">Indoupload.NET</a> generasi pertama turun pangkat melayani link Point to Point dari Tebet ke Utan Kayu sekaligus menjadi router distribusi untuk pengguna di kawasan tersebut.</p>
<p>Semoga karena hitungannya yang &#8220;veteran&#8221; benda ini mampu bertahan lama :P.</p>
<p><img src="http://tajidyakub.net/wp-content/uploads/2008/01/dav-distrib-1.jpg" alt="dav-distrib-1.jpg" /></p>
<p><span id="more-315"></span></p>
<p><img src="http://tajidyakub.net/wp-content/uploads/2008/01/dav-distrib-2.jpg" alt="dav-distrib-2.jpg" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2008/01/10/distribusi-dalam-kotak-1st-appearance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Final 3d Bed Room Render &#8211; BSD</title>
		<link>http://www.tajidyakub.net/2007/12/01/final-3d-bed-room-render-bsd/</link>
		<comments>http://www.tajidyakub.net/2007/12/01/final-3d-bed-room-render-bsd/#comments</comments>
		<pubDate>Fri, 30 Nov 2007 20:04:13 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/index.php/2007/12/01/final-3d-bed-room-render-bsd/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p>This drawing set refers to <a href="http://tajidyakub.net/index.php/2007/05/25/joss-bsd-interior-wip/">http://tajidyakub.net/index.php/2007/05/25/joss-bsd-interior-wip/</a> , long time ago it was a Work in Progress, few months later the design is final and again I help my wife developed the 3d images for main bed rooms. These are the images, scaled and resolution down to optimized web viewing.</p>
<p><img src="http://tajidyakub.net/wp-content/uploads/2007/12/kamar-tidur-anak-perempuan.jpg" alt="kamar-tidur-anak-perempuan.jpg" /></p>
<p><span id="more-292"></span></p>
<p><img src="http://tajidyakub.net/wp-content/uploads/2007/12/kamar-tidur-anak-laki.jpg" alt="kamar-tidur-anak-laki.jpg" /></p>
<p><img src="http://tajidyakub.net/wp-content/uploads/2007/12/kamar-tidur-utama.jpg" alt="kamar-tidur-utama.jpg" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2007/12/01/final-3d-bed-room-render-bsd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apartemen Marbella &#8211; Kemang Show Unit</title>
		<link>http://www.tajidyakub.net/2007/10/03/apartemen-marbella-kemang-show-unit/</link>
		<comments>http://www.tajidyakub.net/2007/10/03/apartemen-marbella-kemang-show-unit/#comments</comments>
		<pubDate>Wed, 03 Oct 2007 14:22:54 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/index.php/2007/10/03/apartemen-marbella-kemang-show-unit/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://tajidyakub.net/wp-content/uploads/2007/10/dining-kitchen-small.jpg" title="Dining Room"><img src="http://tajidyakub.net/wp-content/uploads/2007/10/dining-kitchen-small.jpg" alt="Dining Room" /></a></p>
<p>These are pictures of 3d rendered image developed by me to help my wife in <a href="http://pathwaydesign.info" title="Pathway Design" target="_blank">Pathway Design</a> in proposing interior and furniture services to the recently built Apartemen Marbella at Kemang.</p>
<p>Click on the thumbnails to view more detailed pictures.</p>
<p><a href="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/Master-Bed.jpg"><img src="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/image/thumb/Master-Bed.jpg" class="ZenPress_thumb" alt="Master-Bed" title="Master-Bed" /></a> <a href="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/Living.jpg"><img src="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/image/thumb/Living.jpg" class="ZenPress_thumb" alt="Living" title="Living" /></a> <a href="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/Living-Zoom.jpg"><img src="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/image/thumb/Living-Zoom.jpg" class="ZenPress_thumb" alt="Living-Zoom" title="Living-Zoom" /></a></p>
<p><a href="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/Dining-Kitchen.jpg"><img src="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/image/thumb/Dining-Kitchen.jpg" class="ZenPress_thumb" alt="Dining-Kitchen" title="Dining-Kitchen" /></a> <a href="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/anak-zoom.jpg"><img src="http://tajidyakub.net/gallery/apartemen-marbella-kemang-show-unit/image/thumb/anak-zoom.jpg" class="ZenPress_thumb" alt="anak-zoom" title="anak-zoom" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2007/10/03/apartemen-marbella-kemang-show-unit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Squid Cache, TProxy, dan Mikrotik (Alternatif Perpaduan Untuk Jaringan Sederhana)</title>
		<link>http://www.tajidyakub.net/2007/08/08/squid-cache-tproxy-dan-mikrotik-alternatif-perpaduan-untuk-jaringan-sederhana/</link>
		<comments>http://www.tajidyakub.net/2007/08/08/squid-cache-tproxy-dan-mikrotik-alternatif-perpaduan-untuk-jaringan-sederhana/#comments</comments>
		<pubDate>Tue, 07 Aug 2007 22:11:43 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Notes]]></category>
		<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/index.php/2007/08/08/squid-cache-tproxy-dan-mikrotik-alternatif-perpaduan-untuk-jaringan-sederhana/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p>Now available in <a href="http://tajidyakub.net/2008/03/22/squid-cache-tproxy-dan-mikrotik-alternate-configuration-for-simple-networks/" title="English Version">English</a>.</p>
<p>Berdasarkan pengamatan, ada dua model topologi pada jaringan sederhana yang menggunakan mesin linux tambahan dengan squid untuk melakuka http cache. Tulisan ini bermaksud untuk memberikan alternatif topologi dengan memanfaatkan <a href="http://www.balabit.com/support/community/products/tproxy/" title="TPROXY" target="_blank">tproxy</a>  (<em>A set of kernel patches reimplementing support for userspace transparent proxies</em>).</p>
<p>Kedua model topologi yang umum digunakan adalah;</p>
<ol>
<li>Squid sejajar dengan klien dan intersepsi port http dilakukan dengan melakukan dst-nat ataupun /ip proxy parent dengan redirect port (Konfigurasi A).</li>
<li>Squid berada setelah router dan menjadi router kedua yang melakukan intersepsi melalui iptables redirect (Konfigurasi B).</li>
</ol>
<p><img src="http://tajidyakub.net/wp-content/uploads/2007/12/konfigurasi_a_squid.jpg" alt="konfigurasi_a_squid.jpg" /></p>
<p><img src="http://tajidyakub.net/wp-content/uploads/2007/12/konfigurasi_b_squid.jpg" alt="konfigurasi_b_squid.jpg" /></p>
<p>Kedua model ini memiliki kelemahan mendasar sebagai berikut (subyektif);<br />
Hanya satu buah IP Address yang keluar dari Squid ketika menuju baik internet maupun router, karena telah dilakukan NAT, sebagai akibatnya;</p>
<ol>
<li>Bagi jaringan yang mengandalkan Mikrotik Router OS sebagai bandwidth shaper, request ke internet dari Squid sudah tidak dapat lagi di shape, sehingga otomatis akan memakan resource bandwidth yang tersisa (silahkan diteliti lebih lanjut), dan shaping akan dilakukan secara global oleh pihak ISP atau penyedia bandwidth.</li>
<li>Bandwidth yang diberikan pada user (meskipun dijawab oleh proxy) sudah masuk ke dalam shape.</li>
<li>Untuk yang menggunakan multiple gateway (misalnya memadukan koneksi internasional dari ADSL dan wireless), Squid hanya akan mengambil salah satu, bukan merupakan masalah apabila ADSL &#8211; Internasional, Wireless &#8211; IIX, tapi menjadi masalah apabila ruter melakukan load balancing, baik secara grup klien maupun berdasarkan session.</li>
</ol>
<p><strong>Cita-cita</strong><br />
Membangun Squid di dalam Linux Bridge (No additional configuration), menjadi sulit dilakukan karena Squid berjalan pada tatanan aplikasi dan otomatis memerlukan routing. Adapun menggunakan tutorial seperti yang terdapat pada <a href="http://freshmeat.net/articles/view/1433/" title="freshmeat" target="_blank">http://freshmeat.net/articles/view/1433/</a> tidak mengatasi kedua kelemahan di atas karena tetap keluar dalam 1 IP Address. Mungkin untuk diterapkan pada jaringan warnet yang menggunakan sedikit subnet, misalnya 192.168.100.0/24, gateway dan shaping 192.168.100.1 (Mikrotik), dan Squid Cache pada 192.168.100.2 (interface bridge). Sementara cita-cita tersebut terpaksa dilupakan :D, silahkan infonya bagi yang telah berhasil melakukan percobaan. Ada satu tutorial lagi yang dapat dijadikan acuan mengenai penggunaan <a href="http://fuzzylab00net.blog.dada.net/post/413913/Squid-2.6-+-tproxy-+-bridge-+-gentoo.html" title="TProxy" target="_blank">TProxy pada bridge</a>;</p>
<p><span id="more-272"></span></p>
<p><strong>Deskripsi Alternatif</strong><br />
Squid diletakkan sebagai gateway transisi antara klien dan ruter (Squid akan menjadi gateway bagi klien), Linux melakukan routing tanpa melakukan NAT, dan dengan menggunakan TProxy (melakukan patch pada Kernel dan IPTables) serta direktif tcp_outgoing_address pada squid, permintaan pada port 80 akan diteruskan ke ruter mikrotik yang melakukan shaping, NAT dan firewall. Dengan demikian, pada router Mikrotik akan ditambahkan static routing yang meneruskan jawaban dari Internet ke Proxy.</p>
<p><img src="http://tajidyakub.net/wp-content/uploads/2007/12/konfigurasi_alternatif_squi.jpg" alt="konfigurasi_alternatif_squi.jpg" /></p>
<p>Alur data (http) menjadi.</p>
<p>Klien (172.16.17.4) &#8211;&gt; eth1(172.16.17.1) (intersepsi port 80) &#8211;&gt;  port 3128 (squid) dengan tcp_outgoing_address menggunakan 172.16.17.1 (gateway klien)   &#8212;-&gt; routing (tanpa NAT) &#8211;&gt; Mikrotik (shaping + NAT) &#8211;&gt; Router lain &#8211;&gt; Internet &#8211;&gt; Kembali ke Mikrotik &#8211;&gt; Static Routing ke Gateway Squid &#8211;&gt; Intersepsi port 80 &#8211;&gt; User<br />
Berikut Langkah secara umumnya;</p>
<p>1. Instalasi standar Linux, OS yang digunakan adalah Debian etch, Kernel 2.6.18<br />
2. Melakukan patching kernel cttproxy<br />
3. Melakukan patching userspace iptables TPROXY<br />
4. Instalasi SQUID dari sourcenya, 2.6.STABLE14 dari Source<br />
5. Konfigurasi SQUID<br />
6. Melakukan Routing tanpa NAT dengan bantuan Firehol<br />
7. Static Routing di Mikrotik Router</p>
<p><em><strong>Disclaimer</strong></em></p>
<ol>
<li>Sudah dites dalam network berjalan.</li>
<li>Tulisan ini tidak menerangkan mengenai optimalisasi performa Squid</li>
<li>Belum tentu benar (namanya juga percobaan), meskipun sudah dites.</li>
<li>Yang paling penting, <em>I&#8217;m a Linux and Networking N00bs</em>.</li>
</ol>
<p><strong>Langkah secara lebih mendetil;</strong></p>
<p><strong>1. Instalasi standar Linux, OS yang digunakan adalah Debian etch, Kernel 2.6.18-4</strong></p>
<p>Lakukan instalasi biasa (base), dapatkan ISO Debian Etch-netinstall di mirror-mirror lokal yang banyak terdapat, salah satunya,.Atur skema partisi HDD sesuai</p>
<p>selera anda, berikut skema partisi saya;</p>
<blockquote><p><code>df -h<br />
Filesystem            Size  Used Avail Use% Mounted on<br />
/dev/sda1              14G  1.2G   12G   9% /<br />
tmpfs                 253M     0  253M   0% /lib/init/rw<br />
udev                   10M   48K   10M   1% /dev<br />
tmpfs                 253M     0  253M   0% /dev/shm<br />
/dev/sda2              19G  278M   19G   2% /cache1<br />
/dev/sda3              19G  278M   19G   2% /cache2<br />
/dev/sda6              24G  223M   22G   1% /home</code></p></blockquote>
<p><strong>2. Melakukan Patching Kernel cttproxy</strong></p>
<p>baca informasi untuk melakukan kompilasi kernel debian di <a href="http://www.howtoforge.com/kernel_compilation_debian_etch" title="Howtoforge">howtoforge</a>,  saya menggunakan metoda pertama (Building A Kernel .deb Package) yang kurang lebih langkahnya sebagai berikut (mohon dimaafkan kalau ada kesalahan-kesalahan, karena kompilasi kernel saya lakukan 2 minggu yang lalu, untuk pastinya silahkan baca link di atas);</p>
<p>Instal paket-paket yang diperlukan untuk kompilasi kernel;</p>
<blockquote><p> <code>apt-get update<br />
apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential</code></p></blockquote>
<p>Download source kernel, dalam hal ini tetap kernel yang sama, karena kompilasi kernel bukan untuk melakukan upgrade kernel;</p>
<blockquote><p><code>cd /usr/src/<br />
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.4.tar.gz<br />
tar -xzvf linux-2.6.18.4.tar.gz<br />
ln -s linux-2.6.18.4 linux</code></p></blockquote>
<p>Download dan Apply patch dari cttproxy<br />
Keterangan mengenai tata cara melakukan patching ada di dalam paket cttproxy</p>
<blockquote><p><code>cd /usr/src/<br />
wget http://www.balabit.com/downloads/files/tproxy/obsolete/linux-2.6/cttproxy-2.6.18-2.0.6.tar.gz<br />
cd /usr/src/linux<br />
for i in &lt;pathtocttproxy&gt;/patch_tree/0{1,2,3}*.diff; do cat $i | patch -p1; done</code></p></blockquote>
<p>Lakukan kompilasi kernel, aktifkan conntrack, NAT dan TPROXY support (ada di dalam Netfilter Configuration)</p>
<blockquote><p><code>make clean &amp;&amp; make mrproper<br />
cp /boot/config-`uname -r` ./.config</code></p></blockquote>
<p>Anda akan masuk ke dalam menu kompilasi kernel, pilih <em>Load an Alternate Configuration File</em> dan pilih <em>.config</em></p>
<blockquote><p><code>Posisi di menuconfig<br />
-&gt; Networking<br />
---&gt; Networking support<br />
-----&gt; Networking options<br />
-------&gt; Network packet filtering<br />
----------&gt; IP: Netfilter Configuration</code></p></blockquote>
<p>Setelah selesai mengaktifkan, ketika keluar dari menuconfig, jawab <em>Yes</em> terhadap pertanyaan <em>Do you wish to save your new kernel configuration?</em></p>
<p>Build Kernel</p>
<blockquote><p><code>make-kpkg clean<br />
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers</code></p></blockquote>
<p>Tunggu agak lama, (kalau kasus saya sekitar satu jam atau lebih)</p>
<p>Install Kernel baru</p>
<blockquote><p><code>cd /usr/src/<br />
ls -l&lt; </code></p></blockquote>
<p>akan terlihat kedua file berikut;</p>
<blockquote><p><code>linux-headers-2.6.18.4-custom_2.6.18.4-custom-10.00.Custom_i386.deb<br />
linux-image-2.6.18.4-custom_2.6.18.4-custom-10.00.Custom_i386.deb</code></p></blockquote>
<p>lakukan instalasi file deb tersebut;</p>
<blockquote><p><code>dpkg -i linux-headers-2.6.18.4-custom_2.6.18.4-custom-10.00.Custom_i386.deb<br />
dpkg -i linux-image-2.6.18.4-custom_2.6.18.4-custom-10.00.Custom_i386.deb</code></p></blockquote>
<p>konfigurasi GRUB bootloader di /boot/grub/menu.lst telah dimodifikasi secara otomatis, anda tinggal melakukan restart sistem, dan pilihan booting default menjadi kernel yang baru kita modifikasi.</p>
<blockquote><p><code>shutdown -r now</code></p></blockquote>
<p><strong>3. Melakukan patching userspace iptables TPROXY</strong></p>
<p>Ambil source iptables</p>
<blockquote><p><code>cd /usr/src/<br />
apt-get source iptables</code></p></blockquote>
<p>patch iptables (informasi lengkap ada di README cttproxy)</p>
<blockquote><p><code>cd /usr/src/iptables-1.3.6.0debian1<br />
cat &lt;pathtocttproxy&gt;/iptables/iptables-1.3-cttproxy.diff | patch -p1<br />
chmod +x extensions/.tproxy-test<br />
make KERNELDIR=/usr/src/linux</code></p></blockquote>
<p>buat paket debnya dan lakukan instalasi</p>
<blockquote><p> <code>cd /usr/src/iptables-1.3.6.0debian1<br />
dpkg-buildpackage -b -rfakeroot<br />
cd /usr/src/<br />
dpkg -i iptables_1.3.6.0debian1-5_i386.deb</code></p></blockquote>
<p>Masukkan rule TPROXY untuk melakukan intersepsi terhadap request http (port 80)</p>
<blockquote><p><code>iptables -t tproxy -A PREROUTING -i eth1 -p tcp --dport 80 -j TPROXY --on-port 3128</code></p></blockquote>
<p>Pada debian, letakkan perintah ini di /etc/rc.local agar terload ketika sistem di restart, asumsinya user terhubung melalui eth1 (interface Local).</p>
<p><strong>4. Install Squid dari Source (Ambil binary Squid 2.6.STABLE14)</strong></p>
<p>Paket squid yang digunakan adalah 2.6.STABLE14, ambil langsung source codenya dari situs squid-cache karena paket squid dari debian tidak mendukung tproxy.</p>
<p>http://packages.debian.org/changelogs/pool/main/s/squid/squid_2.6.5-6/changelog</p>
<blockquote><p><code>squid  (2.6.5-2) unstable; urgency=low<br />
* debian/rules<br />
- Remove mispelled configure option enablig TPROXY support<br />
(TPROXY support is NOT enabled since it needs kernel patches which<br />
are not in the kernel sources distributed by debian)</code></p></blockquote>
<blockquote><p><code>cd /usr/src/<br />
wget http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE14.tar.gz<br />
tar -xzvf squid-2.6.STABLE14.tar.gz</code></p></blockquote>
<p>kompilasi dilakukan sama dengan kompilasi standard debian dengan tambahan opsi -enable-linux-tproxy, apabila ingin melihat standar kompilasi squid pada</p>
<p>debian silahkan instal terlebih dahulu squid dan jalankan dengan -v.</p>
<blockquote><p><code>apt-get install squid<br />
squid -v</code></p></blockquote>
<p>Instal squid dari source, Jalankan perintah ./configure dalam satu baris.</p>
<blockquote><p><code>cd /usr/src/squid-2.6.STABLE14/<br />
./configure --prefix=/usr --exec_prefix=/usr --bindir=/usr/sbin --sbindir=/usr/sbin --libexecdir=/usr/lib/squid --sysconfdir=/etc/squid --localstatedir=/var/spool/squid --datadir=/usr/share/squid --enable-linux-netfilter --enable-storeio=ufs,aufs,diskd,null --enable-arp-acl --enable-removal-policies=lru,heap --enable-snmp --enable-delay-pools --enable-htcp --enable-poll --enable-cache-digests --enable-underscores --enable-referer-log --enable-useragent-log --enable-auth="basic,digest,ntlm" --enable-carp --enable-large-files --enable-linux-tproxy<br />
make all<br />
make install<br />
cp /usr/src/linux/include/linux/netfilter_ipv4/ip_tproxy.h /usr/include/linux/netfilter_ipv4<br />
cp /usr/include/linux/capability.h /usr/include/sys</code></p></blockquote>
<p><strong>5. Konfigurasi SQUID</strong></p>
<p>Pada prinsipnya squid membutuhkan routing untuk meneruskan permintaan ke internet, routing akan tergantung pada aturan routing yang ada di linux anda, pada</p>
<p>contoh ini, apabila kita melihat table routing yang ada;</p>
<blockquote><p><code>route<br />
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface<br />
10.40.40.0      *               255.255.255.252 U     0      0        0 eth0<br />
172.16.80.0     *               255.255.255.248 U     0      0        0 eth1<br />
default         10.40.40.1      0.0.0.0         UG    0      0        0 eth0</code></p></blockquote>
<p>Default gateway nya adalah 10.40.40.1, sehingga secara default semua paket yang diambil oleh squid untuk dilanjutkan ke internet akan menggunakan 10.40.40.1 sebagai routing ke internet. Yang diinginkan adalah agar ketika misalnya ada request dari user dengan IP Address 172.16.80.4 yang gatewaynya ke 172.16.80.1 (IP Address di eth1) ke internet pada port 80 (http), yang kemudian dialihkan ke port 3128 (squid) dengan menggunakan TPROXY iptables, squid akan melakukan binding dengan IP Address 172.16.80.1, yang apabila routingnya sudah diatur (lihat langkah no.6) akan diteruskan ke 10.40.40.1 dengan tetap membawa IP Address user 172.16.80.4 (iptables TPROXY).</p>
<p>Pada squid yang dibutuhkan adalah pengaktifan tproxy, dan memanfaatkan tcp_outgoing address berdasarkan acl src-address, berikut contoh file konfigurasi saya (sebagian). Silahkan eksplorasi lebih lanjut untuk konfigurasi performa squid.</p>
<blockquote><p><code>http_port 3128 tproxy transparent</code></p>
<p>##ACLs###<br />
acl client_3dnet_isplasa src 172.16.17.0/255.255.255.248<br />
acl client_3dnet_alwy src 172.16.17.8/255.255.255.248<br />
acl client_3dnet_anis src 172.16.17.16/255.255.255.248<br />
acl client_3dnet_pkstebet src 172.16.17.24/255.255.255.248<br />
acl client_3dnet_pkstebet2 src 172.16.17.32/255.255.255.248<br />
acl client_sonny src 172.16.35.8/255.255.255.248<br />
acl client_christ src 172.16.35.16/255.255.255.248<br />
acl client_shandy src 172.16.35.24/255.255.255.248<br />
acl client_tono src 172.16.35.32/255.255.255.248<br />
&#8230;</p>
<p>##TCP_Outgoing_Address###<br />
tcp_outgoing_address 172.16.17.1 client_3dnet_isplasa<br />
tcp_outgoing_address 172.16.17.9 client_3dnet_alwy<br />
tcp_outgoing_address 172.16.17.17 client_3dnet_anis<br />
tcp_outgoing_address 172.16.17.25 client_3dnet_pkstebet<br />
tcp_outgoing_address 172.16.17.33 client_3dnet_pkstebet2<br />
tcp_outgoing_address 172.16.35.9 client_sonny<br />
tcp_outgoing_address 172.16.35.17 client_christ<br />
tcp_outgoing_address 172.16.35.25 client_shandy<br />
tcp_outgoing_address 172.16.35.33 client_tono<br />
&#8230;</p>
<p>##Default##<br />
tcp_outgoing_address 10.40.40.2<br />
server_persistent_connections off</p></blockquote>
<p>Dengan demikian apabila request muncul dari IP Address 172.16.17.4, maka squid akan berjalan pada 172.16.17.1:3128, sehingga request diteruskan dengan tetap membawa IP Address user (172.16.17.4) ke Router Mikrotik yang terletak diatasnya. Pastikan bahwa IP Gateway user merupakan salah satu IP Address yang diassign ke eth1 (local), karena gateway user adalah ke Gateway Linux Squid.</p>
<p><strong>6. Melakukan Routing tanpa NAT dengan bantuan Firehol</strong></p>
<p>Pada umumnya, sebuah gateway akan melakukan NAT sebelumnya melanjutkan request ke internet, namun demikian dengan serangkaian rule iptables (mungkin bisa dengan pendekatan lain, sayangnya saya belum bisa), routing paket bisa diteruskan ke atas (Router Mikrotik), dan NAT akan dilakukan oleh Router Mikrotik.</p>
<p>Untuk melakukan hal ini saya menggunakan firehol yang keterangan dan konfigurasi lengkapnya bisa dilihat di http://firehol.sourceforge.net/, pada contoh ini saya hanya membuat agar firehol melakukan routing terhadap permintaan dari eth1 (local ke user) ke eth0 (public ke mikrotik), apabila dibaca lebih lanjut firehol sangat berguna untuk melakukan konfigurasi firewall apabila tugas firewall ke user ingin dilakukan oleh Linux.</p>
<blockquote><p><code>Install Firehol<br />
apt-get install firehol</code></p></blockquote>
<p>Agar firehol berjalan ketika sistem di boot</p>
<blockquote><p> nano /etc/default/firehol<br />
#Rubah NO menjadi YES<br />
START_FIREHOL=YES<br />
#If you want to have firehol wait for an iface to be up add it here<br />
WAIT_FOR_IFACE=&#8221;"</p></blockquote>
<p>Konfigurasi standar</p>
<blockquote><p><code>cat /etc/firehol/firehol.conf</code></p>
<p>version 5</p>
<p>interface eth0 tomt<br />
policy accept</p>
<p>interface eth1 toclient<br />
policy accept</p>
<p>## agar dari eth1 bisa melakukan routing ke eth0 ##<br />
router localpublic inface eth1 outface eth0<br />
route all accept</p>
<p>## agar dari eth0 bisa melakukan routing ke eth1 ##<br />
router publiclocal inface eth0 outface eth1<br />
route all accept</p>
<p>## agar paling tidak sesama user local dapat melakukan ping ##<br />
router locallocal inface eth1 outface eth1<br />
route all accept</p>
<p>Menjalankan firehol<br />
/etc/init.d/firehol start</p></blockquote>
<p>harap diperhatikan bahwa apabila anda melakukan restart pada service firehol, rule iptables yang ada di luar firehol akan hilang, dalam contoh ini adalah rule iptables TPROXY. Setelah anda selesai melakukan modifikasi konfigurasi firehol dan merestart firehol, jalankan kembali rule iptables di luar konfigurasi firehol.</p>
<p><strong>7. Static Routing di Mikrotik Router</strong></p>
<p>Agar Router mikrotik dapat mengetahui kemana paket permintaan dari user dibelakang squid diteruskan, harus dilakukan static routing ke Squid Gateway yang</p>
<p>berada di interface local mikrotik.</p>
<blockquote><p><code>/ip route pr<br />
..<br />
A S 172.16.80.0/24                     r 10.40.40.2               local<br />
..</code></p></blockquote>
<p>Apabila banyak subnet di belakang squid silahkan diarahkan satu persatu. Contoh di atas adalah saya memiliki beberapa user dengan blok ip address 172.16.80.0/29, 172.16.80.8/29 dst, di belakang Gateway Squid.</p>
<p>Tambahan, agar supaya Linux bisa berfungsi sebagai DNS, silahkan lakukan instalasi bind, dan pastikan di /etc/resolv.conf ada Name Server yang valid.</p>
<blockquote><p>apt-get install bind<br />
cat /etc/resolv.conf<br />
nameserver 10.40.40.1</p></blockquote>
<p>Demikian sedikit tulisan ini dibuat, semoga ada gunanya dan mohon ditambahkan, disempurnakan, dicek apabila ada kesalahan <em>special thanks to</em>;</p>
<p>Om Logan, Om Rizal dari LintasWave<br />
Om Baba, Om Maulana<br />
terutama Om Google</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2007/08/08/squid-cache-tproxy-dan-mikrotik-alternatif-perpaduan-untuk-jaringan-sederhana/feed/</wfw:commentRss>
		<slash:comments>36</slash:comments>
		</item>
		<item>
		<title>Joss BSD, Interior, WIP</title>
		<link>http://www.tajidyakub.net/2007/05/25/joss-bsd-interior-wip/</link>
		<comments>http://www.tajidyakub.net/2007/05/25/joss-bsd-interior-wip/#comments</comments>
		<pubDate>Thu, 24 May 2007 18:49:10 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/index.php/2007/05/25/joss-bsd-interior-wip/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p>WiP = Work in Progress, seperti dapat disaksikan sendiri betapa detil interiornya masih belum terlalu bagus, dan lighting serta kualitas renderingnya merupakan kualitas pengerjaan sehari-semalam, kumpulan gambar ini merupakan pitch awal ke owner, proyeknya Nadin dan Gua. Modelling menggunakan Autodesk 3dsmax 8.0 SP 2, dirender menggunakan v-Ray 1.53RC3. (klik untuk gambar lebih besar)</p>
<p><a href="http://tajidyakub.net/gallery/joss-bsd-interior-wip/kmanak-001.jpg"><img src="http://tajidyakub.net/gallery/joss-bsd-interior-wip/image/thumb/kmanak-001.jpg" class="ZenPress_thumb" alt="kmanak-001" title="kmanak-001" /></a> <a href="http://tajidyakub.net/gallery/joss-bsd-interior-wip/kmanak-002.jpg"><img src="http://tajidyakub.net/gallery/joss-bsd-interior-wip/image/thumb/kmanak-002.jpg" class="ZenPress_thumb" alt="kmanak-002" title="kmanak-002" /></a> <a href="http://tajidyakub.net/gallery/joss-bsd-interior-wip/kmtidur-001.jpg"><img src="http://tajidyakub.net/gallery/joss-bsd-interior-wip/image/thumb/kmtidur-001.jpg" class="ZenPress_thumb" alt="kmtidur-001" title="kmtidur-001" /></a></p>
<p><a href="http://tajidyakub.net/gallery/joss-bsd-interior-wip/kmtidur-002.jpg"><img src="http://tajidyakub.net/gallery/joss-bsd-interior-wip/image/thumb/kmtidur-002.jpg" class="ZenPress_thumb" alt="kmtidur-002" title="kmtidur-002" /></a> <a href="http://tajidyakub.net/gallery/joss-bsd-interior-wip/living-001.jpg"><img src="http://tajidyakub.net/gallery/joss-bsd-interior-wip/image/thumb/living-001.jpg" class="ZenPress_thumb" alt="living-001" title="living-001" /></a> <a href="http://tajidyakub.net/gallery/joss-bsd-interior-wip/lounge.jpg"><img src="http://tajidyakub.net/gallery/joss-bsd-interior-wip/image/thumb/lounge.jpg" class="ZenPress_thumb" alt="lounge" title="lounge" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2007/05/25/joss-bsd-interior-wip/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>indoupload.net</title>
		<link>http://www.tajidyakub.net/2007/05/21/indouploadnet/</link>
		<comments>http://www.tajidyakub.net/2007/05/21/indouploadnet/#comments</comments>
		<pubDate>Mon, 21 May 2007 16:31:06 +0000</pubDate>
		<dc:creator>Tajid Yakub</dc:creator>
				<category><![CDATA[Thoughts]]></category>
		<category><![CDATA[Works]]></category>

		<guid isPermaLink="false">http://tajidyakub.net/index.php/2007/05/21/indouploadnet/</guid>
		<description><![CDATA[ [...]]]></description>
			<content:encoded><![CDATA[<p>Sedang bersiap-siap untuk meremajakan situs indoupload.net, yang paling tidak buat gua, banyak gunanya :D. Menjamurnya storage lokal (IIX) menjadi sebuah fenomena yang patut di syukuri, tentu saja rata-rata dengan dukungan perangkat keras dan infrastruktur yang jauh lebih memadai dari indoupload.net.</p>
<p><span id="more-241"></span></p>
<p>Paling tidak sebagai sebuah perjuangan, indoupload.net menurut gua telah berhasil mencapai tujuannya, &#8220;menyebar&#8221; virus hemat bandwidth internasional :D.  Masih segar di ingatan ketika tiba-tiba domain selain .net telah dibeli oleh orang lain, ada indoupload.com, bahkan sekarang ada indoupload.org, padahal nama indoupload sendiri menurut gua masih sarat dengan muatan perjuangan tadi .. <strong>Indonesia</strong> dan <strong>Upload</strong>, pastinya nanti nama ini akan juga diremajakan ketika indoupload.net mulai melangkah ke tujuannya yang kedua&#8230; menyediakan layanan yang ramah dan dapat diandalkan.. entah kapan hehehe, mungkin setelah status beta / coba-coba udah berani gua cabut.</p>
<p>Sedikit munafik mungkin terdengarnya, tapi sebagai salah seorang penggagas dan eksekutor indoupload.net, gua sudah cukup puas, jauh dari keinginan untuk masuk top 50 traffic ranking / site visit se-indonesia. Tapi masih tersisa keinginan untuk membangun sesuatu yang berfungsi dengan baik, dan bermanfaat untuk orang banyak, kapan keinginan itu bisa tercapai?.. pelan-pelan.. masih banyak Pekerjaan Rumah yang terbengkalai, hehehe.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tajidyakub.net/2007/05/21/indouploadnet/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
	</channel>
</rss>

