Με την τεράστια ανάπτυξη του διαδικτύου τα τελευταία χρόνια, την εισαγωγή καθημερινά πολλών νέων χρηστών παγκοσμίως και την υποστήριξη ευρυζωνικής σύνδεσης από μεγάλη γκάμα σταθερών και φορητών συσκευών, τα επόμενα χρόνια θα υπάρχει πρόβλημα για την ικανοποίηση όλων αυτών των αναγκών, λόγω της εξάντλησης των ελεύθερων IP διευθύνσεων τύπου IPv4.
Το IPv6 είναι η επόμενη έκδοση του Internet Protocol (Internet protocol version 6) και σχεδιάστηκε ώστε να βοηθήσει στην αντιμετώπιση του προβλήματος εξάντλησης των IPv4 διευθύνσεων, αλλά και για να βελτιώσει την τρέχουσα έκδοση του πρωτοκόλλού IP.
Με τη χρήση του IPv6 οι διαθέσιμες IP διευθύνσεις αυξάνονται κατά πολύ, αφού πλέον η IP διεύθυνση έχει μέγεθος 128 bits, αντί των 32 bits της IPv4 διεύθυνσης.
Κάποια από τα σημαντικά χαρακτηριστικά/οφέλη του IPv6 είναι:
1. Μεγαλύτερο εύρος διευθύνσεων: Από 2 υψωμένο στην δύναμη 32 σε 2 εις την 128.
2. Ιεραρχική διευθυνσιοδότηση για πιο αποδοτική δρομολόγηση.
3. Περισσότερες δυνατότητες στην αυτόματη ρύθμιση συσκευών κατά τη σύνδεση στο δίκτυο (Stateless / Statefull address configuration).
4. Καλύτερη υποστήριξη μετακινούμενων συσκευών/χρηστών.
5. Ευκολότερη επεκτασιμότητα.
Πλέον με το IPv6, κάθε τερματική συσκευή, σταθερή ή φορητή, αποκτά μοναδική IP διεύθυνση και μπορεί να επικοινωνήσει απευθείας με οποιαδήποτε τερματική συσκευή που έχει σύνδεση σε δημόσιο IPv6 δίκτυο.
Στο πρωτόκολλο IPv6 η διεύθυνση αποτελείται από 128 δυαδικά ψηφία (bits), αλλά προκειμένου η αναπαράσταση να είναι πιο εύκολη, η διεύθυνση παριστάνεται από οκτώ πεδία των τεσσάρων δεκαεξαδικών ψηφίων (16 bits), τα οποία χωρίζονται μεταξύ τους με την άνω-κάτω τελεία.
Παράδειγμα: 2a02:0580:8000:0700:e989:9a70:fd48:13ae .
Για την ευκολότερη αναπαράσταση των IPv6 διευθύνσεων υπάρχουν οι παρακάτω κανόνες.
1. Τα γράμματα είναι case-insensitive
2. Μηδενικά που προηγούνται άλλων ψηφίων σε ένα πεδίο είναι προαιρετικά
3. Συνεχόμενα πεδία που περιέχουν μηδενικά μπορούν να αντικατασταθούν με δυο συνεχόμενες άνω-κάτω τελείες “::” (μία φορά μόνο σε κάθε διεύθυνση).
Με βάση τους παραπάνω κανόνες, οι 2 επόμενες IPv6 διευθύνσεις είναι ισοδύναμες:
2Α02:0580:8000:0000:0A9C:0000:0000:AC2B
2a02:580:8000:0:a9c::ac2b
Παραθέτω μία υλοποίση σε Debian ή Ubuntu με tunnelbrokers (βασικά είναι υπηρεσίες ελεύθερες στο διαδύκτιο που παρέχουν IPv4-to-IPv6 tunnels.
Στο παράδειγμα θα χρησιμοποιήσω το πρόγραμμα client tcsp το οποίο υπάρχει στα αποθετήρια των περισσότερων διανομών σε συνδιασμό με το ΕΔΕΤ (ΕΘΝΙΚΟ ΔΙΚΤΥΟ ΕΡΕΥΝΑΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ) το το ποίο θα λειτουργήσει σαν tunnel.
Ως χρήστηs root :
Code:
apt-get install tspc
Μετά θα πρέπει να γίνει επεξεργασία αρχείου /etc/tsp/tspc.conf και να βρούμε την γραμμή :
και να την αλλάξουμε σε :
Εφαρμόζουμε τις αλλαγές:
Code:
dpkg --configure -a
Θα δημιουργηθεί μία διεπαφή (interface) tun με την IPv6 που μας έχει αποδωθεί:
Code:
root@ubuntu:/# ifconfig
eth0 Link encap:Ethernet HWaddr 00:01:2e:bc:4a:93
inet addr:xx.xx.xx.xx Bcast:xx.xx.xx.xx Mask:255.255.255.0
inet6 addr: xxxx::xxxx:xxxx:xxxx:xxxxx/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:293746 errors:0 dropped:0 overruns:0 frame:0
TX packets:229676 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:303360374 (303.3 MB) TX bytes:26393829 (26.3 MB)
Interrupt:43 Base address:0x4000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:614 errors:0 dropped:0 overruns:0 frame:0
TX packets:614 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:19844 (19.8 KB) TX bytes:19844 (19.8 KB)
tun Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet6 addr: 2001:xxxx:xxxx:xxxx::xxxx/128 Scope:Global
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1280 Metric:1
RX packets:8809 errors:0 dropped:0 overruns:0 frame:0
TX packets:9010 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:3686439 (3.6 MB) TX bytes:1062936 (1.0 MB)
Kάνουμε test :
Code:
root@ubuntu:/# ping6 ipv6.google.com
PING ipv6.google.com(ww-in-x68.1e100.net) 56 data bytes
64 bytes from ww-in-x68.1e100.net: icmp_seq=1 ttl=49 time=93.0 ms
64 bytes from ww-in-x68.1e100.net: icmp_seq=2 ttl=49 time=93.7 ms
64 bytes from ww-in-x68.1e100.net: icmp_seq=3 ttl=49 time=93.6 ms
Ο mozilla firefox έχει απο default activated IPv6 οπότε μπορούμε να επισκευτούμε οποιαδήποτε σελίδα που είναι "στημένη" πάνω σε αυτό (πχ ipv6.google.com)