Maison >Java >javaDidacticiel >Pourquoi InetAddress.isReachable() de Java ne parvient-il pas à envoyer un ping aux hôtes non locaux ?

Pourquoi InetAddress.isReachable() de Java ne parvient-il pas à envoyer un ping aux hôtes non locaux ?

DDD
DDDoriginal
2024-10-26 11:35:02315parcourir

Why Does Java's InetAddress.isReachable() Fail to Ping Non-Localhost Hosts?

Dépannage de la requête Ping de Java avec InetAddress.isReachable()

Lors d'une tentative de ping sur des adresses IP à l'aide de InetAddress.isReachable() en Java, les utilisateurs peuvent rencontrer "L'hôte n'est PAS "accessable" lors du ciblage d'hôtes non-localhost. Malgré la désactivation des pare-feu, le problème persiste.

En examinant la documentation d'InetAddress.isReachable(), il s'avère qu'il utilise généralement des REQUETES d'ÉCHO ICMP, qui nécessitent souvent des privilèges root.

Résolution

Pour résoudre ce problème, il faut s'assurer qu'il possède des privilèges administratifs. Si cela n'est pas réalisable, une solution alternative consisterait à utiliser le port TCP 7 pour l'établissement de la connexion, car il ne nécessite pas d'autorisations élevées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn