ifconfig

Configurare la rete per VMware server e gli IP Failover in un dedicato OVH

OVH + VMware

OVH + VMware

Prerequisiti

Innanzitutto dovete aver configurato un kernel modulare e installato vmware server con supporto per bridge e hostonly.

Inoltre potreste dover aggiungere altri IP failover da assegnare alle macchine virtuali.

Abilitare il forwarding

Verificate se ip_forware il proxy_arp sono abilitati:

shell# cat /proc/sys/net/ipv4/ip_forward
1
shell# cat /proc/sys/net/ipv4/conf/vmnet1/proxy_arp
1

Se è già così saltate questa sezione, altrimenti dovrete abilitarli.

shell# vi /etc/sysctl.conf

Aggiungete (o modificate se sono già presenti) queste due direttive:

net.ipv4.ip_forward = 1
net.ipv4.conf.vmnet1.proxy_arp=1

ricaricate le impostazioni con sysctl -p e verificate che i “cat” precedenti ora restituiscano 1. Se non è così potreste avere un kernel configurato male (mancanza del supporto iptables per il forwarding).

Aggiungere il routing dell’IP FailOver

Se in precedenza avete assegnato l’IP failover ad un alias della scheda dummy0 dovrete rimuoverlo, ad esempio:

shell# rm /etc/sysconfig/network-scripts/ifcfg-dummy0:0
shell# ifconfig dummy0:0 down

A questo punto dobbiamo aggiungere il routing per l’IP failover con

shell# route add [IPFAILOVER] dev vmnet1

A questo punto la macchina virtuale dovrebbe essere raggiungibile dall’esterno e viceversa, se invece la dovete configurare seguitemi al prossimo paragrafo.

Configurare la rete nel Guest OS

La configurazione di un guest è la seguente:
IP: [IPDIFAILOVER]
GATEWAY: [IPDIFAILOVER]
NETMASK: 255.255.255.255
E’ poi necessario assicurarsi che esista un routing di default verso la scheda di rete.

Se il guestOS è una fedora come per me allora dovrete configurare l’IP in /etc/sysconfig/network-scripts/ifcfg-eth0

shell# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
NETMASK=255.255.255.255
IPADDR=XX.XXX.XXX.XXX (IP FAILOVER)
USERCTL=no
IPV6INIT=no
NM_CONTROLLED=no
TYPE=Ethernet
GATEWAY=XX.XXX.XXX.XXX (IP FAILOVER)

e poi dovrete creare la route di default

shell# echo "default dev eth0" > /etc/sysconfig/network-scripts/route-eth0

riavviando il servizio di rete dovrebbe funzionare tutto:

shell# service network restart

Automatizzare la configurazione al boot

Le istruzioni date fino ad ora non rendono persistenti le modifiche e quindi al primo riavvio dovrete ripeterle.

Come suggerito da Superkikim nell’articolo linkato prima ho creato un file routes.conf dove ho inserito l’elenco degli IP FailOver da assegnare alle VM:

shell# echo [IPFAILOVER] >> /etc/vmware/routes.conf

Invece di modificare l’init script di vmware ho preferito creare uno script /etc/rc.d/init.d/vmware-routes che si preoccupa di leggere quel file ed applicare le modifiche necessarie. Lo potete trovare qui.

Rendiamo lo script eseguibile ed aggiungiamolo alla sequenza di boot

shell# chmod 775 /etc/rc.d/init.d/vmware-routes
shell# chkconfig --add vmware-routes

Se avete vmware avviato potete provarlo e verificare che abbia funzionato con

shell# service vmware-routes start
shell# route -n

L’ultima riga vi fornisce le route presenti e dovreste vedere, per ogni IP che avete scelto, una riga che dice che è assegnato alla vmnet1.

Troubleshooting

net.ipv4.conf.default.forwarding

Ho letto che qualcuno aggiunge anche queste due direttive al sysctl.conf, io non le ho.

net.ipv4.conf.default.forwarding=1
net.ipv4.conf.all.forwarding=1

FTP backup di OVH dalle macchine virtuali non funziona

Superkikim suggerisce di utilizzare questa regola iptables per poter utilizzare l’FTP backup di OVH dall’interno delle macchine virtuali:

shell# iptables -t nat -A POSTROUTING --source [IPFAILOVER] --match iprange --dst-range [IPFTPBACKUP] -j SNAT --to [IPDEDICATO]

In pratica solo per i pacchetti destinati all’FTP backup viene fatto NAT e non routing così che l’FTP backup accetti la connessione.
Questa regola può essere aggiunta nello script vmware-routes.

netmask 255.255.255.255 in Windows

