Router Tiesse Lipari 4000

Qualche giorno fa un amico mi ha chiesto di aiutarlo a trovare una soluzione per permettere ad una mezza dozzina di client di una sede distaccata dell'azienda per la quale lavora di poter accedere ad Internet, visto che non era ancora stato sottoscritto un contratto per la fornitura di collegamento ADSL.
Come soluzione temporanea, stavano utilizzando una chiavetta TIM da agganciare ad uno dei PC per la navigazione.
Inizialmente mi ha chiesto una mano per fare in modo che questo PC potesse condividere la connessione fra i client, ma ben presto si è convinto a reperire un router vero e proprio capace di fornire connettività LAN verso rete mobile, sfruttando ovviamente la sim dati inserita nella chiavetta a sua disposizione.
Abracadabra... nel giro di mezzo pomeriggio è riuscito a procurarsi un router Tiesse Lipari 4000 (usato) assolutamente funzionante e perfetto allo scopo.

È un dispositivo molto semplice, dotato di una sola porta ethernet, di uno slot interno per alloggiare la sim telefonica e di un antenna (come quella in figura) da collegare sul pannello frontale.
Oltre al connettore per l'antenna, sul pannello frontale sono presenti tre led: power, link e data.
Il primo, ovviamente, indica lo stato di acceso/spento, il secondo la presenza/assenza di un collegamento fisico e il terzo la presenza/assenza di un collegamento dati.
Sul retro invece, oltra alla porta ethernet, c'è il connettore per l'alimentatore esterno.
Rimosse le due viti laterali dallo chassis, è stato possibile sollevare facilmente il coperchio e inserire la sim dati nell'apposito alloggiamento.
Tramite cavo di rete il dispositivo è stato collegato al mio netbook e, dopo aver agganciato l'alimentatore, è stato acceso.
Il boot è durato all'incirca un minuto o poco più. Al termine, dei tre led, a rimanere acceso è stato ovviamente soltanto quello power.

Collegamento

Al Lipari 4000 si può accedere o via telnet o anche, se abilitato, via ssh.
Conoscendo l'indirizzo IP e le credenziali di accesso di default (citati nel manuale di istruzioni trovato in rete) e visto che nessun server DHCP era attivo sul Lipari, ho dovuto configurare manualmente l'IP del mio netbook in modo da poter accedere ad esso via telnet.

# ip address add 10.10.113.100/255.255.0.0 dev eth0
# telnet 10.10.113.1
Trying 10.10.113.1...
Connected to 10.10.113.1.
Escape character is '^]'.
No Radius configured. Using Local authentication
login: root
Password:
local: Authentication OK
Service Type is: Administrative-User
Privilege Level is: 15
Idle timeout is set to 3600 seconds
Connected Users:
        root    root

You are logged on pts/0
root@LIPARI>

E ho proceduto al reset completo del dispositivo e al suo riavvio.

Ripristino alle condizioni di fabbrica

root@LIPARI> restore factory
root@LIPARI>reboot

Connessione GPRS e test

Visto che si è deciso di mantenere l'indirizzo IP di default (10.10.113.1), il passo successivo è stato quello di configurare il modem.
Prima di questo, però, è stato necessario eliminare il PIN dalla sim card.

Prima una verifica per accertarmi che il modem fosse attivo:

root@LIPARI> gprsat at
at
OK

Nel caso di inattività:

root@IMOLA> set gprs off
root@IMOLA> gprs --poweroff
root@IMOLA> gprs --poweron

Poi la verifica che la sim fosse protetta da pin:

root@IMOLA> unlock-sim

Se non protetta, questa la risposta ricevuta:

root@IMOLA> unlock-sim
AT+CPIN?
+CPIN: READY
OK

Se invece protetta:

root@IMOLA> unlock-sim
AT+CPIN?
+CPIN: PIN
OK

Supponendo il PIN 1234, si procede al suo reset:

root@IMOLA> unlock-sim 1234

Chiaramente serve che il Tiesse Lipari 400 sia impiegato come router tra la rete ethernet e una rete mobile (in questo caso quella TIM).
L'interfaccia per l'accesso alla rete ethernet si chiama eth0, quella per l'accesso a reti mobili si chiama gprs.

