Virtualisation et tunnel : rajouter des PCs sur son réseau

Plopinou à tous …

Petite astuce toute simple, pour créer des tunnels et ainsi permettre à ses PCs virtuel (VMWare/VirtualBox) de communiquer en direct sur son réseau (enfin lorsque l’on a pas assez d’interface physique disponible … tout le monde n’en a pas 100 ^^).

Sous debian/ubuntu il faut faire un sudo apt-get install bridge-utils

Copiez les lignes suivantes dans un script nommé « tunnel.sh » (ou ce que vous voulez) :

#!/bin/bash
#
#Usage : tunnel.sh
#Create 1 bridge + 2 tap
#	./tunnel.sh -d eth0 -n 0 -n 1
#Remove bridge and 2 tap
#	./tunnel.sh -s 0 -s 1 -r eth0
createBridge() {
	brctl addbr br0
	brctl addif br0 $1
	ifconfig $1 promisc
	dhclient br0
}

deleteBridge() {
	ifconfig $1 -promisc
	ifconfig br0 down
}

createTunnel() {
	openvpn --mktun --dev tap$1
	ifconfig tap$1 up
	brctl addif br0 tap$1
}

deleteTunnel()
{
	ifconfig tap$1 down
	brctl delif br0 tap$1
	openvpn --rmtun --dev tap$1
}

chmod 0666 /dev/net/tun

while getopts d:n:s:r: OPTION
do
	case $OPTION in
		d)createBridge $OPTARG;;
		n)createTunnel $OPTARG;;
		s)deleteTunnel $OPTARG;;
		r)deleteBridge $OPTARG;;
	esac
done

Avant de créer des tunnels, il faut créer un pont sur l’interface principal (eth0), ce qui donne :

sudo sh tunnel.sh -d eth0

Puis on peut créer plusieurs tunnels : tap0, tap1 et tap2 soit la commande suivante :

sudo sh tunnel.sh -n 0 -n 1 -n 2

On peut aussi vers les 2 à la suite (l’ordre est important … d’abord le pont ensuite les tunnels) :

sudo sh tunnel.sh -d eth0 -n 0 -n 1 -n 2

Ensuite, il suffit de choisir dans l’interface de configuration de réseau de Virtualbox/VMWare une connexion par pont/bridge :

tunnel

Pour détruire l’interface tap2 (après utilisation généralement … éteindre la machine virtuelle AVANT) :

sudo sh tunnel.sh -s 2

Pour enlever le bridge :

sudo sh tunnel.sh -r eth0

Et encore une fois … les deux à la fois ^^ (l’ordre est important … on détruit d’abord le tunnel avant d’éteindre le pont : d’où le -s d’abord, puis le -r ) :

sudo sh tunnel.sh -s 2 -r eth0

Et voilà c’est tout pour ce soir …

Utiliser Git pour gérer ses projets (mini mémo)

Petit mémo pour la gestion de projets via GIT, un gestionnaire de version (comme SVN, mais en mieux ;)).

Pour ma part, depuis que je suis passé à GIT, je ne me vois plus bosser sur un SVN ^^. Les principaux points positifs de l’utilisation de GIT par rapport à l’utilisation de SVN sont (pour moi) :

  • Le fait qu’un dossier peut contenir plusieurs autres projets sous gestionnaire de révision (assez difficile à maintenir en SVN)
  • Le commit local, qui permet de ne pas à avoir à tout envoyer au serveur dès que l’on fait de grosse modifications (et devoir faire un revert sur le serveur si c’est pas bon), et aussi la possibilité donc de dev sans connexion au net en profitant d’un gestionnaire de révision
  • Le système de mise en ligne simplifié des projets (pas d’architecture super lourde à déployer comme pour SVN avec les modules dav/svn).
  • Plein d’autre choses encore à venir 😉

Continuer la lecture de Utiliser Git pour gérer ses projets (mini mémo)