Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Internet Control Message Protocol (ICMP)

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Internet Control Message Protocol (ICMP)"— Μεταγράφημα παρουσίασης:

1 Internet Control Message Protocol (ICMP)
Χαρακτηριστικά To ICMP αποτελεί μέρος του IP και κάθε υλοποίηση του IP πρέπει να το υποστηρίζει Παρέχει ανάδραση για προβλήματα που παρουσιάζονται στο ΙΡ δίκτυο Χρησιμοποιείται από το IP για την μετάδοση πληροφορίας ελέγχου σχετικά με την κατάσταση του δικτύου Χρησιμοποιείται για τη διάγνωση σφαλμάτων σε ένα IP δίκτυο και όχι για να κάνει το IP αξιόπιστο

2 ICMP Χαρακτηριστικά Συνήθως, τα ICMP μηνύματα δημιουργούνται ως απόκριση σε λαμβανόμενη ΙΡ κίνηση, είτε από ένα δρομολογητή κατά μήκος της διαδρομής είτε από τον υπολογιστή προορισμού Κάθε ICMP μήνυμα ενθυλακώνεται μέσα στο πεδίο πληροφορίας του IP πακέτου Δεν εξασφαλίζεται η αξιόπιστη μεταφορά των ICMP μηνυμάτων Προδιαγράφεται στο RFC 792

3 ICMP Μορφή Πακέτου

4 ICMP Μορφή Πακέτου Type (8bits). Καθορίζει τον τύπο του ICMP μηνύματος
Code (8bits). Συνήθως, περιέχει τον κωδικό σφάλματος που διαγνώστηκε Checksum (16bits). Άθροισμα ελέγχου όλου του ICMP μηνύματος, το οποίο χρησιμοποιείται για να επιβεβαιώσει την ορθότητα του μηνύματος Rest of the header. Χρησιμοποιείται προαιρετικά για να καθορίσει πρόσθετες παραμέτρους Data. Συνήθως περιέχει ένα τμήμα του αρχικού μηνύματος IP για το οποίο δημιουργήθηκε αυτό το μήνυμα ICMP. Το τμήμα αυτό περιλαμβάνει την ΙΡ επικεφαλίδα και τα πρώτα 64 bit από το πεδίο δεδομένων του αρχικού ΙΡ πακέτου

5 ICMP Τύποι Μηνυμάτων

6 ICMP Τύποι Μηνυμάτων ICMP Error Messages ICMP Query Μessages
Destination Unreachable Redirect Source Quench Time Exceeded Parameter Problem ICMP Query Μessages Echo Information Timestamp Address Mask Router Discovery Each of these message types will be discussed in detail in this presentation.

7 ICMP Μηνύματα Ερωτήσεων
Χρησιμοποιούνται για την άντληση πληροφοριών και τη διάγνωση προβλημάτων στο δίκτυο Το μοντέλο που ακολουθείται είναι το μοντέλο ερώτησης-απάντησης. Σε κάθε μήνυμα που στέλνει ο αποστολέας ο δέκτης αποκρίνεται με ανάλογο μήνυμα. Για π.χ. η απόκριση στο Echo Request μήνυμα είναι το Echo Reply μήνυμα Το μοντέλο αυτό είναι σε αντίθεση με το “one-way” μοντέλο των ICMP Error Messages, στο οποίο ICMP μηνύματα δεν στέλνονται ποτέ ως απάντηση σε ένα ICMP Error μήνυμα

8 Echo Request / Echo Reply
ICMP Echo Request / Echo Reply 8 16 31 8 ή 0 Code CheckSum Identifier Sequence Number ICMP Data Τα μηνύματα Echo Request και Echo Reply χρησιμοποιούνται σαν δοκιμή, για το εάν είναι δυνατή η επικοινωνία μεταξύ δύο υπολογιστών Ο παραλήπτης του Echo Request (8) αλλάζει τον τύπο του μηνύματος σε Echo Reply (0), αντιγράφει την πληροφορία του πεδίου δεδομένων (ICMP Data) στο αντίστοιχο πεδίο του Echo Reply και το στέλνει πίσω στον αποστολέα Τα πεδία identifier και sequence number χρησιμοποιούνται για τον συσχετισμό των Echo Request μηνυμάτων με τα Echo Reply μηνύματα

9 Timestamp Request / Timestamp Reply
ICMP Timestamp Request / Timestamp Reply 8 16 31 13 ή 14 Code CheckSum Identifier Sequence Number Originate Timestamp Receive Timestamp Transmit Timestamp Χρησιμοποιούνται για τη μέτρηση της καθυστέρησης μίας συγκεκριμένης διαδρομής στο δίκτυο Ο αποστολέας του Timestamp Request συμπληρώνει στο πεδίο Originate Timestamp τη χρονική στιγμή αποστολής του μηνύματος Ο παραλήπτης καταγράφει τη χρονική στιγμή λήψης του μηνύματος στη θέση Receive Timestamp

