= Come si condivide la propria ADSL? =

Per condividere la propria ADSL bisogna far annunciare ad una delle antenne del proprio nodo (o al router OLSR principale nel caso di routing a terra) la rotta di default, anche conosciuta come '''"la zero"'''.

Per fare queste modifiche è necessario connettersi via SSH sul proprio device.

== Modificare il file olsrd.conf ==

{{{

# cd alla directory dove si trova il file olsrd.conf
vi olsrd.conf

}}}

aggiungere 0.0.0.0 0.0.0.0 al blocco Hna4:

per i device che usano il file di olsr parsed (come AirOS)

{{{
Hna4
{
[IP-TUASUBNET] 255.255.255.0
0.0.0.0 0.0.0.0
}
}}}

per i device che utilizzano il file di olsr uci

{{{
config Hna4
        option netaddr 'TUA_SUBNET'
        option netmask '255.255.255.0'
        option netaddr '0.0.0.0'
        option netmask '0.0.0.0'
}}}

== Modificare il Gateway ==

imposta l'indirizzo del tuo router ADSL come default gateway. '''Il tuo router deve essere raggiungibile da rete ninux!'''

Ad esempio su '''AirOS''' si può fare così:

{{{
vi /tmp/system.cfg
}}}

{{{
# modificando poi la riga del gateway
route.1.gatway=[INDIRIZZO-IP-ROUTER-ADSL]
# salva ed esci premendo :wq e poi enter
}}}

{{{
cfgmtd -f /tmp/system.cfg -p /etc -w && reboot
}}}

== Impostare la rotta di default ==

Per impostare la rotta di default sia in AirOS che su OpenWRT bisogna dare il comando

{{{
ip -4 r a default via [INDIRIZZO-IP-ROUTER-ADSL]  dev eth0
}}}

Per far eseguire questo comando all'avvio del device lo si deve inserire in uno degli script di avvio

Sul firmware Ninux per AirOS si fa così:

{{{
vi /etc/persisent/ninux
}}}

aggiungere il comando subito prima delle ultime due righe:

{{{
# ... altre impostazioni
# ...

ip -4 r a default via [INDIRIZZO-IP-ROUTER-ADSL]  dev eth0

# fine del file
) &
}}}

per i device con OpenWRT è necessario inserire il comando

{{{
# ... altre impostazioni
ip -4 r a default via [INDIRIZZO-IP-ROUTER-ADSL]  dev eth0
# ... altre impostazioni
exit 0
}}}

all'interno del file /etc/rc.local oppure configurare in maniera adeguata il file /etc/config/network


== Far conoscere al router ADSL dov'è ninux ==
Avendo il router adsl la rotta di default del provider e conoscendo solo la sottorete locale occorre indicargli come raggiungere la rete ninux.
Per far questo basta mandare la classe degli ip privati verso un router olsr nella nostra rete (antenna o router che sia).
I router ADSL hanno spesso interfaccia grafica, cerciamo nei meandri qualcosa come "rotte statiche" o "static routes" e inseriamo:
|| Rete || Netmask || Gateway ||
|| 10.0.0.0 || 255.0.0.0 || <ip antenna> ||
|| 192.168.0.0 || 255.255.0.0 || <ip antenna> ||
|| 172.16.0.0 || 255.240.0.0 || <ip antenna> ||

Un problema può sorgere su alcuni router che effettuano NAT solo se la provenienza dei pacchetti è la sottorete locale. Proviamo a cercare tra le impostazioni del router adsl se c'è qualcosa che permetta il nat più esteso.
Altrimenti si può ovviare a questo problema facendo fare un doppio NAT:
  - L'antenna fa NAT da ninux alla nostra rete locale
  - Il router ADSL farà NAT dalla rete locale a Internet

supponiamo che la nostra sottorete sia  10.233.233.0/24 e l'ip dell'antenna  10.233.233.1

iptables -A POSTROUTING -o eth0  ! -d 10.233.233.0/24 -j SNAT --to-source 10.233.233.1

è una zozzeria ma è il prezzo da pagare per usare hardware pensato per l'utente medio.


== Riavviare e controllare ==

Una volta salvate tutte le impostazioni bisognerà riavviare il device.

Per controllare che il tutto funziona correttamente rientrate nell'antenna e provate a pingare un indirizzo su internet.

{{{
ssh root@[VOSTRO-IP]

ping wiki.ninux.org
}}}