Δομή IPv6 επικεφαλίδας

Η επικεφαλίδα του IPv6 είναι πολύ πιο απλή και περιεκτική σε σχέση με αυτήν της IPv4 επικεφαλίδας. Περιέχει μόνο την απαραίτητη πληροφορία που χρειάζεται προκειμένου να προωθηθεί ένα IPv6 πακέτο. Η IPv6 επικεφαλίδα έχει σταθερό μήκος 40 bytes και συνεπώς οι δρομολογητές (routers) έχουν καλύτερη απόδοση όταν θα το επεξεργαστούν. Η παρακάτω εικόνα αποτυπώνει την δομή ενός IPv6 πακέτου.

IPv6 Επικεφαλίδα
(IPv6 header)
Επέκταση επικεφαλίδας
extension header
Στοιχεία ανωτέρου επιπέδου
Upper-Layer protocol data

Δομή ενός IPv6 πακέτου


Μπορούμε να διαχωρίσουμε το IPv6 αυτοδύναμο πακέτο σε τρία κομμάτια, το πρώτο είναι η IPv6 επικεφαλίδα το δεύτερο είναι η επέκταση επικεφαλίδας και το τρίτο είναι τα στοιχεία (ή πληροφορίες) που προσθέτει το ανώτερο επίπεδο.


Πεδία IPv6 Επικεφαλίδας


  1. Έκδοση (Version): Πεδίο μήκους 4 bits το οποίο περιέχει τον αριθμό 6. Υποδεικνύει την έκδοση του IPv6 πρωτοκόλλου κι έχει μέγεθος ίδιο με αυτό του IPv4.


  2. Κλάση Κινήσεως (Traffic Class): Πεδίο μήκους 8 bit το οποίο χωρίζεται σε δύο μέρη, το πρώτο μέρος (6 bits) αφορά τον τύπο υπηρεσιών (Type of Service - TOS) προκειμένου να ενημερώσει έναν δρομολογητή για την προτεραιότητα ενός πακέτου. Τα τελευταία 2 bits χρησιμοποιούνται για ECN.


  3. Ετικέτα Ροής (Flow Label): Πεδίο μήκους 20 bits όπου παρέχει υποστήριξη για αντίστοιχες υπηρεσίες πραγματικού χρόνου (real-time) και ποιότητας υπηρεσιών. Αυτό το πεδίο αναλαμβάνει τον ρόλο ενδείξεως για ένα IPv6 πακέτο υποδεικνύοντας σε ποια ροή δεδομένων ανήκει.


  4. Μήκος Ωφέλιμου Φορτίου (Payload): Πεδίο μήκους 16 bits το οποίο υποδικνύει το μήκος του ωφέλιμου φορτίου (payload), συμπεριλαμβάνοντας τις αντίστοιχες επεκτάσεις επικεφαλίδας καθώς και τα στοιχεία που προσθέτει το ανώτερο επίπεδο.


  5. Επόμενη Κεφαλίδα (Next Header): Πεδίο μήκους 8 bits το οποίο υποδεικνύει τον τύπο της πρώτης επέκτασης (αν κι εφόσον υπάρχει κάποια επέκταση στο αντίστοιχο IPv6 αυτοδύναμο πακέτο) ή το πρωτόκολλο του ανωτέρου επιπέδου όπως το TCP, UDP ή ICMPv6.


  6. Όριο Αλμάτων (Hop Limit): Πεδίο μήκους 8 bits το οποίο υποδεικνύει μέγιστο αριθμό των δρομολογητών (routers) από το οποίο μπορεί να περάσει ένα IPv6 αυτοδύναμο πακέτο. Αυτό το πεδίο είναι παρόμοιο με το αντίστοιχο πεδίο χρόνου ζωής (Time-To-Live - TTL) που υπάρχει στην IPv4 επικεφαλίδα.


  7. Διεύθυνση Πηγής IPv6 (Source IPv6 Address): Πεδίο μήκους 128 bits το οποίο περιέχει την IPv6 διεύθυνση πηγής.


  8. Διεύθυνση Προορισμού IPv6 (Destination IPv6 Address): Πεδίο μήκους 128 bits το οποίο περιέχει την IPv6 διεύθυνση προορισμού.



