15 votes

Est-ce qu'un commutateur réseau est conscient de l'adresse IP?

J'ai quelques questions très triviales et basiques sur les réseaux, mais je trouve des informations contradictoires à ce sujet, donc je voulais simplement clarifier cela.

D'après ce que je comprends, un commutateur réseau gère le trafic "intelligemment" de manière à ne propager les paquets que vers le port où il sait que le destinataire est situé (contrairement à un concentrateur qui envoie de force toutes les données à tous les ports).

  • Correct ?

Un commutateur doit donc se souvenir de toutes les adresses des hôtes qui y sont connectées. Si l'hôte n'est pas trouvé, le paquet est envoyé vers la route par défaut (généralement une liaison montante vers un réseau plus étendu).

  • Correct ?

Maintenant, ma question principale est :

  • Est-ce qu'un commutateur se souvient des adresses IP ou des adresses MAC pour calculer ses décisions ?

22voto

Lawrence Points 203

Eh bien, cela dépend du type de commutateur que vous utilisez.

Les types les plus basiques fonctionnent au niveau de la couche de liaison et ne sont pas conscients des adresses IP. Ils utilisent des adresses MAC pour leur fonctionnement. Ces commutateurs sont souvent non gérés.

Cependant, il existe aussi des commutateurs plus intelligents, qui offrent des fonctionnalités au niveau IP, telles que des listes de contrôle d'accès, et qui sont conscients des adresses IP. En général, ces commutateurs sont gérés, c'est-à-dire qu'ils disposent d'une interface web ou d'une interface de console (ou les deux) permettant à l'utilisateur de configurer les différentes options. Cependant, les fonctionnalités supplémentaires fonctionnent en plus des fonctions de base du commutateur.

Les commutateurs "apprennent" les adresses MAC des appareils connectés à leurs ports en écoutant le trafic, et les utilisent pour décider où envoyer les datagrammes entrants. En général, les commutateurs ne routent pas. Cela est généralement fait par les routeurs, et les datagrammes envoyés par le routeur utilisent l'adresse de la couche de liaison (adresse MAC dans les réseaux Ethernet) pour envoyer le paquet vers le prochain saut.

9voto

blankabout Points 1004

Tout simplement pour ajouter légèrement aux réponses de @wolfgangsz et @sleske, il faut souligner qu'un commutateur standard est, comme déjà mentionné, uniquement un dispositif de couche 2 donc il ne comprend que les adresses MAC.

Quoique le terme 'paquet' soit souvent utilisé de manière générique, l'unité de données de protocole (PDU) en couche 2 est un 'trame', en couche 3 la PDU est un paquet.

Un 'commutateur multi-niveaux' peut être considéré comme un commutateur contenant un routeur qui, contrairement aux routeurs traditionnels, route les paquets de VLAN en VLAN au lieu de d'une interface physique à une autre interface physique.

Si un commutateur supporte les VLAN (ce qui ne fait pas nécessairement de lui un commutateur multi-niveaux) alors une trame avec une adresse MAC de destination inconnue sera envoyée sur tous les ports (appelé inondation) qui sont membres du même VLAN que le paquet a été reçu car un VLAN est un domaine de diffusion et les trames ne vont pas au-delà des frontières des domaines de diffusion.

EDIT : Pour plus de complétude, je devrais également mentionner que les commutateurs qui supportent les VLAN soutiendront également les ports de liaison, ceux-ci utilisent des trames étendues qui permettent à du trafic provenant de multiples VLAN d'être transporté sur une seule liaison physique.

8voto

Andrew Grimm Points 928

Autant que je sache, un commutateur réseau gère le trafic de manière "intelligente" en ne propageant les paquets qu'à son port où il sait que le destinataire est situé (contrairement à un concentrateur qui envoie brutalement toutes les données à tous les ports).

Oui, c'est correct.

Alors, un commutateur doit se souvenir de toutes les adresses des hôtes qui y sont connectés. Si l'hôte n'est pas trouvé, le paquet est envoyé vers la route par défaut (généralement un lien montant vers un réseau plus large).

Eh bien, pas tout à fait. Il est vrai qu'un commutateur se souvient des hôtes connectés à chaque port (généralement en observant les adresses MAC des paquets arrivant sur les ports). Cependant, un commutateur ne connaît généralement pas la "route par défaut", car c'est un concept d'une couche réseau supérieure. Les commutateurs fonctionnent sur la couche 2 du modèle OSI (couche de liaison de données). La "route par défaut" est un concept utilisé pour le routage, qui se fait à la couche 3 (couche réseau).

Un commutateur n'a donc pas de "route par défaut". S'il ne connaît pas une adresse MAC de destination, il envoie simplement le paquet à tous les ports (au moins au début, c'est tout ce qu'il peut faire - on appelle cela "le flooding"). En tout cas, dans un réseau Ethernet, chaque paquet doit être adressé à une adresse MAC locale, sinon il n'arrivera jamais. Les paquets envoyés "sur internet" reçoivent toujours une adresse MAC de destination locale, à savoir l'adresse de la passerelle par défaut du réseau. Le commutateur transmet simplement ce paquet à la passerelle par défaut, et la passerelle (qui opère à la couche 3) lit ensuite la destination "réelle" à partir de l'adresse IP intégrée dans le paquet et l'envoie sur son chemin.

Le commutateur se souvient-il des adresses IP ou des adresses MAC pour calculer ses décisions?

Comme expliqué ci-dessus, un commutateur est indifférent à l'IP, car il fonctionne sur un niveau d'abstraction plus bas. Ainsi, seules les adresses MAC.

Une complication : Comme expliqué dans la réponse de wolfgangsz, il existe des commutateurs qui fonctionnent également sur la couche 3 (appelés commutateurs multicouches). Ceux-ci sont un peu plus compliqués, et ils peuvent gérer les adresses IP et plus encore.

1voto

Egil Points 13196

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X