1 - Consulter la rfc qui décrit le protocole ICMP,
2 - Cherchez le passage sur "echo-request" et "echo-reply",
3 - Quel est le type et le code pour un "echo-request" ?
4 - Quelle sont les différents chmps à renseigner ?
5 - Afin de simplifier le programme, vous allez commencer par définir un buffer de la manière suivante : unsigned char paquetout[64];
6 - Vous allez initialiser ce buffer avec des 0, à l'aide de la fonction memset,
7 - Remplissez maintenant les seuls champs qui nous intéressent : le type et le checksum,
8 - Modifiez le type de socket par SOCK_RAW, quelle doit être la valeur du champ protocole ? (voir /etc/protocols),
9 - Envoyez ce paquet à l'aide de la primitive sendto,
10 - Récupérer maintenant la réponse à
l'aide de la primitive recvfrom, quelle est la taille du paquet
reçu ?
11 - Affichez les informations reçues à raison de 4 octets par lignes,
12 - Analysez en détail la réponse,
13 - Effectuez maintenant une boucle d'émission/réception,