Δομή IPv6 επικεφαλίδας

Κεφαλίδες επέκτασης του IPv6


Το πεδίο επίλογών της IPv4 επικεφαλίδας χρησιμοποιείται για να μεταφερθεί κάποια αντίστοιχη πληροφορία σε ένα IP πακέτο ή τον τρόπο με τον οποίο αυτό θα πρέπει να επεξεργαστεί από τον δρομολογητή. Οι δρομολογητές όταν λάβουν ένα IP πακέτο οφείλουν να εξετάσουν την IPv4 επικεφαλίδα και συγκεκριμένα το πεδίο επιλογών της IPv4 επικεφαλίδας. Αυτό μας οδηγεί σε καθυστερήσεις και συνεπώς επηρεάζει την επίδοση ενός δικτύου. Το πεδίο επιλογών στην IPv4 επικεφαλίδα παίζει σημαντικό ρόλο στην λειτουργία του IP πρωτοκόλλου και συνεπώς οι δυνατότητες του πρέπει να διατηρηθούν και στο IPv6. Όμως, από την άλλη μεριά, το πεδίο επιλογών επηρεάζει πολύ σημαντικά την επίδοση ενός δικτύου κάτι το οποίο οι σχεδιαστές του IPv6 έλαβαν υπόψιν τους. Η λειτουργία του πεδίου επιλογών δεν υπάρχει στην IPv6 επικεφαλίδα και εφαρμόστηκε ένα σύνολο από αντίστοιχες επικεφαλίδες οι οποίες καλούνται ως επεκτάσεις επικεφαλίδας.


Οι επεκτάσεις επικεφαλίδας τοποθετούνται σε διαδοχική σειρά δημιουργώντας έτσι μια συνδεδεμένη λίστα όπως αποτυπώνεται και στο παρακάτω σχήμα:





Διαδοχική σειρά των επεκτάσεων κεφαλίδας στην IPv6 επικεφαλίδα






Διαδοχική σειρά των επεκτάσεων κεφαλίδας στην IPv6 επικεφαλίδα






Σύνδεση IPv6 επεκτάσεων επικεφαλίδας με χρήση του πεδίου επόμενης κεφαλίδας






IPv6 πακέτο με επεκτάσεις κεφαλίδας


Ο παρακάτω πίνακας περιγράφει όλες τις επεκτάσεις κεφαλίδας του IPv6:





Τύπος
Επικεφαλίδας
Επόμενος κωδικός
κεφαλίδας

Περιγραφή
Βασική IPv6
επικεφαλίδα

----

----
Επιλογές
Hop-by-Hop

0
Χρήσιμες πληροφορίες για τους ενδιάμεσους δρομολογητές από τους οποίους θα περάσει το πακέτο
Επιλογές προορισμού
(με επιλογές δρομολόγησης)

60
Πρόσθετες πληροφορίες που μπορεί να χρειαστούν όταν το πακέτο φτάσει στον τελικό προορισμό του
Δρομολόγησης
43
Μέθοδοι που ορίζουν την διαδρομή που θα ακολουθήσει ένα πακέτο
Κατακερματισμού
44
Περιέχει διάφορες παραμέτρους για τον κατακερματισμό των αυτοδύναμων πακέτων (datagrams).
Πιστοποίησης
ταυτότητας

51
Περιέχει χρήσιμη πληροφορία για την επαλήθευση της αυθεντικότητας του αποστολέα
Ασφαλούς ενθυλάκωσης
ωφέλιμου φορτίου

50
Περιέχει χρήσιμη πληροφορία για την επαλήθευση της αυθεντικότητας του αποστολέα
Επιλογές
προορισμού

60
Πρόσθετες πληροφορίες που μπορεί να χρειαστούν όταν το πακέτο φτάσει στον τελικό προορισμό του
Επικεφαλίδα
φορητότητας

135
Παράμετροι που χρησιμοποιούνται στο Mobile IPv6.
Καμία επικεφαλίδα
59

----

Επεκτάσεις κεφαλίδας στο IPv6




