Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[HOW-TO] rendere la propria macchina un router IGP RIP
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools)
View previous topic :: View next topic  
Author Message
abaddon83
Guru
Guru


Joined: 17 Jan 2004
Posts: 494

PostPosted: Thu May 19, 2005 9:44 pm    Post subject: [HOW-TO] rendere la propria macchina un router IGP RIP Reply with quote

Ciao a tutti, questo è un piccolo how to su come impostare un proprio router linux in modo che gestisca la tabella di routing automaticamente, guardando la guida del programma che useremo l'argomento è vasto e complicato, questo how-to tratta le cose basilari, se vorrete poi migliorarlo ed ampliarlo tanto meglio :)

-SCOPO E CENNI TEORICI
Implementare l'algoritmo di routing RIP su una macchina linux. Il Rip è un protocollo Distance Vector, ovvero costituisce l'informazione sulla raggiungibilità di un certo nodo basandosi sulla sua distanza. A distanza infinita il nodo è iraggiungibile e si cerca sempre di usare il next hop che utilizza una distanza minore scambiandosi tra i vari nodi i propri DV scartando quelli piu' dispendiosi e aggiornando quelli piu' convenienti (qua i puristi mi castrano per questa definizione di rip e distance vector... portate pazienza dai :P )

COSA CI SERVE
Dunque per implementare il rip occorre il seguente pacchetto con le sue relative dipendenze:
-quagga

SCHEMA RETE DEL HOWTO
lan1-|
lan2-|-----router/firewall_(router1)----VPN----router/server_casalingo_(router2)-----MIO_PC_(PC)---<internet>
lan3-|
lan4-|

router1: (ip/netmask)
-eth0 192.168.2.253/24
-eth1 192.168.1.253/24
-eth2 192.168.3.253/24
-eth4 192.168.4.253/24
-tap0 10.3.0.1/24

router2:
-eth0 192.168.0.60/24
-tap0 10.3.0.5/24

PC:
-eth0 192.168.0.33/24
-tap0 10.3.0.5/24

ho dovuto mettere il RIP pure sul mio pc perchè come default gw ho il router di casa, mentre per accedere alla rete dove lavoricchio ho dovuto alzare una VPN per scavalcare il router telecom blindato... (W telecom che m'ha fatto imparare a fare una VPN.... -_-') se invece voi siete piu' fortunati non occorre il RIP sul PC perchè tanto se il pc non trova le route giuste manda tutto al default GW che nel vostro caso sarà la macchina che vi fa accedere ad internet e nello stesso tempo vi aggancia alle altre vostre lan.


INSTALLAZIONE/CONFIGURAZIONE
Ora che abbiamo definito tutto quello che ci serviva possiamo iniziare l'installazione:

1)emergiamo il nostro bel programmino su tutte le nostre macchine

Code:

#emerge -pv quagga
(Se tutto ok)
#emerge quagga


il porgramma gestisce oltre al rip anche molti altri protocolli di routing, io pero' mi son fermato al RIP ;)

2)configurazione demone su Router1:

Code:

#nano /etc/quagga/zebra.conf
(in nano /etc/quagga/sample/zebra.conf.sample c'è il file d'esempio)

e sistemiamo il file in questo modo:

Code:
! -*- zebra -*-
!
! zebra sample configuration file
!
! $Id: zebra.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname router1
password router1
enable password zebra
!
! Interface's description.
!
!interface lo
! description test of desc.
!
interface eth0
 ip address 192.168.2.253/24
 description interfaccia eth0
 link-detect
 multicast
!
interface eth1
 ip address 192.168.1.253/24
 description interfaccia eth1
 link-detect
 multicast
!
interface eth2
 ip address 192.168.3.253/24
 description interfaccia eth2
 link-detect
 multicast
!
interface eth3
 ip address 192.168.4.253/24
 description interfaccia eth3
 link-detect
 multicast

interface tap0
 ip address 10.3.0.1/24
 description interfaccia VPN
 link-detect
 multicast

!
! Static default route sample.
!
!ip route 0.0.0.0/0 203.181.89.241
!

log file /var/log/zebra.log


a sto punto salviamo e creiamo il file di log

Code:
#touch /var/log/zebra.log


ora ci manca da sistemare il file di conf del demone del Rip quindi:

Code:

#nano /etc/quagga/ripd.conf
(in nano /etc/quagga/sample/ripd.conf.sample c'è il file d'esempio)


e lo sistemiamo come segue:

Code:

 ! -*- rip -*-
