Open vSwitch

De Wiki doc

Version datée du 7 mai 2017 à 10:50 par Ycharbi (discussion | contributions) (Correction de fautes de frappes)

ATTENTION

L'article est en cours de rédaction et d’expérimentation

Open vSwitch, dont son abbreviation est OVS, permet de créer des switchs vituels au sein du systeme d'exploitation. Celui-ci gère les VLANs et les port Trucks. Ce programme est utils dans plusieurs cas:

  • Créer un switch suportant les VLANs a moindre coût (un raspberry Pi avec des ports ethernet USB)
  • Gérer le reseau de chaque VMs ou conteneurs comme des machines phisiques

Mon projet personel consiste a gérer mon reseau de machine vituel après un pare-feu qui lui-même est vitualisé.

ATTENTION

Lors de la redaction (17/02/2017), Open vSwitch n'est pas stable sur Debian Stretch.

Installation

Open vSwitch est disponible dans les depots Debian

# apt install openvswitch-switch

Configuration

Nous allons enregistrer la configuration actuel des interfaces réseaux

# cp /etc/network/interfaces /etc/network/interfaces.old

ASTUCE

Effacer le contenu du fichier /etc/network/interface pour éviter toutes confusions.

Créer un switch virtuel

Dans le fichier /etc/network/interface ajouter :

<source lang="bash">

  1. Création d'un switch ovs

allow-ovs br0 iface br0 inet manual ovs_type OVSBridge </source>

Pour appliquer les changements, il faut redémarrer le PC.

ATTENTION

Si vous redémarrez votre machine vous perdez la connexion!

Ajouter un port virtuel au switch

Toujours dans le fichier /etc/network/interface ajouter :

<source lang="bash">

  1. Ajouter un port virtuel au switch

allow-ovs vport0 iface vport0 inet manual ovs_bridge br0 ovs_type OVSPort </source>

Ajouter une ligne a la configuration du switch pour associer le port:

<source lang="bash">

  1. Création d'un switch ovs

allow-ovs br0 iface br0 inet manual ovs_type OVSBridge ovs_ports vport0 </source>

Ajouter un port physique au switch

Toujours dans le fichier /etc/network/interface ajouter :

<source lang="bash">

  1. Ajouter un port virtuel au switch

allow-ovs eth0 iface eth0 inet manual ovs_bridge br0 ovs_type OVSPort </source>

Modifier une ligne a la configuration du switch pour associer le port:

<source lang="bash">

  1. Création d'un switch ovs

allow-ovs br0 iface br0 inet manual ovs_type OVSBridge ovs_ports vport0 eth0 </source>

Si vous voulez avoir une ip pour votre machine :

DHCP: <source lang="bash">

  1. Création d'un switch ovs

allow-ovs br0 iface br0 inet dhcp ovs_type OVSBridge ovs_ports vport0 eth0 </source>

IP statique : <source lang="bash">

  1. Création d'un switch ovs

allow-ovs br0 iface br0 inet static ovs_type OVSBridge ovs_ports vport0 eth0 address 10.50.10.44 netmask 255.255.255.0 gateway 10.50.10.1 </source>

Dans ce cas vous pouvez redémarrer votre machine sans perdre la connexion.

État du switch

Pour connaître l’état du switch :

# ovs-vsctl show