1 Βασική IPv6 επικεφαλίδα
2 Επιλογές Hop-by-Hop
3 Επιλογές προορισμού (με επιλογές δρομολόγησης) *1
4 Δρομολόγησης
5 Κατακερματισμού
6 Πιστοποίησης ταυτότητας
6 Πιστοποίησης ταυτότητας
7 Ασφαλούς ενθυλάκωσης ωφέλιμου φορτίου
8 Επιλογές προορισμού *2
9 Επικεφαλίδα φορητότητας

Ιεραρχική σειρά των IPv6 κεφαλίδων επέκτασης


Οι σημειωμένες (με κόκκινο) επικεφαλίδες του πίνακα:

  1. Επεξεργάζονται από τον αρχικό κόμβο και τους ενδιάμεσους κόμβους

  2. Επεξεργάζονται μόνο από τον τελικό προορισμό


Κεφαλίδες επέκτασης του IPv6


  • Επικεφαλίδα Hop-by-hop και επιλογής προορισμού: Η επικεφαλίδα επιλογών Hop-by-Hop ελέγχεται από όλους τους κόμβους από τους οποίους θα περάσει το IPv6 πακέτο, ενώ η επικεφαλίδα επιλογής προορισμού ελέγχεται μόνο από την συσκευή του παραλήπτη. Και οι δύο αυτές επεκτάσεις επικεφαλίδας έχουν μέγεθος 8 bytes.


Δομή κεφαλίδας και hop-by-hop επιλογής προορισμού





Όνομα
υποπεδίου
Μήκος
(σε bytes)

Περιγραφή
Τύπος
επιλογής
1 byte Αυτό το πεδίο υποδεικνύει τον τύπο επιλογής. Ο παρακάτω πίνακας δείχνει τις τιμές αυτού του πεδίου:
  1. Ενέργεια μη αναγνωρισμένης επιλογής (2-bits): Τα πρώτα δύο bits υποδικνύουν ποία ενέργεια πρέπει να παρθεί αν μια συσκευή δεν αναγνωρίζει κάποιον τύπο επιλογής. Υπάρχουν 4 τιμές οι οποίες είναι:

    • 00: Επιλογή παράλειψης, επεξεργασίας της υπόλοιπης επικεφαλίδας

    • 01: Απόρριψη αυτόδυναμου πακέτου

    • 10: Απόρριψη αυτοδύναμου πακέτου και στείλε ICMP μήνυμα με κωδικό 2 (Parameter problem message) πίσω στην πηγή απ' όπου ήρθε

    • 11: Απέρριψε το πακέτο και στείλε ένα ICMP μήνυμα (όπως το παραπάνω) αν ο προορισμός δεν έχει Multicast διεύθυνση


  2. Ένδειξη αλλαγής επιλογής (1-bit): Θα πάρει την τιμή 1 αν η επιλογή δεδομένων μπορεί να αλλάξει την στιγμή που στέλνεται το πακέτο. Σε διαφορετική περίπτωση θα πάρει την τιμή 0.


  3. Υπενθύμιση του τύπου επιλογής (5-bits): Πέντε τελευταία bits τα οποία επιτρέπουν τον ορισμό 32 διαφορετικών συνδυασμών για κάθε συνδυασμό των τριών bits παραπάνω
Μήκος επιλογής
δεδομένων
1 byte Ορίζει το μήκος της επιλογής δεδομένων.
Επιλογή
δεδομένων
Μεταβαλλόμενο Τα δεδομένα που πρόκειται να σταλθούν ως μέρος της επιλογής (όπου προφανώς αυτή ορίζει)


