Comment ping peut savoir si mon hôte est en panne

11

Lorsque je suis pingserveur, il y a deux types de résultats que je pourrais obtenir:

  • Temps libre
  • L'hôte est en panne

Comment la pingcommande sait-elle si un hôte est en panne? Dans les deux cas, l'hôte n'envoie aucune réponse au paquet ping, alors comment pingfaire la différence?

Bob5421
la source
2
Reproduction

Réponses:

3

L'hôte est en panne:

Cela indique que vous ne connaissez pas un itinéraire vers la destination souhaitée, ou un routeur distant signale qu'il n'a aucun itinéraire vers la destination.

Temps libre:

Indique l'absence de messages de réponse d'écho. Aucun colis n'a été reçu dans le délai par défaut.

SantiCarta
la source
24

Les différences entre les réponses ne sont pas réellement déterminées par l'ICMP lui-même mais plutôt indirectement.

ICMP peut distinguer les éléments suivants:

  0 = net unreachable;

  1 = host unreachable;

  2 = protocol unreachable;

  3 = port unreachable;

  4 = fragmentation needed and DF set;

  5 = source route failed.

Mais il le fait avec d'autres ressources réseau. Les codes 0, 1, 4 et 5 peuvent être reçus d'une passerelle. Les codes 2 et 3 peuvent être reçus d'un hôte.

Si, selon les informations contenues dans les tables de routage de la passerelle, le réseau de destination est inaccessible (par exemple, la distance au réseau est infinie), la passerelle peut envoyer un message de destination inaccessible à l'hôte source Internet du datagramme. De plus, dans certains réseaux, la passerelle peut être en mesure de déterminer si l'hôte de destination Internet est inaccessible. Ce sont les passerelles de ces réseaux qui peuvent envoyer des messages de destination inaccessibles à l'hôte source lorsque l'hôte de destination est inaccessible, ce n'est donc pas ICMP qui fait les déterminations.

Dans le cas où dans l'hôte de destination, le module IP ne peut pas délivrer le datagramme car le module de protocole ou le port de processus indiqué n'est pas actif, alors l'hôte de destination peut envoyer un message `` destination inaccessible '' à l'hôte source.

Enfin, si un datagramme doit être fragmenté pour être transmis par une passerelle mais que le drapeau "Ne pas fragmenter" est activé, la passerelle ignorera le datagramme et renverra un message "destination inaccessible".

Maintenant, pour faire la différence entre les 2 cas distincts: Délai d'expiration de la demande signifie qu'aucun message de réponse d'écho n'a été reçu dans le délai défini. Cela peut être dû à de nombreuses causes différentes: échec de la demande ARP, congestion du réseau, filtrage des paquets, erreur de routage ou même rejet silencieux.

Lorsque vous obtenez une réponse de [adresse IP]: «Hôte de destination inaccessible», le problème s'est produit au niveau / après un routeur distant, dont l'adresse est indiquée par [l'adresse IP]. C'est donc un routeur qui vous dit qu'il y a un problème entre lui et l'adresse de destination.

Surmental
la source
3
aucun routeur ou autre périphérique ne doit être impliqué. Windows et Linux produisent tous deux "hôte inaccessible" si l'hôte est dans un sous-réseau local et qu'il n'y a pas d'entrée ARP.
Oh My Goodness
Si un hôte est inaccessible, il ne peut pas produire de réponse recevable par initiateur.
Overmind
L'hôte ping produit le message. Évidemment, la destination ne peut pas.
Oh My Goodness
Cela vient de la passerelle.
Overmind
Non. "Gateway" est une construction de couche 3. Il n'y a aucun routage, et donc aucune passerelle impliquée du tout lors du ping d'un hôte sur le sous-réseau local.
Oh My Goodness
-3

Vous ne pouvez pas ping si l'ordinateur n'est pas connecté à Internet, car en ping, vous demandez réellement l'IP de l'hôte.

Altair
la source