In Windows non è possibile applicare la netmask 255.255.255.255 via interfaccia. Bisogna quindi impostare la 255.255.255.0 e poi sistemarla tramite regedit.

La rete del guest non va in Fedora Core 10

Nel mio caso (Fedora Core 10) il guestOS non otteneva correttamente l’indirizzo perchè il servizio NetworkManager provava ad ottenerne uno in DHCP e la gestione della rete HostOnly di VMWareServer ne assegnava uno nella rete privata della vmnet dell’host. Ho rimosso tutti i pacchetti relativi a NetworkManager ed ho attivato il servizio network standard

shell# chkconfig --levels 235 network on

Riferimenti

Articolo di GuiGui – OVH, Ip Failover dans une machine virtuelle VMWare

Tags: , , , , ,

sabato, aprile 4th, 2009 Sysadmin 2 commenti

Utilizzare IP failover su un RPS

Pannello di controllo servizi OVH

Pannello di controllo servizi OVH

Gli RPS di OVH vengono consegnati con 2 IP, di cui uno viene chiamato IP Failover. Purtroppo, a differenza dei dedicati, questo IP non può essere reindirizzato su un’altro RPS poichè è necessario durante il boot per la corretta connessione al disco iSCSI.

Di fatto, quindi, l’IP failover in dotazione non può essere “basculato” tra gli RPS.

Come e perchè

Qualche giorno fa OVH ha annunciato che ora è possibile acquistare fino a 30 IP Failover aggiuntivi anche sugli RPS.

Per poter assegnare IP FailOver aggiuntivi al server è necessario acquistare degli “slot” e lo possiamo fare direttamente dal menu “Servizi” => “IP FailOver” del pannello di controllo:

Pannello di controllo degli IP FailOver sul Manager di OVH

Pannello di controllo degli IP FailOver sul Manager di OVH

Una volta acquistati gli slot è possibile selezionare l’IP tra quelli ancora disponibili sulle reti OVH. L’IP FailOver appartiene ad un blocco registrato al RIPE come italiano e quindi, nonostante sia fisicamente in francia, dal punto di vista dell’assegnazione di una nazionalità risulterà italiano (alcuni esperti SEO sostengono che questo fattore sia importante per migliorare l’indicizzazione dei siti italiani: io, sinceramente, sono molto scettico e non ho ancora trovato prove in merito).

Al momento in cui ho effettuato l’acquisto io erano disponibili molti IP in 5 differenti classi C (alcuni esperti SEO sostengono che è importante che i link tra siti siano su IP differenti, meglio ancora su classi C differenti. Questo mi sembra già più plausibile e lo verificherò a breve spostando alcuni siti su nuovi IP).

Molto interessante a parer mio poter vedere l’elenco degli IP tra i quali scegliere così da assicurarsi di non utilizzare un IP con una cattiva reputazione (un IP usato in precedenza per scopi non troppo etici).

Configurazione di un IP FailOver su Fedora Core 9

Aggiungere un IP FailOver ad un RPS con Fedora Core 9 è piuttosto semplice.

l’IP failover in dotazione è già configurato su una interfaccia di rete “virtuale” chiamata dummy0
Per aggiungere un alias possiamo creare copie del file dummy0 aggiungendo :1, :2, :3 per ogni IP FailOver che ci serve aggiungere.

# la cartella di configurazione della rete è per le Fedora in sysconfig
shell# cd /etc/sysconfig/network-scripts
shell# cp dummy0 dummy0:1
shell# vi ifcfg-dummy0:1
DEVICE=dummy0:1
BOOTPROTO=static
IPADDR=94.23.XX.XXX
NETMASK=255.255.255.255
ONBOOT=yes

A questo punto sarà sufficiente modificare il file appena creato (ifcfg-dummy0:1) inserendo come IPADDR l’ip failover acquistato e poi abilitare gli alias

shell# ./ifup-aliases dummy0

E verificare che abbia funzionato:

shell# ifconfig dummy0:1

dummy0:1  Link encap:Ethernet  HWaddr F2:DD:43:XX:XX:XX
  inet addr:94.23.XX.XXX  Bcast:94.23.XX.XXX  Mask:255.255.255.255
  UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1

Il mio consiglio è quello di provare subito anche a riavviare il server per verificare che l’IP venga riacquisito correttamente al boot.

Next

La mia intenzione è quella di provare ad installare VMware Server 2 e configurare una macchina virtuale che utilizzi l’IP FailOver appena configurato. Per ora tutto liscio, le prossime puntate saranno un po’ più complicate.

Tags: , , , ,

giovedì, aprile 2nd, 2009 Sysadmin Nessun commento