Δομή IPv6 επιλογών



  • Κεφαλίδα δρομολόγησης: Η κεφαλίδα δρομολόγησης χρησιμοποιείται για να κατευθύνει ένα πακέτο σε έναν ή περισσότερους ενδιάμεσους κόμβους πρώτού αυτό σταλθεί προς τον τελικό του προορισμό. Μπορούμε να πούμε ότι είναι παρόμοιο με την χαλαρή δρομολόγηση που γίνεται στο IPv4 όπου κάθε πακέτο οφείλει να περάσει από ένα σύνολο δρομολογητών προκειμένου αυτό να φτάσει στον τελικό του προορισμό. Η μορφή της επικεφαλίδας αποτυπώνεται στην παρακάτω εικόνα:


  • Δομή κεφαλίδας επέκτασης δρομολόγησης



    • Τα πεδία επόμενης κεφαλίδας και μήκους κεφαλίδας είναι ίδια ακριβώς με τις κεφαλίδες hop-by-hop και επιλογής προορισμού. Μετέπειτα έχουμε το πεδίο τύπου δρομολόγησης όπου ορίζει διάφορους τύπους δρομολόγησης, προς το παρόν οι τιμές που παίρνει είναι οι 0, 1 και 2.


    • Η τιμή 0 δεν χρησιμοποιείται στους home routers καθότι είναι επιρρεπής σε επιθέσεις DoS. Η τιμή 1 χρησιμοποιείται στον αλγόριθμο δρομολόγησης Nimrod που σχεδιάστηκε από την DARPA. Η τιμή 2 χρησιμοποιείται για mobile IPv6 αρχιτεκτονικές.


    • Το πεδίο υπόλοιπων τμημάτων ορίζει τον αριθμό των συγκεκριμένων κόμβων που έχουν απομείνει έως ότου το IPv6 πακέτο φτάσει στον τελικό του προορισμό.


    • Το πεδίο δεσμευμένο (reserved) δεν χρησιμοποιείται και παίρνει την τιμή 0.


    • Το τελευταίο πεδίο αφορά το σύνολο των IPv6 διευθύνσεων που ορίζουν την διαδρομή του πακέτου.


  • Κεφαλίδα Κατακερματισμού: Η επέκταση κεφαλίδας κατακερματισμού περιέχεται στα κατακερματισμένα αυτοδύναμα πακέτα έτσι ώστε να μπορέσουν όταν φτάσουν στον παραλήπτη να ανασυναρμολογηθούν καταλλήλως. Συνεπώς περιέχει χρήσιμη πληροφορία η οποία βοηθάει στην επανασυναρμολόγηση ενός κατακερματισμένου αυτοδύναμου πακέτου.



  • Δομή κεφαλίδας κατακερματισμού



    • Το πεδίο επόμενης κεφαλίδας περιέχει τον αριθμό πρωτοκόλλου της επόμενης κεφαλίδας που ακολουθεί μετά από την κεφαλίδα κατακερματισμού. Χρησιμοποιείται για να συνδέσει τις διάφορες επικεφαλίδες μεταξύ τους.


    • Το πεδίο δεσμευμένο δεν χρησιμοποιείται και παίρνει την τιμή 0. Το πεδίο κατακερματισμένων τμημάτων υποδηλώνει τον αριθμό του τμήματος από το συνολικό κατακερματισμένο μήνυμα Το πεδίο Res δεν χρησιμοποιείται και συνεπώς παίρνει την τιμή 0. Το πεδίο Mflag αποτελεί πεδίο ένδειξης, δηλαδή αν το πεδίο αυτό έχει την τιμή 1 τότε σημαίνει πως μετά από αυτό θα έρθουν κι άλλα τμήματα. Όταν έχει την τιμή 0 τότε πρόκειται για το τελευταίο τμήμα.


    • Τέλος το πεδίο του αναγνωριστικού περιέχει μια συγκεκριμένη τιμή η οποία είναι παρόμοια σε κάθε τμήμα. Αυτό το πεδίο ουσιαστικά μαρκάρει κάθε πακέτο μιας συγκεκριμένης ροής δεδομένων έτσι ώστε αυτά να μην μπερδευτούν με άλλα αντίστοιχα πακέτα από διαφορετικές ροές.






Κωδικός Πρωτόκολλο/
κεφαλίδα

Περιγραφή
0 HBH Hop-by-Hop κεφαλίδα
1 ICMP Internet Control Message Protocol
2 IGMP Internet Group Management
3 GGP Gateway-to-Gateway Protocol
4 IP Internet Protocol
5 ST Steam
6 TCP Transmission Control Protocol
8 EGP Exterior Gateway Protocol
9 IGP Any private interior gateway
16 CHAOS Chaos
17 UDP User Datagram Protocol
29 ISO-TP4 ISO Transport Protocol Class 4
43 RH Κεφαλίδα δρομολόγησης
44 FH Κεφαλίδα κατακερματισμού
45 IDPR Inter-Domain Routing Protocol
46 RSVP Reservation Protocol
50 ESP Encapsulating Security Payload
51 AH Κεφαλίδα πιστοποίησης ταυτότητας
58 ICMPv6 Internet Control Message
59 NULL Καμία κεφαλίδα
60 DOH Κεφαλίδα επιλογής προορισμού
80 ISO-IP ISO Internet Protocol
88 IGRP Interior Gateway Routing Protocol
89 OSPF Open Shortest Path First
93 AX.25 AX.25 Frames


