Newsgroup: it.comp.reti.ip-admin
Titolo: Trasferimento sede cliente

Premessa: non chiedete come son finito in questa
situazione perchï¿œ non lo so nemmeno io.
Ho la necessitï¿œ di trasferire una sede di un cliente
con 10-15 server in un nuovo stabile con il minimo
downtime. (posso impiegare anche due settimane,
l'importante ï¿œ che non si debba spegnere tutto in
una volta)
Il cliente ha il suo bel numero di AS ed annuncia la
propria minuscola allocazione di IP in allegria.
Sfiga vuole che i router della connettivitï¿œ, cosï¿œ
come molti altri server, son posizionati nella stessa
subnet /24, per cui non posso giocare solo di preferenze
e prepend, in quanto dovrei spostare tutti gli apparati
di tale subnet nello stesso momento. (dato che meno di
una /24 non si instrada)
E, ovviamente, se i router son nella stessa subnet, se
sposto un router devo spostare anche l'altro, e quindi la
vecchia sede resterebbe senza connettivitï¿œ.
Pensavo di:
- creare un tunnel tra i due router usando gli ip che il
provider ha assegnato al cliente (in modo da avere il
tunnel attivo anche senza bgp)
- spostare uno dei due router nella nuova sede
- attivare il tunnel tra i router (che funzionerï¿œ, tanto
il link ï¿œ fatto sugli ip fissi del provider quindi non
necessitï¿œ di bgp)
- instradare, nel router sulla nuova sede, tutto il traffico
per le allocazioni del cliente verso il tunnel
- attivare il BGP sul nuovo router ed annunciare tutte le subnet
- instradare, dal vecchio router, tutte le subnet verso il
tunnel (cosï¿œ mi "escono" direttamente dalla nuova sede, in pratica
la vecchia sede si isola, tutto il traffico transiterï¿œ da/verso
il tunnel e non direttamente tramite tramite bgp)
Cosï¿œ facendo, la connettivitï¿œ dovrebbe migrare automaticamente
al nuovo edificio. In pratica, anzichï¿œ avere due sessioni bgp
attive, ne tengo solo una, nella nuova sede, e tutto il resto
vien visto come una VPN tradizionale tra due punti.
Man mano che sposto i server, bypasso il tunnel direttamente
dal router nuovo (in pratica non instrado piï¿œ quel dato IP
tramite il tunnel ma lo faccio instradare in locale)
Altre idee migliori di questa diabolica bizzarria?
Non mi viene in mente nulla.

il tunnel e non direttamente tramite tramite bgp)
A occhio non vedo problemi a tenere attive entrambe le sessioni ed usare
il tunnel solo per il tuo traffico interno (e quello che entra
dall'altra sede).
Comunque, salvo dettagli che non mi sono chiari il piano ï¿œ sano e
funzionerï¿œ senza problemi.
-- 
ciao, |
Marco | The Internet is full. Go away.  -- Joel Furr

 funzionerï¿œ senza problemi.
Ok, perï¿œ speravo ci fossero soluzioni piï¿œ semplici.
I server son pochi (8-10) ma se van giï¿œ tutti mi ammazzano.
Ci son dei circuiti pay-per-click e girano $$

Un GRE puï¿œ andare o meglio una VPN? (overhead a parte)
GRE va benissimo.


 GRE va benissimo.
Stavo smanettando adesso, con due server virtuali.
Ma non mi pare di riuscire ad instradare il traffico dal nodo A al
nodo B, tramite tunnel GRE e subnet differenti.
Quello che dovrei fare ï¿œ:
1.2.3.0/22
 -> router1
   -> 
10.0.0.1/30
 -> tunnel gre -> 
10.0.0.2/30
      -> router2 -> 
1.2.3.0/22
In pratica, devo unire due subnet uguali, tramite un tunnel
con subnet differente, senza nattare.
Teoricamente, dovrebbe bastare impostare una route statica:
route add -host 
1.2.3.33/32
 dev tun0
ma non funge una cippa.
-- 
Non tocca a noi dominare tutte le maree del mondo,
il nostro compito ï¿œ di fare il possibile per la
salvezza degli anni nei quali viviamo,
sradicando il male dai campi che conosciamo.

 ma non funge una cippa.
Una NAT statica di quel tipo funziona solamente se i contatti arrivano
da altre reti, o non passano per il router (ovvio, no?).
Per far fungere anche dalla stessa rete ti serve proxy-arp o scamuffi
analoghi.
-- 
Professional System & Network Sarcazzer
http://bofhskull.wordpress.com/

 analoghi.
Vedo di far funzionare la soluzione con gli annunci bgp.


 da altre reti, o non passano per il router (ovvio, no?).
In che senso "da altre reti"?
Il tunnel avrï¿œ subnet differente dalla rete presente ai due estremi.

 In che senso "da altre reti"?
Che se io sto in una /24 e cerco di contattare una macchina nella stessa
/24, non cerco di passare dal router, mi limito a broadcastare un ARP da
cui mi aspetto una risposta....
(peraltro, ho scritto NAT, che nello specifico, c'entrava sega: volevo
dire "route")


 cui mi aspetto una risposta....
Si, ovviamente.
Per cui, o proxy arp attivato sul tunnel, oppure collaborazione
del provider, il quale deve essere presente da ambo i lati.
In teoria la soluzione con proxy arp ï¿œ la piï¿œ semplice ed
immediata. Attivo il tunnel, attivo il proxy ed imposto delle
route statiche facendo puntare determinati IP da una parte
del tunnel piuttosto che in locale.
Son passati almeno 3 anni da quando ho usato un proxy arp
per l'ultima volta, e se non erro, bisogna istruire il kernel
a ricercare determinati IP su una interfaccia (nel mio caso
il tunnel) piuttosto che un altra, quindi
ip addr add 
1.2.3.0/24
 dev eth0
ip route add 1.2.3.4 dev tun0
per dire di inoltrare le richieste di 1.2.3.4 tramite il tunnel
altrimenti se lo cerca in locale (considerato che una delle
ethernet avrï¿œ l'intera subnet /24)
Faccio un po di esperimenti...