Configurazione di gprs:

root@LIPARI> set gprs apn ibox.tim.it
root@LIPARI> set gprs default-route
root@LIPARI> set gprs usepeerdns
root@LIPARI> set gprs masquerade
root@LIPARI> set gprs auto-network
root@LIPARI> set gprs on

dove

  • ibox.tim.it è l'APN TIM
  • default-route abilita una route di default
  • usepeerdns serve a negoziare i parametri DNS direttamente dal peer
  • masquerade abilita il Port Address Translation (PAT) sulla connessione
  • auto-network determina la selezione automatica del tipo di rete mobile alla quale collegarsi

Check dello stato dell'interfaccia gprs:

root@LIPARI> show interface gprs status

Signal Power:  CSQ = 17 => -79 dBm
Network:       HSDPA/UMTS  I TIM

IMSI: gnegnegnegne IMEI: blablablablabla

There is an active GPRS Connection:
    inet 10.185.100.219 peer 10.64.64.64/32 scope global ppp0
root@LIPARI>

Ping per testare la connettività:

root@LIPARI> ping -c 4 8.8.8.8

PING 8.8.8.8 (8.8.8.8) from 10.185.113.172 : 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=0 ttl=50 time=64.723 msec
64 bytes from 8.8.8.8: icmp_seq=1 ttl=50 time=63.159 msec
64 bytes from 8.8.8.8: icmp_seq=2 ttl=50 time=63.111 msec
64 bytes from 8.8.8.8: icmp_seq=3 ttl=50 time=63.160 msec

--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/mdev = 63.111/63.538/64.723/0.707 ms

Data e ora

Per impostare correttamente data e ora, si sincronizza l'orologio di sistema con un server NTP tramite indirizzo IP.

root@LIPARI> show date
Thu Jan  1 00:01:26 UTC 1970

root@LIPARI> set ntp 193.204.114.232
root@LIPARI> set ntp on
server   193.204.114.232
root@LIPARI> rdate -s 193.204.114.232
rdate: current time matches remote time
root@LIPARI> show date
Thu Oct 15 09:49:15 UTC 2015

Il timeserver col quale il dispositivo si sincronizzerà è quello messo a disposizione dall'Istituto Nazionale di Ricerca Metereologica (INRIM).
Il Tiesse Lipari accetta solo l'IP del server ntp e non indirizzi come ntp1.inrim.it o ntp2.inrim.it.

Server DHCP su eth0

Una volta configurato, il dispositivo dovrà essere agganciato ad uno Switch Netgear FS116 (16 porte 10/100 Mbps Fast Ethernet).
I client dell'ufficio, collegati anch'essi allo switch, potranno navigare su Internet attraverso il router.
Una semplicissima e classica topologia di rete:

topologia di rete

Si farà in modo che il router stesso funga da server DHCP per fornire a tutti i client che vi si collegheranno i parametri adatti alla navigazione su Internet.

Il server DHCP che si configurerà risponderà alle richieste sull'interfaccia eth0, fornirà indirizzi ad un massimo di 10 client, fornirà il proprio IP come gateway della rete e fornirà i parametri relativi alla subnet e ai DNS (la scelta dell'azienda è ricaduta su quelli di Google...):

root@LIPARI> set udhcp interface eth0
root@LIPARI> set udhcp start-address 10.10.113.2
root@LIPARI> set udhcp end-address 10.10.113.11  
root@LIPARI> set udhcp router 10.10.113.1     
root@LIPARI> set udhcp subnet 255.255.0.0
root@LIPARI> set udhcp dns 8.8.8.8 8.8.4.4
root@LIPARI> set udhcp on                 
Starting dhcpd ... done.

Dopo aver avviato il server DHCP, si è collegato il router allo switch e si  provato ad acquisire l'indirizzo da due client.
Poi si è proceduto al check delle impostazioni:

root@LIPARI> show udhcp

UDHCP Daemon is active. Running pid is 3489

# udhcpd configuration file
start   10.10.113.2
end     10.10.113.11
interface       eth0
option router   10.10.113.1
option subnet   255.255.0.0
option dns      8.8.8.8 8.8.4.4
lease_file      /var/state/dhcp/dhcpd.leases
pidfile         /var/run/udhcpd.pid
auto_time       30
notify_file     dumpleases

