IP Protocol: IPv4, Διευθύνσεις και Βασικές Έννοιες
Το Internet Protocol (IP) είναι το πρωτόκολλο του επιπέδου Διαδικτύου στο μοντέλο TCP/IP. Παρέχει λογική διευθυνσιοδότηση και μεταφέρει πακέτα από ένα δίκτυο σε άλλο μέσω routers. Οι δύο βασικές εκδόσεις του είναι το IPv4 και το IPv6.
IPv4: Διευθύνσεις 32 bit
Μια διεύθυνση IPv4 αποτελείται από 32 bits και εμφανίζεται συνήθως ως τέσσερις δεκαδικοί αριθμοί (octets) από 0 έως 255, χωρισμένοι με τελείες. Παράδειγμα: 192.168.1.10. Το πρόθεμα CIDR, όπως /24, καθορίζει πόσα bits ανήκουν στο network prefix.
Network, Host και Broadcast
Σε ένα συνηθισμένο IPv4 subnet, η network address προσδιορίζει το υποδίκτυο, οι host addresses χρησιμοποιούνται για την αρίθμηση διεπαφών και η directed broadcast address απευθύνεται σε όλους τους hosts του συγκεκριμένου subnet. Υπάρχουν εξαιρέσεις, όπως τα /31 point-to-point links και τα /32 host routes. Δεν χρησιμοποιούμε πλέον τις παλιές κλάσεις A/B/C για τον σύγχρονο σχεδιασμό· χρησιμοποιείται CIDR.
Ιδιωτικές και ειδικές IPv4 διευθύνσεις
| Εύρος | Χρήση |
|---|---|
| 10.0.0.0/8 | Ιδιωτικές διευθύνσεις RFC 1918. |
| 172.16.0.0/12 | Ιδιωτικές διευθύνσεις RFC 1918. |
| 192.168.0.0/16 | Ιδιωτικές διευθύνσεις RFC 1918. |
| 127.0.0.0/8 | Loopback, με συνηθισμένη διεύθυνση την 127.0.0.1. |
| 169.254.0.0/16 | Link-local IPv4 (APIPA στα Windows). |
| 100.64.0.0/10 | Shared address space, συχνά για carrier-grade NAT. |
| 224.0.0.0/4 | Multicast. |
Δομή IPv4 Header
Η ελάχιστη κεφαλίδα IPv4 έχει μέγεθος 20 bytes και μπορεί να φτάσει τα 60 bytes όταν υπάρχουν options. Περιλαμβάνει πληροφορίες που χρειάζονται για την προώθηση και τον χειρισμό του πακέτου.
| Πεδίο | Λειτουργία |
|---|---|
| Version | Έκδοση IP, τιμή 4. |
| IHL | Μήκος κεφαλίδας σε μονάδες 32-bit words. |
| DSCP / ECN | Ταξινόμηση υπηρεσίας και ειδοποίηση συμφόρησης. |
| Total Length | Συνολικό μήκος header και payload σε bytes. |
| Identification, Flags, Fragment Offset | Πληροφορίες κατακερματισμού IPv4. |
| TTL | Μειώνεται σε κάθε router και αποτρέπει ατέρμονους βρόχους. |
| Protocol | Δηλώνει το πρωτόκολλο ανώτερου επιπέδου, π.χ. TCP ή UDP. |
| Header Checksum | Έλεγχος ακεραιότητας της κεφαλίδας IPv4. |
| Source / Destination Address | IPv4 διευθύνσεις αποστολέα και προορισμού. |
Το IPv4 χρησιμοποιεί best-effort delivery: δεν εγγυάται από μόνο του παράδοση, σειρά ή επαναμετάδοση. Αυτές οι λειτουργίες, όταν χρειάζονται, παρέχονται από ανώτερα πρωτόκολλα, όπως το TCP.
IPv6: Διευθύνσεις 128 bit
Το IPv6 χρησιμοποιεί διευθύνσεις 128 bit, οι οποίες γράφονται σε δεκαεξαδική μορφή με οκτώ ομάδες των 16 bit. Επιτρέπεται η αφαίρεση αρχικών μηδενικών και η συμπίεση μίας συνεχόμενης ακολουθίας μηδενικών με :: μία φορά σε κάθε διεύθυνση.
- Global Unicast: διευθύνσεις που μπορούν να δρομολογηθούν παγκοσμίως.
- Link-Local: εύρος
fe80::/10, για επικοινωνία στο τοπικό link. - Unique Local: εύρος
fc00::/7, για ιδιωτική χρήση. - Multicast: εύρος
ff00::/8. - Loopback:
::1.
Το IPv6 δεν χρησιμοποιεί broadcast. Χρησιμοποιεί multicast και anycast, ενώ η ανακάλυψη γειτόνων γίνεται μέσω Neighbor Discovery Protocol (NDP) και ICMPv6. Η αυτόματη διαμόρφωση μπορεί να γίνει με SLAAC ή/και DHCPv6, ανάλογα με το δίκτυο.
IPv4 και IPv6: βασικές διαφορές
| Χαρακτηριστικό | IPv4 | IPv6 |
|---|---|---|
| Μήκος διεύθυνσης | 32 bit | 128 bit |
| Αναπαράσταση | Δεκαδική με τελείες | Δεκαεξαδική με άνω και κάτω τελείες |
| Broadcast | Υποστηρίζεται | Δεν χρησιμοποιείται |
| Neighbor resolution | ARP | NDP μέσω ICMPv6 |
| Header checksum | Υπάρχει | Δεν υπάρχει στο βασικό IPv6 header |
| Fragmentation | Μπορεί να γίνει από routers και hosts | Από τον αποστολέα, με Fragment extension header |
Υποδικτύωση και επόμενα βήματα
Η υποδικτύωση (subnetting) χωρίζει ένα δίκτυο σε μικρότερα υποδίκτυα με χρήση subnet masks και CIDR prefixes. Για αναλυτικά παραδείγματα υπολογισμού network address, broadcast και διαθέσιμων hosts, δες τον οδηγό Subnetting IPv4.
Χρήσιμες εντολές ελέγχου IP
Windows
ipconfig
ipconfig /all
ping 192.168.1.1
tracert example.com
Linux
ip address
ip route
ip -6 address
ping -c 4 192.168.1.1
traceroute example.com