10 Timestamp Request / Timestamp Reply
ICMP Timestamp Request / Timestamp Reply 8 16 31 13 ή 14 Code CheckSum Identifier Sequence Number Originate Timestamp Receive Timestamp Transmit Timestamp Ο παραλήπτης αλλάζει τον τύπο του μηνύματος σε Timestamp Reply και το επιστρέφει στον αποστολέα. Ο παραλήπτης καταγράφει τη χρονική στιγμή αποστολής του Timestamp Reply στη θέση Transmit Timestamp Οι χρονικές στιγμές καταγράφονται σε msecs Τα πεδία identifier και sequence number χρησιμοποιούνται για τον συσχετισμό των Timestamp Request με τα Timestamp Reply

11 ICMP Μηνύματα Λάθους

12 ICMP Μηνύματα Λάθους Στέλνονται από κάποιο δρομολογητή ή τον τελικό παραλήπτη προς τον αποστολέα, όταν προκύψουν προβλήματα κατά την επεξεργασία των λαμβανομένων IP πακέτων Παράδειγμα προβλημάτων είναι όταν ένας δρομολογητής δεν μπορεί να δρομολογήσει το ΙΡ πακέτο ή δεν έχει την απαιτούμενη μνήμη για να αποθηκεύσει το ΙΡ πακέτο Ένα ICMP μήνυμα λάθους δεν στέλνεται ποτέ ως απάντηση σε ένα λαμβανόμενο ICMP μήνυμα λάθους Ένα ICMP μήνυμα λάθους μπορεί να σταλεί ως απάντηση σε ένα ICMP μήνυμα ερώτησης Δε στέλνονται ποτέ προς τον αποστολέα ενός IP πακέτου, το οποίο περιέχει ειδική διεύθυνση προορισμού (multicast ή broadcast) Το πεδίο δεδομένων του ICMP μηνύματος περιέχει την IP επικεφαλίδα και κάποια αρχικά δεδομένα του IP πακέτου που προκάλεσε το σφάλμα

13 IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου
ICMP Destination Unreachable 8 16 31 3 Code CheckSum Unused Unused IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου Στέλνεται από δρομολογητή, για να ειδοποιήσει τον αποστολέα ότι η διεύθυνση προορισμού που καθορίζεται στην επικεφαλίδα του ΙΡ πακέτου δεν είναι προσβάσιμη Στέλνεται από δρομολογητή, για να ειδοποιήσει τον αποστολέα ότι το IP πακέτο πρέπει να τμηματοποιηθεί, αλλά έχει τεθεί το bit Don’t Fragment (DF) Στέλνεται από τον τελικό παραλήπτη του ΙΡ πακέτου, για να ειδοποιήσει τον αποστολέα ότι είτε το πρωτόκολλο που καθορίζεται στο πεδίο Protocol δεν υποστηρίζεται ή η καθορισμένη UDP/TCP πόρτα δεν είναι ενεργή Το πεδίο code περιέχει τον κωδικό του λάθους

14 Destination Unreachable (Κωδικοί Λάθους)
ΙCMP Destination Unreachable (Κωδικοί Λάθους) Code Description Reason for Sending Network Unreachable No routing table entry is available for the destination network. 1 Host Unreachable Destination host should be directly reachable, but does not respond to ARP Requests. 2 Protocol Unreachable The protocol in the protocol field of the IP header is not supported at the destination. 3 Port Unreachable The transport protocol at the destination host cannot pass the datagram to an application. 4 Fragmentation Needed and DF Bit Set IP datagram must be fragmented, but the DF bit in the IP header is set.

15 IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου
ICMP Redirect 8 16 31 5 Code CheckSum Router IP address IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου Το μήνυμα αυτό στέλνεται από ένα δρομολογητή προς τον αποστολέα για να τον συμβουλεύσει για μία καλύτερη διαδρομή προς τον συγκεκριμένο προορισμό Προυπόθεση για να σταλεί το Redirect μήνυμα είναι ο αποστολέας και ο προτεινόμενος δρομολογητής να ανήκουν στο ίδιο δίκτυο

16 IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου
ICMP Source Quench 8 16 31 4 Code CheckSum Unused Unused IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου Αυτό το μήνυμα παρέχει μία στοιχειώδη μορφή ελέγχου ροής Στέλνεται από δρομολογητή, για να ειδοποιήσει τον αποστολέα ότι δεν έχει τον απαιτούμενο χώρο μνήμης για να αποθηκεύσει το ΙΡ πακέτο Στέλνεται από τον τελικό παραλήπτη, για να ειδοποιήσει τον αποστολέα ότι δεν προλαβαίνει να επεξεργαστεί τα εισερχόμενα IP πακέτα Ο δρομολογητής ή ο παραλήπτης στέλνουν ένα Source Quench μήνυμα για κάθε IP πακέτο που απορρίπτουν

