fr.comp.reseaux.ip
Discussion complète de l'article :
bridge et interfaces virtuelles sous linux

Date

Sujet

From


03-04-2008

     bridge et interfaces virtuelles sous linux

lidiriel

04-04-2008

             Re: bridge et interfaces virtuelles sous linux

lidiriel

04-04-2008

             Re: bridge et interfaces virtuelles sous linux

lidiriel

03-04-2008

         Re: bridge et interfaces virtuelles sous linux

Pascal Hambourg

04-04-2008

                 Re: bridge et interfaces virtuelles sous linux

Pascal Hambourg


Article : 31479
Date : 03-04-2008
From : lidiriel
Sujet : bridge et interfaces virtuelles sous linux

Bonjour,

je ne sais pas si je poste au bon endroit mais je charche des
sp=E9cialiste r=E9seau.
Alors voila ma probl=E9matique.
je d=E9veloppe une application qui doit caus=E9 avec 300 petit serveur
(PS).
cela cause avec un protocol maison en rawethernet. Donc via les
adresse MAC.
J aimerais tester la monter en charge de mon appli appelons la FOO.

Ce que je voulais faire c est installer un bridge sur un linux
disposant dun interface eth0
A ce bridge je lui rajoute 300 interface TAP (de TAP0 a TAP299).
Je recupere les adresse MAC des TAP et je les donne a mon appli FOO.
Ensuite je d=E9marre les 300 serveur PS chacun connect=E9 a une interface
TAP.

Mais ca marche pas.
voici la procedure :

# conf de l hote au 300 serveur
ifconfig eth0 0.0.0.0 promisc up
brctl addbr monbridge
brctl setfd monbridge 0
brctl sethello monbridge 0
brctl stp monbridge off
ifconfig monbridge 192.168.0.42 netmask 255.255.255.0 up
# connexion a eth0
brctl addif monbridge eth0

#creation des interface virtuel
tunctl -t tap0
=2E..
=2E..
tunctl -t tap299
#conf des interfaces
ifconfig tap0 0.0.0.0 promisc up

# on connect au bridge
brctl addif monbridge tap0

de m=EAme avec les autre tap (en fait j essaye d abord avec 2)
ensuite je lance mon serveur avec en parametre le nom de l interface.

Voici l archi reseau :
FOO <----> [[ eth0 <=3D=3D> monbridge <=3D=3D>TAP1, TAP2, TAPX <=3D=3D> PS1,=

PS2, ... PSX ]]

FOO est sur une machine physique diff=E9rente
remarque monbridge a pris l adresse mac de eth0 ce qui me parrait
normal
l'ensemble des interface sont en "promisc" sauf monbridge


*** resultat ***
les 2 serveurs PS recoivent bien les requetes
ils repondent, quand je scan le reseau sur les interface TAP avec
wireshark je recup=E8re les requete qu ils envoient a FOO pas ce qui
rentre par contre ! bizarre d=E9j=E0.
Quand je fait inspecter l interface "monbridge" a wireshark je choppe
les trames qui rentre a destination des mes serveur PS mais rien qui
sort.


Si quelqu un avait une id=E9e a me proposer . car je suis pas fortich en
r=E9seau et cela me d=E9panerais bien.

a+

Posez vos questions, réponses et remarques sur les forums de FrameIP


Article : 31480
Date : 03-04-2008
From : Pascal Hambourg
Sujet : Re: bridge et interfaces virtuelles sous linux

Salut,

lidiriel a écrit :
>
> je ne sais pas si je poste au bon endroit mais je charche des
> spécialiste réseau.

Pourquoi des spécialistes ? Perso je préfère un non spécialiste qui sait
répondre à ma question qu'un spécialiste qui ne sait pas.

> A ce bridge je lui rajoute 300 interface TAP (de TAP0 a TAP299).
> Je recupere les adresse MAC des TAP et je les donne a mon appli FOO.
> Ensuite je démarre les 300 serveur PS chacun connecté a une interface
> TAP.

Si je puis me permettre, ce ne sont pas les adresses MAC des interfaces
TAP qu'il faut récupérer puisqu'elles vont disparaître dans le pont,
mais plutôt les adresses MAC de ce qui se trouve à l'autre bout, donc
des PS si j'ai bien compris.

> FOO est sur une machine physique différente
> remarque monbridge a pris l adresse mac de eth0 ce qui me parrait
> normal

En effet, le pont prend l'adresse MAC de la première interface liée.

> l'ensemble des interface sont en "promisc" sauf monbridge