Πιθανές τιμές του πεδίου επόμενης κεφαλίδας



Ασφάλεια (IPsec) στο IPv6: Κεφαλίδες κρυπτογράφησης


Το IPsec ορίζει ασφάλεια σε επίπεδο κρυπτογράφησης τόσο για το IPv4 όσο και για το IPv6. Το IPsec είναι προαιρετικό στο IPv4 ενώ στο IPv6 υπάρχει ενσωματωμένος μηχανισμός. Το IPv6 παρέχει δύο κεφαλίδες ασφάλειας που μπορούν να χρησιμοποιηθούν είτε ξεχωριστά είτε ενιαία. Η πρώτη κεφαλίδα είναι η κεφαλίδα πιστοποίησης ταυτότητας και η δεύτερη είναι η κεφαλίδα ασφαλούς ενθυλάκωσης ωφέλιμου φορτίου (ESP) που χρησιμοποιείται κατά την διάρκεια της σύνδεσης με ανταλλαγή κλειδιών ασφαλείας.




Δομή κεφαλίδας πιστοποίησης ταυτότητας






Δομή κεφαλίδας ασφαλούς ενθυλάκωσης ωφέλιμου φορτίου (ESP)





Κεφαλίδες κρυπτογράφησης του IPv6
Κεφαλίδα πιστοποίησης
ταυτότητας
Κεφαλίδα ασφαλούς ενθυλάκωσης
ωφέλιμου φορτίου (ESP)
Παρέχει τα εξής στοιχεία:
  • Ακεραιότητα δεδομένων και προστασία ενάντια σε συνεχές επιθέσεις.

  • Γίνεται χρήση του πεδίου ελέγχου τιμής ακεραιότητας (Integrity Check Value - ICV) για να διασφαλίσει την ακεραιότητα των δεδομένων. Το ICV υπολογίζεται πάνω στο ωφέλιμο φορτίο και την επικεφαλίδα του IPv6 πακέτου.

  • Δεν παρέχει όμως εμπιστευτικότητα για τα περιεχόμενα του πακέτου.

Παρέχει τα εξής στοιχεία:

  • Ακεραιότητα δεδομένων,

  • Προστασία ενάντια σε συνεχές επιθέσεις,

  • Περιορισμένη εμπιστευτικότητα όσων αφορά την ροής κινήσεως των πακέτων.



Σύγκριση IPv4 και IPv6 επικεφαλίδων



IPv4 και IPv6 επικεφαλίδες



  1. Η IPv6 επικεφαλίδα είναι πολύ πιο απλή σε σχέση με την IPv4 επικεφαλίδα

  2. Το μήκος της IPv6 επικεφαλίδας είναι πολύ μεγαλύτερο από αυτό της IPv4 επικεφαλίδας, προφανώς λόγω του μεγέθους των IPv6 διευθύνσεων. Οι IPv4 διευθύνσεις είναι μήκους 32 bit και οι IPv6 διευθύνσεις είναι μήκους 128 bits.

  3. Η IPv4 επικεφαλίδα περιέχει το πεδίο επιλογών όμως στο IPv6 δεν υπάρχει αντίστοιχο πεδίο. Μπορούμε να πούμε ότι την διαδικασία αυτή στο IPv6 την αναλαμβάνουν οι επεκτάσεις επικεφαλίδας.

  4. Τα πεδία μήκος επικεφαλίδας, αναγνωριστικού και σημαίες της IPv4 επικεφαλίδας δεν υπάρχουν στο IPv6.

  5. Το πεδίο χρόνου ζωής (TTL) της IPv4 επικεφαλίδας που χρησιμοποιείται για την αποφυγή routing loop, στο IPv6 έχει αντιστοιχηθεί με το πεδίο ορίου άλματος (hop limit)




Τελευταία ενημέρωση 29/04/2018





Follow us

 ☰