Versione 3 del 2014-04-22 23:03:13

Nascondi questo messaggio
Italiano English
Modifica History Actions

IsoleVPNBGP

Avvertenze

  • /!\ Work in progress /!\

Introduzione

Lo scopo di questa guida è la configurazione di un router di frontiera per connettere reti su cui gira OLSR tramite il protocollo BGP. La base di partenza è OpenWRT Attitude Adjustment versione Scooreggiona. La configurazione adottata prevede il link della VPN in IPV6 in quanto al momento in cui sto scrivendo questa quida il server si trova in farm e non essendo al bordo della rete ipv4 l'ip è trasportato in vpn e quindi si ha una vpn dentro una vpn. Invece avendo connettività ipv6 da Telecom (vedi guida) ed essendo la farm ad un hop dal gateway ipv6 risulta essere più performante.

Cosa serve

  • Tinc
  • Quagga (con plugin olsr)
  • OLSR (con plugin quagga)

E' possibile compilarsi una versione di OperWrt AA con già tutto dentro: Basta seguire la guida (TODO) poi eseguire  make config  ed andare ad abilitare i pacchetti su indicati.

Configurare Tinc

Creiamo la cartella: #> mkdir /etc/tinc/VPNISOLE

all'interno della quale creiamo la coppia di chiavi (privata/pubblica)

#> tincd -K

creiamo la cartella:

/etc/tinc/VPNISOLE/hosts

dentro cui ci spostemo la chiave pubblica rinominata bgpLAMIACITTA mentre la privata (rsa_key.priv) la lasciamo lì.

Daremo copia della chiave pubblica a contatti_at_ninux.org e dentro host metteremo la chiave del server di Roma (bgproma)

A questo punto da Gestione indirizzi ci assegnamo:

- Il numero dell AS privato - un indirizzo ip della rete 10.150.254.0/24

Con questi dati passiamo alla configurazione dell file /etc/config/tinc:

config tinc-net VPNISOLE
        option enabled 1
        #option log /tmp/log/tinc.VPNISOLE.log
        #option debug 3

        ## Server Configuration (tinc.conf)
        option AddressFamily any
        list ConnectTo bgproma
        option Interface vpnisole
        option Mode switch
        option Name bgptrani
        option Port 777
        option PrivateKeyFile /etc/tinc/VPNISOLE/rsa_key.priv

# QUESTO è il FILE HOSTS
config tinc-host bgproma
        option enabled 1
        option net VPNISOLE
        #list Address 176.62.53.220    #questo è l'ipv4 del server de Roma
        list Address 2001:4c00:893b:fa::220 #questo è l'ipv6 del server de Roma
        #option Cipher blowfish
        #option ClampMSS yes
        #option Compression 0
        #option Digest sha1
        #option IndirectData 0
        #option MACLength 4
        #option PMTU 1514
        option PMTUDiscovery yes
        option Port 777
        option Subnet 10.150.254.0/24

sempre nella cartella /etc/tinc/VPNISOLE creiamo due script utilzzando l'ip preso da gestione indirizzi:

tinc-up

ip link set dev $INTERFACE up
ip addr add 10.150.254.X/24 brd 10.150.254.255 dev  $INTERFACE  #Mettere l'ip corretto
iptables -A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

tinc-down

ip link set dev $INTERFACE down
iptables -D FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

che rendiamo eseguibili:

#> chmod +x tinc-*

Configurare Quagga

bgpd.conf

zebra.conf

Modifiche a rc.local di Scooreggione