[Séparation] Cours de réseau

Mammouth du PHP | 965 Messages

24 nov. 2005, 09:22

Quelqu'un peux confirmer ou infirmer ? :?

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

24 nov. 2005, 11:57

Si j'ai bien compris ta question, je dois dire que le routage vers des sous-réseaux se fait exactement comme pour des réseaux et qu'aucune transformation de l'adresse du destinataire se trouvant dans un réseau ou sous-réseau connu n'est effectuée.

Ce qui se passe est que tout acteur dans l'émission d'un message connaissant l'ip complète du destinataire cherche d'abord dans sa table de routage locale s'il connait le réseau ou sous-réseau destinataire (selon l'ip destinataire et son masque) sinon il envoi le paquet au prochain routeur connu et ainsi de suite.

Récap : extrait de "http://www.linux-france.org/prj/edu/arc ... sIProutage"
Voici comment un hôte expéditeur se comporte pour adresser un paquet à un destinataire :

Il extrait l'adresse de réseau, voire de sous réseau de l'adresse du destinataire et la compare à sa propre adresse de réseau ou de sous réseau. S'il s'agit du même réseau, le paquet est expédié directement au destinataire en mettant en oeuvre ARP.

S'il ne s'agit pas du même réseau, l'expéditeur cherche dans sa table de routage une correspondance destinataire final / destinataire intermédiaire (routeur). Il cherche, en quelque sorte, sur son réseau, un hôte capable de servir de facteur vers un autre réseau.

L'expéditeur cherche d'abord à trouver dans sa table de routage locale l'adresse IP complète du destinataire,

s'il ne la trouve pas il cherche l'adresse du sous réseau du destinataire,

s'il ne la trouve pas, il cherche enfin l'adresse du réseau,

s'il ne trouve aucune correspondance, l'expéditeur cherche dans sa table l'adresse d'une passerelle à utiliser par défaut, (route 0.0.0.0)

s'il échoue là encore, le paquet, décidément bien encombrant, est supprimé.

Si l'une de ces recherches aboutit, la machine émettrice construit le paquet avec l'adresse IP du destinataire hors réseau. Elle l'encapsule dans une trame ayant comme adresse MAC de destination l'adresse MAC du routeur. La couche 2 du routeur lit la trame qui lui est adressée et la transmet à la couche 3 IP. Celle-ci récupère le paquet et s'aperçoit que le paquet ne lui est pas adressé, elle consulte sa table de routage, décide sur quelle nouvelle interface réseau le paquet doit être transmis, encapsule le paquet dans une nouvelle trame, et ainsi de suite de passerelle en passerelle jusqu'à destination.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

ViPHP
ViPHP | 2144 Messages

24 nov. 2005, 14:05

J'ajouterai que les opérations de recherche, comparaison d'adresse, se font très simplement grâce aux opération binaire tel que AND.
Par exemple pour connaitre vérifier si une adresse fait partie du sous-réseau, on fait une opération AND entre l'adresse en question et le subnet-mask (en gros, on conserve les bits de l'adresse du réseau, et on met à 0 ceux de l'adresse machine), et on compare le résutlat à l'adresse du sous réseau, si elles sont égales l'adresse fait partie du sous-réseau.
Bref, tout ça permet au routage d'être très rapide :-)
D'où la nécessite de maitriser à fond les opérations binaires pour bien maitriser ce sujet.

Mammouth du PHP | 965 Messages

24 nov. 2005, 16:02

Quelqu'un a des exercices sur des tables de routage a me passer s'il vous plait ou a me faire faire ?

genre je dois deviner le reseau a partir d'une table de routage ou alors decrire les lignes de routage ce genre de choses.

S'il vous plait et aussi me dire si c'est bon pour les sous reseau car je comprends.