Partager via


MIB_IPFORWARDROW structure (ipmib.h)

La structure MIB_IPFORWARDROW contient des informations qui décrivent un itinéraire réseau IPv4.

Syntaxe

typedef struct _MIB_IPFORWARDROW {
  DWORD    dwForwardDest;
  DWORD    dwForwardMask;
  DWORD    dwForwardPolicy;
  DWORD    dwForwardNextHop;
  IF_INDEX dwForwardIfIndex;
  union {
    DWORD              dwForwardType;
    MIB_IPFORWARD_TYPE ForwardType;
  };
  union {
    DWORD               dwForwardProto;
    MIB_IPFORWARD_PROTO ForwardProto;
  };
  DWORD    dwForwardAge;
  DWORD    dwForwardNextHopAS;
  DWORD    dwForwardMetric1;
  DWORD    dwForwardMetric2;
  DWORD    dwForwardMetric3;
  DWORD    dwForwardMetric4;
  DWORD    dwForwardMetric5;
} MIB_IPFORWARDROW, *PMIB_IPFORWARDROW;

Membres

dwForwardDest

Type : DWORD

Adresse IPv4 de destination de l’itinéraire. Une entrée avec une adresse IPv4 de 0.0.0.0 est considérée comme un itinéraire par défaut. Ce membre ne peut pas être défini sur une adresse IPv4 de multidiffusion (classe D).

dwForwardMask

Type : DWORD

Masque de sous-réseau IPv4 à utiliser avec l’adresse IPv4 de destination avant d’être comparé à la valeur du membre dwForwardDest .

La valeur dwForwardMask doit être appliquée à l’adresse IPv4 de destination (logique et opération) avant une comparaison avec la valeur dans le membre dwForwardDest .

dwForwardPolicy

Type : DWORD

Ensemble de conditions qui entraînerait la sélection d’un itinéraire à plusieurs chemins (l’ensemble des tronçons suivants pour une destination donnée). Ce membre est généralement au format IP TOS. Cet encodage de ce membre est décrit dans RFC 1354. Pour plus d’informations, consultez http://www.ietf.org/rfc/rfc1354.txt.

dwForwardNextHop

Type : DWORD

Pour les itinéraires distants, adresse IPv4 du système suivant en route. Sinon, ce membre doit être une adresse IPv4 de 0.0.0.0.

dwForwardIfIndex

Type : DWORD

Index de l’interface locale via laquelle le tronçon suivant de cet itinéraire doit être atteint.

dwForwardType

Type : DWORD

Type d’itinéraire décrit dans RFC 1354. Pour plus d’informations, consultez http://www.ietf.org/rfc/rfc1354.txt.

Ce membre peut être l’une des valeurs définies dans le fichier d’en-tête Iprtmib.h .

Sur Windows Vista et versions ultérieures, les fichiers d’en-tête ont été réorganisés et ce membre peut être l’une des valeurs du type d’énumération MIB_IPFORWARD_TYPE défini dans le fichier d’en-tête Ipmib.h . Notez que l’en-tête Ipmib.h est automatiquement inclus par le fichier d’en-tête Iprtrmib.h qui est automatiquement inclus par l’en-tête Iphlpapi.h . Les fichiers d’en-tête Iprtrmib.h et Ipmib.h ne doivent jamais être utilisés directement.

La liste suivante montre les valeurs possibles pour ce membre.

Valeur Signification
MIB_IPROUTE_TYPE_OTHER
1
Un autre type non spécifié dans RFC 1354.
MIB_IPROUTE_TYPE_INVALID
2
Itinéraire non valide. Cette valeur peut résulter d’un itinéraire ajouté par une redirection ICMP.
MIB_IPROUTE_TYPE_DIRECT
3
Itinéraire local où le tronçon suivant est la destination finale (interface locale).
MIB_IPROUTE_TYPE_INDIRECT
4
Itinéraire distant où le tronçon suivant n’est pas la destination finale (une destination distante).

ForwardType