C'est de toute façon nécessairement le cas dans un pont, inutile de
s'embêter à les mettre manuellement en mode promiscuous.

> *** resultat ***
> les 2 serveurs PS recoivent bien les requetes
> ils repondent, quand je scan le reseau sur les interface TAP avec
> wireshark je recupère les requete qu ils envoient a FOO pas ce qui
> rentre par contre ! bizarre déjà.

C'est FOO ou les PS qui envoient des requêtes ?
Qu'est-ce qui est censé rentrer, depuis où et vers où ?

> Quand je fait inspecter l interface "monbridge" a wireshark je choppe
> les trames qui rentre a destination des mes serveur PS mais rien qui
> sort.

Normal a priori, l'interface monbridge ne voit pas ce qui transite entre
l'interface ethernet et les interfaces TAP. Les interfaces d'un pont,
c'est un peu comme les ports d'un switch ethernet :

monbridge
|
tap0 - switch - tap1
|
eth0

Posez vos questions, réponses et remarques sur les forums de FrameIP


Article : 31482
Date : 04-04-2008
From : lidiriel
Sujet : Re: bridge et interfaces virtuelles sous linux

On Apr 3, 11:43 pm, Pascal Hambourg
wrote:
>
> lidiriel a =E9crit :
>
> > je ne sais pas si je poste au bon endroit mais je charche des
> > sp=E9cialiste r=E9seau.
>
> Pourquoi des sp=E9cialistes ? Perso je pr=E9f=E8re un non sp=E9cialiste qu=
i sait
> r=E9pondre =E0 ma question qu'un sp=E9cialiste qui ne sait pas.

:) quelqu'un qui peut me r=E9pondre est pour moi un sp=E9cialiste (a
diff=E9rent degr=E9 :) ) m=EAme si il est menuisier.

> > A ce bridge je lui rajoute 300 interface TAP (de TAP0 a TAP299).
> > Je recupere les adresse MAC des TAP et je les donne a mon appli FOO.
> > Ensuite je d=E9marre les 300 serveur PS chacun connect=E9 a une interfa=
ce
> > TAP.
>
> Si je puis me permettre, ce ne sont pas les adresses MAC des interfaces
> TAP qu'il faut r=E9cup=E9rer puisqu'elles vont dispara=EEtre dans le pont,=

> mais plut=F4t les adresses MAC de ce qui se trouve =E0 l'autre bout, donc
> des PS si j'ai bien compris.