!
! RIPd sample configuration file
!
! $Id: ripd.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname router1
password router1
!
! debug rip events
! debug rip packet
!
router rip
 network 192.168.1.0/24
 network eth1
router rip
 network 192.168.2.0/24
 network eth0
router rip
 network 192.168.3.0/24
 network eth2
router rip
 network 192.168.4.0/24
 network eth3
router rip
 network 10.3.0.0/24
 network tap0

! route 10.0.0.0/8
! distribute-list private-only in eth0
!
redistribute kernel
access-list private permit any

!access-list private-only permit 10.0.0.0/8
!access-list private-only deny any
!
log file /var/log/ripd.log
!
!log stdout


usciamo salvando e creiamo il file di log:

Code:
#touch /var/log/ripd.log


La prima macchina è sistemata :)

ATTENZIONE!!!
il ripd utilizza la porta 520 udp per mandare e ricevere i DV, quindi se avete un firewall dovere aprirla su tutte le macchine!!

3)Configurazione Router2

essendo la stessa identica cosa fatta per l'uni riporto solo i file di configurazione:

zebra.conf:

Code:

! -*- zebra -*-
!
! zebra sample configuration file
!
! $Id: zebra.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname router2
password router2
enable password zebra
!
! Interface's description.
!
!interface lo
! description test of desc.
!
interface eth0
ip address 192.168.0.60/24
description interfaccia eth0
link-detect
multicast

interface tap0
ip address 10.3.0.5/24
description interfaccia vpn
link-detect
multicast

!
! Static default route sample.
!
!ip route 0.0.0.0/0 203.181.89.241
!

log file /var/log/zebra.log


ripd.conf

Code:

! -*- rip -*-
!
! RIPd sample configuration file
!
! $Id: ripd.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname router2
password router2
!
! debug rip events
! debug rip packet
!
router rip
 network 192.168.0.0/24
 network eth0
router rip
 network 10.3.0.0/24
 network tap0

! route 10.0.0.0/8
! distribute-list private-only in eth0
!
redistribute kernel
access-list private permit any
!access-list private-only permit 10.0.0.0/8
!access-list private-only deny any
!
log file /var/log/ripd.log
!
!log stdout


4) e ora è il turno del PC, stessa cosa di prima, riporto solo i file di configurazione:

zebra.conf

Code:
! -*- zebra -*-
!
! zebra sample configuration file
!
! $Id: zebra.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname PC
password PC
enable password zebra
!
! Interface's description.
!
!interface lo
! description test of desc.
!
interface eth0
ip address 192.168.0.33/24
description intefaccia baloo
link-detect
multicast


!
! Static default route sample.
!
!ip route 0.0.0.0/0 203.181.89.241
!

log file /var/log/zebra.log


ripd.conf

Code:
! -*- rip -*-
!
! RIPd sample configuration file
!
! $Id: ripd.conf.sample,v 1.1.1.1 2002/12/13 20:15:30 paul Exp $
!
hostname PC
password PC
!
! debug rip events
! debug rip packet
!
router rip
 network 192.168.0.0/24
 network eth0
!distribute-list in eth0
!
redistribute kernel
access-list private permit any
!access-list private-only permit 10.0.0.0/8
!access-list allow any
!
log file /var/log/ripd.log
!
!log stdout

5)Perfetto ora le macchine sono tutte belle configurate, controllate per bene d'avere aperto la porta udp 520 e se tutto va bene lanciando su tutte le macchine il comando:

Code:
#/etc/init.d/ripd start


le tabelle di routing dovrebbero generarsi sotto i vostri occhi, la rete in esame è semplice ma soprattutto ad albero, ovvero è già un cammino minimo, se pero' voi avete la fortuna d'avere reti più evolute dovreste vedere gli hop cambiare man mano che passa il tempo fino a stabilizzarsi una volta trovati i cammini minimi :)


LINK PER APPROFONDIMENTI
Sito del software: http://quagga.net/


Spero possa essere utile :)

Ciao
_________________
Abaddon's House
Jabber account: abaddon@jabber.linux.it
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 30894
Location: here

PostPosted: Thu May 19, 2005 11:15 pm    Post subject: Reply with quote

Aggiunto ai post utilissimi sezione howto
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
abaddon83
Guru
Guru


Joined: 17 Jan 2004
Posts: 494

PostPosted: Fri May 20, 2005 6:34 am    Post subject: Reply with quote

thx :D
_________________
Abaddon's House
Jabber account: abaddon@jabber.linux.it
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum