Da qualche settimana sul canale #ict del Discord di IOTA si sperimenta con ICT e Raspberry PI o macchine virtuali con 512MB di RAM.

Oggi vediamo se è possibile installare ICT su un telefono Android (e.g. il telefono con il display rotto che avevamo nel cassetto)



Software richiesti:

Installiamo UserLAnd e ConnectBot sul nostro telefono Android, installiamo Debian GNU/Linux e tramite ConnectBot colleghiamoci alla sessione locale SSH.

Connessione via SSH

Installiamo net-tools necessari per poterci collegare alla sessione SSH dal nostro computer tramite Putty o bash in Linux.



sudo apt install net-tools

Visualizziamo l’indirizzo IP del nostro telefono:



ifconfig

Bene. Aprite il vostro client SSH preferito e connettetevi dal PC alla porta 2022 in ad esempio dalla bash con:



nel mio esempio con:



Ora che possiamo usare una tastiera seria installiamo gli strumenti necessari:

sudo apt install --assume-yes nano gnupg2 screen

oracle-java8-jdk



Installiamo oracle-java8-jdk dal ppa del team webupd8, aggiungiamo il repo:



sudo nano /etc/apt/sources.list.d/weupd8team.list

deb http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main

Salvare ed uscire utilizzando ctrl + o seguito da Invio ed infine ctrl + x .

Aggiungiamo la chiave pubblica:



sudo apt-key adv --no-tty --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886

Aggiorniamo i repository ed installiamo java:



sudo apt update && sudo apt install --assume-yes oracle-java8-installer

Ora seguo la guida esaustiva di lambtho su medium con alcune modifiche necessarie

sudo nano setup-ict.sh

#!/bin/bash mkdir Ict cd Ict wget https://github.com/iotaledger/ict/releases/download/0.3/ict-0.3.jar PROPERTIES_FILE="ict.cfg" echo "max_tx_rel=1000" >> $PROPERTIES_FILE echo "max_tx_abs=5" >> $PROPERTIES_FILE echo "name=ict-0" >> $PROPERTIES_FILE echo "port=1337" >> $PROPERTIES_FILE echo "round_duration=60000" >> $PROPERTIES_FILE echo "ixi_enabled=true" >> $PROPERTIES_FILE echo "tangle_capacity=10000" >> $PROPERTIES_FILE echo "spam_enabled=false" >> $PROPERTIES_FILE echo "min_forward_delay=0" >> $PROPERTIES_FILE echo "neighbors=" >> $PROPERTIES_FILE echo "host=0.0.0.0" >> $PROPERTIES_FILE echo "max_forward_delay=200" >> $PROPERTIES_FILE echo "ICT app installed!" echo "Open 'ict.cfg' and add three neighbor ip-addresses" echo "Extra note: You may need to ensure that your firewall doesn't block UDP-traffic on port 1337." echo "Start ICT with command: './run-ict.sh'"

Salvare ed uscire utilizzando ctrl + o seguito da Invio ed infine ctrl + x .

Ed installiamo:



sudo bash setup-ict.sh

Trova i vicini per il tuo ICT

ICT richiede almeno un vicino per funzionare correttamente. È possibile aggiungerne fino a tre. Vai nel canale #ICT del server Discord di IOTA e chiedi agli utenti di aggiuntere il tuo nodo. Inizia una discussione privata con gli interessati e scambia il tuo IP pubblico se è statico o il tuo DNS. Quando hai trovato i è necessario aggiungerli nei file ict.cfg.

sudo nano Ict/ict.cfg

Sostituire l’IP o DNS dei vicini con l’indirizzo ip statico + la porta od il nome dominio + la porta, (ad esempio, qualcosa come 12.34.56.56.789 o myNeighbor.ddns.net) separato dalla virgola, senza spazi.

neighbors=123.456.17.97:1337,myneighbor.ddns.net:14600,myotherneighbor.noip.com:1234

Una volta che saranno stati aggiunti, salvare ed uscire utilizzando ctrl + o seguito da Invio ed infine ctrl + x .

Aggiornare ICT

Ora possiamo creare uno script che aggiornerà facilmente ICT quando necessario. Creare lo script usando:



sudo nano update-ict.sh

E copiare/incollare quanto segue:

#!/bin/bash cd Ict git pull javac src/cfb/ict/*.java echo "ICT app updated!" echo "Start ICT with command: './run-ict.sh'"

Come sempre, salvare ed uscire utilizzando ctrl + O seguito da Invio ed infine ctrl + X .

Quando un nuovo aggiornamento di ICT sarà, semplicemente digitare:



sudo bash update-ict.sh

per aggiornare e poi riavviare l’ICT.

Si noti che questo script di aggiornamento potrebbe avere problemi in futuro a seconda delle modifiche apportate al codice sorgente ICT. In caso di problemi con l’aggiornamento, non esitate a visitare il canale #ICT sul Discord di IOTA.

Eseguire ICT

L’ultimo script da creare eseguirà ICT.



sudo nano run-ict.sh

E poi copiare/incollare quanto segue:

#!/bin/bash cd Ict/src java cfb.ict.Ict ../ict.properties

Non dimenticarsi di salvare ed uscire utilizzando ctrl + o seguito da Invio ed infine ctrl + x .

Ora è possibile eseguire lo script con sudo bash run-ict.sh . Tuttavia, lo script ci obliga a rimanere connessi. Quindi come passo successivo avvieremo ICT in uno scermo virtuale con screen.

Avviare con screen



Questa parte differisce completamente dalla guida di lambtho in quanto systemd non gira su android (se trovate una soluzione fatemelo sapere)

Avviamo una sessione con screen:

screen -S ict

Ci ritroveremo nella riga di comando, avviamo ora ICT:



sudo bash run-ict.sh

Una volta eseguito vedremo l’avvio e gli indirizzi DNS/IP dei nostri vicini.



Ora attendiamo i messaggi.

Per uscire dalla sessione screen premere la combinazione di tasti ctrl + a e d

Per rientrare nella sessione scrivere:



screen -r ict

Qui la vista dal telefono:



Per chi volesse sperimentare con una VPS gratuita di Google esistono le seguenti guide in inglese:

https://medium.com/@hbmy289/how-to-set-up-a-free-micro-vps-on-google-cloud-platform-bddee893ac09

https://medium.com/@hbmy289/how-to-setup-an-ict-node-on-a-free-google-micro-vps-842f475d51a



La guida di lambtho lingua inglese si trova qui: https://medium.com/@lambtho/iota-ict-installation-tutorial-c079a1ca3b7d

Da oggi è possibile dare il vostro supporto su Patreon https://www.patreon.com/antonionardella

Per ulteriori informazioni in italiano o tedesco trovate i miei contatti a questa pagina.

Se avete trovato utile la mia libera traduzione/guida, accetto volentieri delle donazioni 😉

IOTA:

QOQJDKYIZYKWASNNILZHDCTWDM9RZXZV9DUJFDRFWKRYPRMTYPEXDIVMHVRCNXRSBIJCJYMJ9EZ9USHHWKEVEOSOZB

BTC:

1BFgqtMC2nfRxPRge5Db3gkYK7kDwWRF79



Non garantisco nulla e mi libero da ogni responsabilità.

Also published on Medium.