HowTo test netsukuku daemon using NetKit

Un modo di provare il funzionamento di Netsukuku (se non si dispone di una variegata infrastruttura di reti e di un numero cospicuo di computer) può essere l'uso di NetKit (vedere http://wiki.netkit.org/index.php/Main_Page).

Lo scopo di questa pagina è quello di raccogliere le informazioni che possono aiutare i nuovi arrivati a preparare un ambiente in cui simulare una arbitraria topologia di rete i cui nodi sono in grado di eseguire il demone ntkd.

Preparare una macchina virtuale per eseguirci ntkd

Dopo aver installato la versione più recente di Netkit (core version 2.6 - file system 5.0 - kernel version 2.7) si possono avviare macchine virtuali che hanno un sistema operativo basato su Debian.
Possiamo quindi usare apt-get per installare il software di cui abbiamo bisogno. E' necessario che il nostro computer sia collegato a Internet.

Assicuriamoci di avere la password di root del nostro sistema. Non si tratta della password nostra con la quale possiamo usare "sudo"; ma della password associata a root.
Per accertarci, diamo il comando "su -" che ci richiede appunto la password di root.
Dopo aver verificato, usciamo dalla shell di root e torniamo nella shell del nostro utente.

Nel terminale del nostro sistema, ci posizioniamo su una directory vuota creata per questi test.

Diamo il comando:

  vstart pc1 --eth0=tap,10.0.0.1,10.0.0.2 --mem=64

Viene richiesta la password di root.

Questo modo di avviare la macchina virtuale consente di accedere dalla macchina virtuale a Internet.

E' possibile che sia necessario eseguire anche i seguenti comandi, sempre dal terminale del nostro sistema, per fare in modo che il sistema ospite (virtuale) esca su Internet.

   sudo ifconfig nk_tap_$(whoami) 10.0.0.1 netmask 255.255.255.0 up
   sudo iptables -t nat -A POSTROUTING -s 10.0.0.2 -j MASQUERADE
   sudo iptables -A FORWARD -i nk_tap_+ -j ACCEPT

Ci serve un DNS server per il sistema ospite. Possiamo usare opendns se non sappiamo quale usare. Dentro il sistema ospite modificare il file /etc/resolv.conf per inserire la riga

 nameserver 208.67.222.222

A questo punto dovremmo essere in grado di "navigare" dal sistema ospite. Possiamo provare con "ping www.ubuntu.com".

Se tutto funziona diamo i seguenti comandi per installare alcuni pacchetti necessari.

    apt-get update
    apt-get install build-essential  # N.B. la fase di configurazione dei pacchetti richiede qualche interazione con l'utente
    apt-get install subversion
    apt-get install swig
    apt-get install openssl libssl-dev