Mais ce que j appele PS c est une petit application qui a besoin d une
interface reseau. Donc je lui donne comme interface une TAP.
Et pour mon appli FOO elle (l'appli PS) est identifi=E9 avec sa
MACADRESS.
( A terme PS tournera sur une carte d=E9di=E9 avec une vrai interface
physique et une vrai MACADRESS, je voudrais juste simuler tout ca )

> > *** resultat ***
> > les 2 serveurs PS recoivent bien les requetes
> > ils repondent, quand je scan le reseau sur les interface TAP avec
> > wireshark je recup=E8re les requete qu ils envoient a FOO pas ce qui
> > rentre par contre ! bizarre d=E9j=E0.

> C'est FOO ou les PS qui envoient des requ=EAtes ?
> Qu'est-ce qui est cens=E9 rentrer, depuis o=F9 et vers o=F9 ?

FOO envoie une requete sur le reseau avec les MACADRESS des TAP. Les
softs PS receptionnent les requete et renvoient des r=E9ponses a FOO.
Jusque la ca marche mais la reponse n arrive pas a FOO. Pourtant les
PS recoivent bien les requetes de FOO

je refait un petit schema j esp=E8re qu il passera correctement.
/\
foo* | machine 1
|| \/
{ lan }
| /\
eth0 |
| |
monbridge | machine 2
| | | |
tap0 tap1 tap2 |
|| || || |
ps0* ps1* ps2* |
\/
> > Quand je fait inspecter l interface "monbridge" a wireshark je choppe
> > les trames qui rentre a destination des mes serveur PS mais rien qui
> > sort.
>
> Normal a priori, l'interface monbridge ne voit pas ce qui transite entre
> l'interface ethernet et les interfaces TAP. Les interfaces d'un pont,
> c'est un peu comme les ports d'un switch ethernet :
>
pourquoi je vois les trame qui rentre alors ?

merci pour votre aide

Posez vos questions, réponses et remarques sur les forums de FrameIP


Article : 31483
Date : 04-04-2008
From : lidiriel
Sujet : Re: bridge et interfaces virtuelles sous linux

Ok je viens d avancer un peu. Je constate comme tu me la dit que
apriori le bridge est completement ransparent puisque mes deux soft
PS1 et PS2 on recu chacun une requete venant de FOO qui n'=E9tait
adresser (en MAC) qu a PS1.
Bon je me replonge dans la doc mais je vois pas comment faire car il
me faut des interface style TUN/TAP avec une adresse MAC. Peut etre
avec un switch virtuel et pas un bridge ? ca existe au moin un switch
virtuel ?

Posez vos questions, réponses et remarques sur les forums de FrameIP


Article : 31484
Date : 04-04-2008
From : Pascal Hambourg
Sujet : Re: bridge et interfaces virtuelles sous linux

lidiriel a écrit :
>
>>>A ce bridge je lui rajoute 300 interface TAP (de TAP0 a TAP299).
>>>Je recupere les adresse MAC des TAP et je les donne a mon appli FOO.
>>>Ensuite je démarre les 300 serveur PS chacun connecté a une interface
>>>TAP.
>>
>>Si je puis me permettre, ce ne sont pas les adresses MAC des interfaces
>>TAP qu'il faut récupérer puisqu'elles vont disparaître dans le pont,
>>mais plutôt les adresses MAC de ce qui se trouve à l'autre bout, donc
>>des PS si j'ai bien compris.
>
> Mais ce que j appele PS c est une petit application qui a besoin d une
> interface reseau. Donc je lui donne comme interface une TAP.
> Et pour mon appli FOO elle (l'appli PS) est identifié avec sa
> MACADRESS.

Je voudrais éclaircir un point important. Les applis PS communiquent
bien avec les TAP via /dev/net/tun et non via des sockets réseau avec
les interfaces tapX, n'est-ce pas ?

J'insiste bien, l'application qui communique via /dev/net/tun simule un
réseau ethernet virtuel connecté à tapX, et donc doit utiliser des
adresses MAC sources distinctes de l'adresse MAC de tapX.

> je refait un petit schema j espère qu il passera correctement.

Non, il est tout déformé. Composé avec une police de caractères à
espacement variable comme Arial ou Times ? Il faut composer les schémas
ASCII avec une police à espacement fixe comme Courier. Je le redresse :

> /\
> foo* | machine 1
> || \/
> { lan }
> | /\
> eth0 |
> | |
> monbridge | machine 2
> | | | |
> tap0 tap1 tap2 |
> || || || |
> ps0* ps1* ps2* |
> \/
>
>>>Quand je fait inspecter l interface "monbridge" a wireshark je choppe
>>>les trames qui rentre a destination des mes serveur PS mais rien qui
>>>sort.
>>
>>Normal a priori, l'interface monbridge ne voit pas ce qui transite entre
>>l'interface ethernet et les interfaces TAP. Les interfaces d'un pont,
>>c'est un peu comme les ports d'un switch ethernet :
>
> pourquoi je vois les trame qui rentre alors ?

Parce que le pont diffuse sur tous les "ports" (monbridge, tapX, eth0)
autres que le port d'entrée les trames dont il ne connaît pas le port de
destination.

> Ok je viens d avancer un peu. Je constate comme tu me la dit que
> apriori le bridge est completement ransparent puisque mes deux soft
> PS1 et PS2 on recu chacun une requete venant de FOO qui n'était
> adresser (en MAC) qu a PS1.

Le pont doit apprendre quelles adresses MAC sont associées à quels
ports. Pour cela il se base sur l'adresse MAC source des trames reçues.
En attendant, il diffuse les trames avec des adresses MAC destination
inconnues sur tous les ports autres que le port d'entrée.

> Bon je me replonge dans la doc mais je vois pas comment faire car il
> me faut des interface style TUN/TAP avec une adresse MAC. Peut etre
> avec un switch virtuel et pas un bridge ? ca existe au moin un switch
> virtuel ?

Pont ou switch, c'est la même chose.

Posez vos questions, réponses et remarques sur les forums de FrameIP




mot clé : interfaces fr linux virtuelles et ipv6 voip tcpip comp bridge ip ip reseaux sous ipv4 vpn

Copyright © 2003-2010 FrameIP TcpIP. Tous droits réservés. Les marques et marques commerciales mentionnées appartiennent à leurs propriétaires respectifs. L'utilisation de ce site Web TcpIP implique l'acceptation des conditions d'utilisation et du règlement sur le respect de la vie privée.
Sécurité entreprise Comparatif Adsl SSII Reseaux Sécurité Test ADSL