Italiano English
Modifica History Actions

GroundRoutingDebian

Routing a terra con apparati Debian Based

Estensione della guida GroundRouting per dispositivi Debian based

Cosa serve:

  • Dispositivo con sistema operativo Debian, Ubuntu... (X86, amd64, arm, RaspberryPI)

Quasi tutte le operazioni devono essere eseguite come superutente quindi non esitare a sudare.

Compilare l'ultima versione di OLSRd

Clona i sorgenti di OLSRd

git clone git://olsr.org/olsrd.git

Spostati sulla directory dei sorgenti

cd olsrd

Installa i pacchetti necessari a compilare OLSRd

apt-get install build-essensials bison flex

Do It!

make
make libs
make install
make install_libs

Installa i tool per VLAN

apt-get install vlan

Installa i tool di stampa di Txtinfo

vim /bin/4olsr

#!/bin/sh
wget -q http://127.0.0.1:2006/$1 -O -

chmod 777 /bin/4olsr

vim /bin/6olsr

#!/bin/sh
wget -q http://[::1]:2007/$1 -O -

chmod 777 /bin/6olsr

Configura OLSR

vim /etc/olsrd.conf

DebugLevel  0
IpVersion 4

Pollrate  0.025
FIBMetric "flat"
UseNiit no
SmartGateway no
Hna4
{
  #Hna Announcements
}

LinkQualityLevel 2
LinkQualityAlgorithm    "etx_float"
LinkQualityAging 0.02

UseHysteresis no
TcRedundancy  2
MprCoverage 7


LinkQualityFishEye  1

LoadPlugin "olsrd_txtinfo.so.0.1"
{
    PlParam      "accept" "0.0.0.0"
}

LoadPlugin "olsrd_mdns.so.1.0.1"
{
 PlParam "NonOlsrIf" "eth0"
 PlParam "MDNS_TTL" "20"
 PlParam "TTL_Check" "true"
 PlParam "Network_ID" "1"
}

LoadPlugin "olsrd_jsoninfo.so.0.0"
{
        PlParam "accept" "0.0.0.0"
}


InterfaceDefaults {
   HelloInterval 3.0
   HelloValidityTime 125.0
   TcInterval 2.0
   TcValidityTime 500.0
   MidInterval 25.0
   MidValidityTime 500.0
   HnaInterval 10.0
   HnaValidityTime 125.0

}

Interface "eth0" “eth0.101” “eth0.102”
{
    Mode "mesh"
}

vim /etc/olsrd6.conf

DebugLevel  0
IpVersion 6

Pollrate  0.025
FIBMetric "flat"

UseNiit no
SmartGateway no

Hna6
{
  #Hna Announcements
}

LinkQualityLevel 2
LinkQualityAlgorithm    "etx_float"
LinkQualityAging 0.02

UseHysteresis no
TcRedundancy  2
MprCoverage 7

LinkQualityFishEye  1

LoadPlugin "olsrd_txtinfo.so.0.1"
{
    PlParam      "accept" "::"
    PlParam      "port"    "2007"
}


InterfaceDefaults {
   HelloInterval 3.0
   HelloValidityTime 125.0
   TcInterval 2.0
   TcValidityTime 500.0
   MidInterval 25.0
   MidValidityTime 500.0
   HnaInterval 10.0
   HnaValidityTime 125.0

}


Interface "eth0" “eth0.101” “eth0.102”
{
    Mode "mesh"
    IPv6Multicast FF02::6D
}

Start Script

vim /etc/ninux

#!/bin/bash
(
  #Load Kernel modules
  modprobe ipv6
  modprobe 8021q

  #Add Vlans
  vconfig add eth0 101 > /dev/null
  vconfig add eth0 102 > /dev/null

  sleep 5

  #Assign IPv4 Addresses
  ip address add 172.16.x.y/16 dev eth0.101
  ip address add 172.16.x.z dev eth0.102

  #Assign IPv6 Addresses
  ip address add 2001:4c00:893b:a::b/64 dev eth0
  ip address add 2001:4c00:893b:1:x::y/128 dev eth0.101
  ip address add 2001:4c00:893b:1:x::z/128 dev eth0.102

  sleep 5

  #Run OLSRd
  /usr/local/sbin/olsrd -d 0 -f /etc/olsrd6.conf > /dev/null
  /usr/local/sbin/olsrd -d 0 -f /etc/olsrd.conf > /dev/null
 
) &

chmod 755 /etc/ninux

Lancia l'avvio automatico dello script dopo il boot includendolo in rc.local

vim /etc/rc.local

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

/etc/ninux

exit 0

Riavvia il sistema o lancia

/etc/ninux

Enjoy Ninux!