<?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>AtlaWare Home</title>
	<atom:link href="http://www.atlaware.it/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.atlaware.it</link>
	<description>Un posto virtuale per cose virtuali</description>
	<lastBuildDate>Fri, 31 Jul 2009 13:01:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Aggiornare una route in base ad un host dinamico.</title>
		<link>http://www.atlaware.it/?p=83</link>
		<comments>http://www.atlaware.it/?p=83#comments</comments>
		<pubDate>Fri, 31 Jul 2009 13:00:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[howto]]></category>

		<guid isPermaLink="false">http://www.atlaware.it/?p=83</guid>
		<description><![CDATA[In biblioteca c&#8217;è un proxy server ed un determinato default gateway e poi c&#8217;è un router(non il default) che fa NAT, bene! Far passare tutto il traffico cambiando il default route attraverso questo router nascosto non mi pareva carino, però almeno la vpn volevo farcela passare. Il mio server ha ip dinamico e quindi ho [...]]]></description>
			<content:encoded><![CDATA[<p>In biblioteca c&#8217;è un proxy server ed un determinato default gateway e poi c&#8217;è un router(non il default) che fa NAT, bene! <img src='http://www.atlaware.it/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Far passare tutto il traffico cambiando il default route attraverso questo router nascosto non mi pareva carino, però almeno la vpn volevo farcela passare. Il mio server ha ip dinamico e quindi ho dovuto fare un piccolo script bash che controlla il mio dyndns, controlla se la route presente è corretta oppure no, e nel caso la cambia con il nuovo ip, poi aspetta 120 secondi e continua così all&#8217;infinito.</p>
<p>Modificatelo a piacere, per metterlo in funzione sicuramente bisogna cambiare i due parametri iniziali (gateway alternativo e il dyndns su cui fare il check dell&#8217;ip).</p>
<p>Per fare un check di quel che succede il file di log è: <code>/var/log/route.log</code>.</p>
<p><a href="/howto/routedinamica/routebellaaa.sh">Download routebellaaa.sh</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlaware.it/?feed=rss2&amp;p=83</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Multi-ppp con Alice ADSL, 5 ip pubblici con un modem e linux.</title>
		<link>http://www.atlaware.it/?p=74</link>
		<comments>http://www.atlaware.it/?p=74#comments</comments>
		<pubDate>Mon, 04 May 2009 09:13:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[howto]]></category>
		<category><![CDATA[adsl]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ppp]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.atlaware.it/?p=74</guid>
		<description><![CDATA[Alice adsl funziona in pppoe, e da ormai qualche anno quasi tutti i modem alice funzionano in modalità routed+bridge. Quesa configurazione da la possibilità di utilizzare il modem come fosse un router, ma anche di lanciare una sessione pppoe direttamente da qualsiasi client in rete locale, e vedersi assegnare un ip pubblico. E se lanciamo [...]]]></description>
			<content:encoded><![CDATA[<p>Alice adsl funziona in pppoe, e da ormai qualche anno quasi tutti i modem alice funzionano in modalità routed+bridge. Quesa configurazione da la possibilità di utilizzare il modem come fosse un router, ma anche di lanciare una sessione pppoe direttamente da qualsiasi client in rete locale, e vedersi assegnare un ip pubblico.<br />
E se lanciamo più sessioni pppoe sul nostro server linux?<br />
Si, è possibile avere più device ppp, con ip differenti, utilizzabili a nostro piacimento, bisogna solo stare attenti al routing, che non è così immediato da gestire.</p>
<p>Per avere più device ppp in gentoo, è sufficiente creare più script net.pppX in /etc/init.d/ e configurare il device eth relativo all&#8217;adsl(sempre lo stesso), in /etc/conf.d/net in questo modo:<br />
<code>config_ppp0=( "ppp" )<br />
config_ppp1=( "ppp" )<br />
link_ppp0="eth2"<br />
link_ppp1="eth2"<br />
</code><br />
Per le altre distribuzioni (per quelle che utilizzano il classico adsl-start), forse è addirittura sufficente lanciare più volte il comando, e vedrete in automatico saltare fuori i vari device ppp!</p>
<p>Tutto si fa tramite iproute2, utilizzando il source-routing (<a href="http://tldp.org/HOWTO/Adv-Routing-HOWTO/lartc.rpdb.multiple-links.html">questa è la bibbia</a>):</p>
<p><strong>1° passo:</strong><br />
aggiungiamo delle tabelle di routing nuove in questo file: <code><a href="/howto/multi-ppp/rt_tables">/etc/iproute2/rt_tables</a></code>, aggiungendo semplicemente delle righe per ogni tabella:</p>
<p><code>100     T1<br />
101     T2<br />
102     T3<br />
103     T4<br />
104     T5</code></p>
<p>per informazione, sia gli ID(prima colonna), che i nomi delle tabelle(seconda colonna), sono a vostra scelta.</p>
<p><strong>2° passo:</strong><br />
Ora dobbiamo far i modo che ogni volta che un dev ppp divenga up, vengano settate le corrette regole di routing, questo si fa tramite il file <a href="/howto/multi-ppp/ip-up">/etc/ppp/ip-up</a> e lo script <a href="/howto/multi-ppp/fire-ppp1">/etc/ppp/fire-ppp1</a><br />
Vediamo un po&#8217; <strong>ip-up</strong> che chiama semplicemente fire-ppp1 con i parametri adeguati(device, ip4, e una tabella di routing):</p>
<p><code>if [ "$1" == "ppp1" ]; then<br />
/etc/ppp/fire-ppp1 $1 $4 T1<br />
exit;<br />
</code></p>
<p>mente <strong>fire-ppp1</strong>, fa quello che più ci interessa:</p>
<p><code># Conf<br />
EXT_PPP=$1<br />
IP_PPP=$2<br />
# Routing<br />
ip rule add from ${IP_PPP} table $3<br />
ip route add 192.168.6.0/24 dev eth0 table $3     # Mia rete locale.<br />
ip route add 127.0.0.0/8 dev lo table $3<br />
ip route add default via ${IP_PPP} table $3<br />
</code><br />
Fondamentalmente, con la prima riga di iproute2 viene specificato che i pacchetti che hanno come sorgente l&#8217;ip4 di ppp1, devono riferirsi alla tabella di routing T1, e con la terza riga gli si specifica il default route corretto.</p>
<p>Bene, questo è il &#8220;cuore&#8221;: il routing funziona e non succederà che un pacchetto in entrata su ppp1, voglia uscire su ppp0, ora però ci sono diverse strategie per utilizzare concretamente i nostri svariati device.</p>
<p>La cosa più semplice è usare programmi unix che permettano di specificare l&#8217;interfaccia web da utilizzare, ping per esempio <img src='http://www.atlaware.it/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><code>gandalf ppp # <strong>ping -I ppp1 www.google.it</strong><br />
PING www.l.google.com (74.125.39.103) from 82.52.142.235 ppp1: 56(84) bytes of data.<br />
64 bytes from fx-in-f103.google.com (74.125.39.103): icmp_seq=1 ttl=245 time=53.6 ms<br />
64 bytes from fx-in-f103.google.com (74.125.39.103): icmp_seq=2 ttl=245 time=51.5 ms<br />
</code></p>
<p>Altra soluzione è attivare il masquerading sul device ppp1 aggiungendo queste 2 righe a fire-ppp1<br />
<code>iptables -t nat -D POSTROUTING -o ${EXT_PPP} -j MASQUERADE</code><br />
e poi definire quale ip della rete locale debba attenersi alla tabella di routing di ppp1 così:<br />
<code>ip rule add from 192.168.6.101 table T1</code><br />
In questo modo, l&#8217;ip 192.168.6.101, uscirà in NAT su ppp1, e non su ppp0.</p>
<p>Oppure ancora, utilizzare squid, definendo i due ip di uscita così:<br />
<code>tcp_outgoing_address 82.52.142.235 ppp1<br />
tcp_outgoing_address 82.52.161.79 ppp0<br />
</code></p>
<p>e definire 2 utenti (ppp0 e ppp1) e la relativa acl</p>
<p><code>acl ppp0 proxy_auth ppp0<br />
acl ppp1 proxy_auth ppp1<br />
http_access allow ppp0<br />
http_access allow ppp1<br />
</code></p>
<p>Infine si possono semplicemente redirigere porte con iptables nella propria rete, provate e divertitevi.</p>
<p>Queste sono le basi, poi si può fare di tutto, nei file che ho già lincato sopra e allego qui sotto, ci sono molti esempi, anche di utilizzo tramite iptables, di come gestire in automatico il cambio di ip in squid, di come redirigere o bloccare porte, pacchetti, e come farli andare sulla luna (questo no in realtà!)<br />
Buon divertimento!!!</p>
<p><a href="/howto/multi-ppp/squid.conf">squid.conf</a><br />
<a href="/howto/multi-ppp/ip-up">ip-up</a><br />
<a href="/howto/multi-ppp/fire-ppp1">fire-ppp1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlaware.it/?feed=rss2&amp;p=74</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ben arrivato!</title>
		<link>http://www.atlaware.it/?p=60</link>
		<comments>http://www.atlaware.it/?p=60#comments</comments>
		<pubDate>Tue, 06 Jan 2009 16:31:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.atlaware.it/?p=60</guid>
		<description><![CDATA[Benvenuto nella mia fantastica e vuota home page!]]></description>
			<content:encoded><![CDATA[<p>Benvenuto nella mia fantastica e vuota home page!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.atlaware.it/?feed=rss2&amp;p=60</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