17 IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου
ICMP Source Quench 8 16 31 4 Code CheckSum Unused Unused IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου Ουσιαστικά, αποτελεί μία αίτηση προς τον αποστολέα να ελαττώσει το ρυθμό μετάδοσης Ο αποστολέας πρέπει να μειώσει τον ρυθμό μετάδοσης μέχρι να σταματήσει να λαμβάνει Source Quench μηνύματα Ο αποστολέας μπορεί να αρχίσει να αυξάνει πάλι το ρυθμό μετάδοσης μέχρι να λάβει κάποιο Source Quench μήνυμα Ο δρομολογητής ή ο παραλήπτης μπορεί να στείλουν Source Quench μηνύματα όταν προσεγγιστεί η χωρητικότητα των μνημών τους, ώστε να αποφευχθεί η απόρριψη των IP πακέτων

18 IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου
ICMP Time Exceeded 8 16 31 11 Code CheckSum Unused IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου Στέλνεται από δρομολογητή, για να ειδοποιήσει τον αποστολέα ότι το IP πακέτο απορρίφτηκε γιατί το πεδίο Time-to-Live έγινε μηδέν Στέλνεται από τον τελικό παραλήπτη, που επανασυνθέτει ένα τμηματοποιημένο IP πακέτο, για να ειδοποιήσει τον αποστολέα ότι δεν μπόρεσε να τελειώσει την επανασύνθεση μέσα στο επιτρεπόμενο χρονικό περιθώριο Το πεδίο code δηλώνει τον αποστολέα του Time Exceeded μηνύματος (δρομολογητής ή παραλήπτης)

19 IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου
ICMP Parameter Problem 8 16 31 11 Code CheckSum Pointer Unused IP Header + 64 bits των αρχικών δεδομένων του ΙP πακέτου Στέλνεται από δρομολογητή ή τον τελικό παραλήπτη, για να ειδοποιήσει τον αποστολέα ότι το IP πακέτο απορρίφτηκε, επειδή παρουσιάστηκε πρόβλημα κατά την επεξεργασία των παραμέτρων της IP επικεφαλίδας Αν το πρόβλημα μπορεί να ξεπεραστεί και το ΙΡ πακέτο δεν απορριφτεί, τότε το Parameter Problem δεν στέλνεται στον αποστολέα Το πεδίο Pointer δείχνει στην λανθασμένη οκτάδα της IP επικεφαλίδας Το πεδίο code έχει τιμή 0

20 ICMP Εφαρμογή PING Χρησιμοποιείται για να διαπιστώσουμε αν είναι δυνατή η διαδικτυακή επικοινωνία και να υπολογισθεί η RTT (Round Trip Time) τιμή σε μία συγκεκριμένη διαδρομή Η εφαρμογή Ping στέλνει ένα ή περισσότερα ΙP πακέτα σε ένα συγκεκριμένο σταθμό, ζητά μία απάντηση και μετρά το χρόνο επιστροφής RTT Ο αποστολέας στέλνει ένα ICMP Echo_Request πακέτο προς τον προορισμό

21 ICMP Εφαρμογή PING Ο παραλήπτης αντιγράφει τα δεδομένα του Echo_Request πακέτου σε ένα ICMP Echo_Reply πακέτο και το στέλνει στον αποστολέα Η διαδικασία αυτή είναι υπηρεσία χωρίς σύνδεση και η ανταλλαγή των ICMP μηνυμάτων παραμένει σε επίπεδο δικτύου, αφού δεν υπάρχει TCP/UDP επίπεδο μεταφοράς Ο αποστολέας συνήθως στέλνει έναν αριθμό από ICMP Echo _Request πακέτων ώστε να υπολογίζει ένα μέσο RTT χρόνο Ο RTT χρόνος υπολογίζεται σε msecs

22 ICMP Εφαρμογή PING

23 ICMP Εφαρμογή Trace Route
Χρησιμοποιείται για την ανακάλυψη της διαδρομής που ακολουθούν τα IP πακέτα για να προσεγγίσουν τον τελικό προορισμό τους Η λειτουργία της βασίζεται στα πρωτόκολλα ICMP και UDP Αρχικά στέλνεται ένα UDP πακέτο προς τον προορισμό με TTL = 1 Ο πρώτος δρομολογητής που θα πάρει αυτό το πακέτο θα μειώσει το πεδίο TTL κατά ένα, θα απορρίψει το πακέτο και θα επιστρέψει το ICMP Time Exceeded μήνυμα στον αποστολέα Ο αποστολέας αυξάνει διαδοχικά τις τιμές του TTL και με τον τρόπο αυτόν ανακαλύπτονται τελικά όλοι οι δρομολογητές στη διαδρομή προς τον προορισμό Η λήψη ή όχι του μηνύματος ICMP Port Unreachable καθορίζει αν η UDP πόρτα προορισμού είναι ενεργή ή όχι

24 ICMP Εφαρμογή Trace Route


Κατέβασμα ppt "Internet Control Message Protocol (ICMP)"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google