dwForwardProto

Type : DWORD

Protocole ou mécanisme de routage qui a généré l’itinéraire, comme décrit dans RFC 1354. Pour plus d’informations, consultez http://www.ietf.org/rfc/rfc1354.txt. Consultez Identificateurs de protocole pour obtenir la liste des identificateurs de protocole possibles utilisés par les protocoles de routage.

Ce membre peut être l’une des valeurs définies dans le fichier d’en-tête Iprtmib.h . Les valeurs de ce membre peuvent être l’une des valeurs MIB_IPPROTO_xxx définies dans le fichier d’en-tête Iprtmib.h ou l’une des valeurs PROTO_IP_xxx définies dans le fichier d’en-tête routprot.h , car ces valeurs sont identiques.

Sur Windows Vista et versions ultérieures, les fichiers d’en-tête ont été réorganisés et ce membre peut être l’une des valeurs définies dans le fichier d’en-tête Nldef.h . Notez que l’en-tête Nldef.h est automatiquement inclus par le fichier d’en-tête Ipmib.h qui est automatiquement inclus par l’en-tête Iprtrmib.h . L’en-tête Iphlpapi.h inclut automatiquement le fichier d’en-tête Iprtrmib.h. Les fichiers d’en-tête Iprtrmib.h, Ipmib.h et Nldef.h ne doivent jamais être utilisés directement.

La liste suivante montre les valeurs possibles pour ce membre.

Valeur Signification
MIB_IPPROTO_OTHER
1
Un autre protocole non spécifié dans RFC 1354.
MIB_IPPROTO_LOCAL
2
Interface locale.
MIB_IPPROTO_NETMGMT
3
Itinéraire statique. Cette valeur est utilisée pour identifier les informations d’itinéraire pour le routage IP défini via la gestion réseau, comme le protocole DCHP (Dynamic Host Configuration Protocol), le protocole SNMP (Simple Network Management Protocol) ou par des appels aux fonctions CreateIpForwardEntry, DeleteIpForwardEntry ou SetIpForwardEntry .
MIB_IPPROTO_ICMP
4
Résultat de la redirection ICMP.
MIB_IPPROTO_EGP
5
Le protocole EGP (Exterior Gateway Protocol), un protocole de routage dynamique.
MIB_IPPROTO_GGP
6
Le protocole GGP (Gateway-to-Gateway Protocol), un protocole de routage dynamique.
MIB_IPPROTO_HELLO
7
Protocole Hellospeak, un protocole de routage dynamique. Il s’agit d’une entrée historique qui n’est plus utilisée et qui était un protocole de routage précoce utilisé par les routeurs ARPANET d’origine qui exécutaient un logiciel spécial appelé protocole de routage Fuzzball, parfois appelé Hellospeak, comme décrit dans RFC 891 et RFC 1305. Pour plus d’informations, consultez http://www.ietf.org/rfc/rfc891.txt et http://www.ietf.org/rfc/rfc1305.txt.
MIB_IPPROTO_RIP
8
Le protocole RIP (Berkeley Routing Information Protocol) ou RIP-II, un protocole de routage dynamique.
MIB_IPPROTO_IS_IS
9
Protocole is-à-système intermédiaire (IS-Intermediate System), un protocole de routage dynamique. Le protocole IS-IS a été développé pour être utilisé dans la suite de protocoles OSI (Open Systems Interconnection).
MIB_IPPROTO_ES_IS
10
Le protocole ES-IS (End System-to-Intermediate System), un protocole de routage dynamique. Le protocole ES-IS a été développé pour être utilisé dans la suite de protocoles OSI (Open Systems Interconnection).
MIB_IPPROTO_CISCO
11
Le protocole IGRP (Cisco Interior Gateway Routing Protocol), un protocole de routage dynamique.
MIB_IPPROTO_BBN
12
Bolt, Beranek et Newman (BBN) Interior Gateway Protocol (IGP) qui utilisait l’algorithme SPF (Shortest Path First). Il s’agissait d’un premier protocole de routage dynamique.
MIB_IPPROTO_OSPF
13
Le protocole OSPF (Open Shortest Path First), un protocole de routage dynamique.
MIB_IPPROTO_BGP
14
Le protocole BGP (Border Gateway Protocol), un protocole de routage dynamique.
MIB_IPPROTO_NT_AUTOSTATIC
10002
Entrée spécifique à Windows ajoutée à l’origine par un protocole de routage, mais qui est maintenant statique.
MIB_IPPROTO_NT_STATIC
10006
Entrée spécifique à Windows ajoutée en tant qu’itinéraire statique à partir de l’interface utilisateur de routage ou d’une commande de routage.
MIB_IPPROTO_NT_STATIC_NON_DOD
10007
Une entrée spécifique à Windows ajoutée en tant qu’itinéraire statique à partir de l’interface utilisateur de routage ou d’une commande de routage, sauf que ces itinéraires ne provoquent pas la numérotation à la demande (DOD).