Mac Address       IP-Address      Expires in
36:02:a6:eg:b2:0e 10.10.113.3     9 days 23:57:48
40:26:5d:66:1f:83 10.10.113.2     9 days 23:54:49
root@LIPARI>

Il sistema ha restituito i parametri di configurazioni e le informazioni relative ai due client collegati.

Logs

Volendo possono anche essere abilitati i log (disabilitati di default):

root@LIPARI> set log clean  
root@LIPARI> set log off  
root@LIPARI> set log local
root@LIPARI> set log priority debug
root@LIPARI> set log level 4
root@LIPARI> set log max-lines 4000
root@LIPARI> set log on
root@LIPARI> show log

Configurazione globale

È possibile visualizzare la configurazione corrente:

root@LIPARI> show config current
set no-log
set serial-appl getty
set hostname LIPARI
set no-default-gateway
set no-loopback
set eth0 ipaddr 10.10.113.1 netmask 255.255.0.0...
...broadcast 10.10.255.255
set eth0 no-bridge
set eth0 no-ip-redirect
set eth0 speed auto
set eth0 no-description
set eth0 on
set host 127.0.0.1 localhost
set gprs apn ibox.tim.it
set gprs login gprslogin password gprspaswd
set gprs idle 3600
set gprs masquerade
set gprs default-route
set gprs no-description
set gprs mtu 1500
set gprs usepeerdns
set gprs vjc
set gprs sgauth 1
set gprs speed 115200
set gprs auto-network
set gprs no-pwroff-modem
set gprs no-sms-handle
set gprs no-sms-helper-number
set gprs on
set gprs no-traffic-control
set gprs no-test
set no-pptp
set ntp 193.204.114.232
set zebra on
set no-bgp
set no-rip
set no-ospf
set no-vrrp
set udhcp interface eth0
set udhcp start-address 10.10.113.2
set udhcp end-address 10.10.113.11
set udhcp router 10.10.113.1
set udhcp subnet 255.255.0.0
set udhcp no-wins
set udhcp lease-time 864000
set udhcp dns 8.8.8.8 8.8.4.4
set udhcp on
set no-racoon
set no-radius
set no-tacacs
set no-gre
set snmp community public access ro
set snmp community tiesseadm access rw
set snmp directive syslocation Tiesse Farm
set snmp directive syscontact Root postmaster@tiesse.com
set snmp trap-timeout 5
set snmp trap-retries 3
set snmp trap-poll-frequency 30
set snmp no-trap-isdn
set snmp no-specific-interface
set snmp on
set no-openvpn
set no-vlan

e salvarla:

root@LIPARI> save

Da questo momento in poi le modifiche sono state rese definitive: al riavvio del dispositivo saranno quelle di default.
Non solo, come in tutte le apparecchiature "Cisco-like" che si rispettino, è possibile:

  • visualizzare la configurazione
  • selezionare l'output
  • copiarlo
  • incollarlo in un semplicissimo file di testo da conservare

Al momento di ripetere quella configurazione sullo stesso dispositivo o su un altro simile, sarà sufficiente:

  • aprire quel file
  • copiare tutto il suo contenuto
  • collegarsi al dispositivo
  • incollarlo in console

e la configurazione sarà applicata immediatamente.
Chiaramente bisognerà aver cura che la comandistica sia identica.
Ad esempio, in parecchi dispositivi il server DHCP non è udhcp ma dhcp-server.
Nel Tiesse Lipari 4000 ho dovuto configurare il primo (ormai in disuso e mantenuto solo per ragioni di retro-compatibilità) perchè le configurazioni apportate al secondo non venivano salvate ed andavano perse alla riaccensione.
Problema di firmware buggato? Può darsi, non ho indagato e non ho intenzione di farlo visto che, per quello che serviva (intervento amichevole, veloce ed indolore), udhcp va più che bene.
Piccoli problemi di compatibilità a parte però, è sicuramente una gran comodità ritrovarsi la pappa pronta con un semplice copia e incolla e qualche aggiustatina qua e là! :P