ForwardProto

dwForwardAge

Type : DWORD

Nombre de secondes depuis l’ajout ou la modification de l’itinéraire dans la table de routage réseau.

dwForwardNextHopAS

Type : DWORD

Numéro de système autonome du tronçon suivant. Lorsque ce membre est inconnu ou non pertinent pour le protocole ou le mécanisme de routage spécifié dans dwForwardProto, cette valeur doit être définie sur zéro. Cette valeur est documentée dans RFC 1354. Pour plus d'informations, consultez http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric1

Type : DWORD

Valeur de métrique de routage principale pour cet itinéraire. La sémantique de cette métrique est déterminée par le protocole de routage spécifié dans le membre dwForwardProto . Si cette métrique n’est pas utilisée, sa valeur doit être définie sur -1. Cette valeur est documentée dans dans RFC 1354. Pour plus d'informations, consultez http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric2

Type : DWORD

Autre valeur de métrique de routage pour cet itinéraire. La sémantique de cette métrique est déterminée par le protocole de routage spécifié dans le membre dwForwardProto . Si cette métrique n’est pas utilisée, sa valeur doit être définie sur -1. Cette valeur est documentée dans RFC 1354. Pour plus d'informations, consultez http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric3

Type : DWORD

Autre valeur de métrique de routage pour cet itinéraire. La sémantique de cette métrique est déterminée par le protocole de routage spécifié dans le membre dwForwardProto . Si cette métrique n’est pas utilisée, sa valeur doit être définie sur -1. Cette valeur est documentée dans RFC 1354. Pour plus d'informations, consultez http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric4

Type : DWORD

Autre valeur de métrique de routage pour cet itinéraire. La sémantique de cette métrique est déterminée par le protocole de routage spécifié dans le membre dwForwardProto . Si cette métrique n’est pas utilisée, sa valeur doit être définie sur -1. Cette valeur est documentée dans RFC 1354. Pour plus d'informations, consultez http://www.ietf.org/rfc/rfc1354.txt

dwForwardMetric5

Type : DWORD

Autre valeur de métrique de routage pour cet itinéraire. La sémantique de cette métrique est déterminée par le protocole de routage spécifié dans le membre dwForwardProto . Si cette métrique n’est pas utilisée, sa valeur doit être définie sur -1. Cette valeur est documentée dans RFC 1354. Pour plus d'informations, consultez http://www.ietf.org/rfc/rfc1354.txt

Notes

La fonction GetIpForwardTable énumère les entrées de route IPv4 sur un système local et retourne ces informations dans une structure MIB_IPFORWARDTABLE qui contient un tableau d’entrées de structure MIB_IPFORWARDROW .

Les membres dwForwardDest, dwForwardMask et dwForwardNextHop de la structure MIB_IPFORWARDROW représentent des adresses IPv4 dans l’ordre d’octet du réseau.

Le membre dwForwardProto de la structure MIB_IPFORWARDROW spécifie le protocole ou le mécanisme de routage qui a généré l’itinéraire. Les identificateurs de protocole de routage sont utilisés pour identifier les informations d’itinéraire pour le protocole de routage spécifié. Par exemple, MIB_IPPROTO_NETMGMT est utilisé pour identifier les informations de routage IP définies par le biais de la gestion réseau, comme le protocole DCHP (Dynamic Host Configuration Protocol), le protocole SNMP (Simple Network Management Protocol) ou par des appels aux fonctions CreateIpForwardEntry, DeleteIpForwardEntry ou SetIpForwardEntry . Pour obtenir la liste des protocoles et des mécanismes de routage possibles, consultez Identificateurs de protocole.

Une adresse IPv4 de 0.0.0.0 dans le membre dwForwardDest de la structure MIB_IPFORWARDROW est considérée comme un itinéraire par défaut. Le MIB_IPFORWARDTABLE peut contenir plusieurs entrées MIB_IPFORWARDROW avec le membre dwForwardDest défini sur 0.0.0.0 quand plusieurs cartes réseau sont installées.

Lorsque dwForwardAge est défini sur INFINITE, l’itinéraire n’est pas supprimé en fonction d’un délai d’expiration

Valeur. Toute autre valeur pour dwForwardAge spécifie le nombre de secondes depuis l’ajout ou la modification de l’itinéraire dans la table de routage réseau.

Sur Windows Server 2003 ou Windows 2000 Server lorsque le service de routage et d’accès à distance (RRAS) est en cours d’exécution, les entrées MIB_IPFORWARDROW retournées ont les membres dwForwardType et dwForwardAge définis sur zéro.

Sur Windows Vista et Windows Server 2008, la métrique d’itinéraire spécifiée dans le membre dwForwardMetric1 de la structure MIB_IPFORWARDROW représente une combinaison de la métrique d’itinéraire ajoutée à la métrique d’interface spécifiée dans le membre Métrique de la structure MIB_IPINTERFACE_ROW de l’interface associée. Par conséquent, le membre dwForwardMetric1 de la structure MIB_IPFORWARDROW doit être égal ou supérieur au membre Metric de la structure MIB_IPINTERFACE_ROW associée. Si une application souhaite définir la métrique d’itinéraire sur 0, le membre dwForwardMetric1 de la structure MIB_IPFORWARDROW doit être défini sur la valeur de la métrique d’interface spécifiée dans le membre Metric de la structure MIB_IPINTERFACE_ROW associée. Une application peut récupérer la métrique d’interface en appelant la fonction GetIpInterfaceEntry .

Un certain nombre de membres de la structure MIB_IPFORWARDROW ne sont actuellement pas utilisés par le routage IPv4. Ces membres incluent dwForwardPolicy, dwForwardNextHopAS, dwForwardMetric2, dwForwardMetric3, dwForwardMetric4 et dwForwardMetric5.

Dans le Kit de développement logiciel (SDK) Microsoft Windows publié pour Windows Vista et versions ultérieures, la organization des fichiers d’en-tête a changé. Cette structure est définie dans le fichier d’en-tête Ipmib.h , et non dans le fichier d’en-tête Iprtrmib.h . Notez que le fichier d’en-tête Ipmib.h est automatiquement inclus dans Iprtrmib.h, qui est automatiquement inclus dans le fichier d’en-tête Iphlpapi.h . Les fichiers d’en-tête Ipmib.h et Iprtrmib.h ne doivent jamais être utilisés directement.

Exemples

Pour afficher un exemple qui récupère la structure MIB_IPFORWARDTABLE , puis imprime les entrées de structure MIB_IPFORWARDROW dans cette table, consultez la fonction GetIpForwardTable .

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête ipmib.h (include Iphlpapi.h)

Voir aussi

CreateIpForwardEntry

DeleteIpForwardEntry

GetIpForwardTable

GetIpInterfaceEntry

MIB_IPFORWARDTABLE

MIB_IPINTERFACE_ROW

Identificateurs de protocole

SetIpForwardEntry