Κυριακή 3 Φεβρουαρίου 2013

Αργό INTERNET; Απενεργοποιείστε το IPv6



“Τι είναι το IPv6;” θα ήταν μία ερώτηση αρκετών από εσάς που διαβάζετε αυτό το άρθρο, ο σκοπός του οποίου δεν είναι η ανάλυση του Internet και των πρωτοκόλλων του, αλλά να σας προβληματίσει με κάτι που ίσως δεν είχε περάσει από το μυαλό σας μέχρι σήμερα. Μη θέλοντας να μπούμε σε δύσκολες τεχνικές/δικτυακές έννοιες, με πολύ απλά λόγια θα λέγαμε ότι το IPv6 είναι το πρωτόκολλο της νέας γενιάς του Internet, το οποίο έρχεται να δώσει λύσεις στο σημερινό πρωτόκολλο IPv4. Πρακτικά, το IPv4 μας λέει ότι μπορείτε να χρησιμοποιήσετε μέχρι 4.294.967.296 διευθύνσεις — νούμερο τεράστιο μα … αργά ή γρήγορα, φαίνεται ότι θα το φτάσουμε. Συνεπώς, οι επιστήμονες σκέφτηκαν, μελέτησαν, έφτιαξαν και δημιούργησαν ένα νέο πρωτόκολλο Internet — το IPv6 — του οποίου οι διευθύνσεις θα τελειώσουν μαζί με το τέλος του κόσμου (ελπίζω όχι το 2012). Μιλώντας με αριθμούς, οι διευθύνσεις που παρέχει το IPv6 είναι 34, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000, 000 , 000 ή αλλιώς 340-ενδεκάκις εκατομμύρια!
Το πρόβλημα είναι ότι βρισκόμαστε σε περίοδο μετάβασης από το IPv4 στο IPv6, με αποτέλεσμα αρκετοί πάροχοι Internet (βλ OTE, Forthnet, Cyta, HOL κλπ) να μην έχουν ακόμα τον απαιτούμενο εξοπλισμό για να υποστηρίξουν σωστά το IPv6. Τα περισσότερα modem/routers που πωλούνται στην αγορά λειτουργούν με βάση το IPv4, ενώ λίγα και ακριβά υιοθετούν την υλοποίηση IPv6. Αυτό έχει ως αποτέλεσμα να μην παίζει κανένας (Ελληνας) σωστά το IPv6. Συνεπώς αλλοι έχουν προβλήματα και άλλοι όχι… (μπορείτε να το δοκιμάσετε εδώ)
Το Linux έρχεται πλέον με προ εγκατεστημένα modules για IPv6, τα οποία φορτώνουν από το πρώτο κι ολας boot από default. Το συνήθης πρόβλημα είναι πώς αρκετοί χρήστες διαπιστώνουν αργό browsing και έτσι καταφεύγουν στο να κλείσουν το IPv6 του Firefox (about:config). Αυτό όμως δεν σημαίνει ότι έχουν κλείσει την υποστήριξη IPv6 για το υπόλοιπο σύστημα, με αποτέλεσμα να διορθώνουν το browsing του Firefox, αλλά οποιοδήποτε άλλο TCP/IP handshake -πλην του Firefox- να παραμένει αργό. Ψάχνοντας στο Google θα βρείτε διάφορους οδηγούς που σας προτρέπουν να κλείσετε εντελώς το IPv6 από το σύστημά σας. Αν λοιπόν κλείσατε το IPv6 στον Firefox και η ταχύτητά σας αυξήθηκε αισθητά, τότε ΝΑΙ, εσείς έχετε πρόβλημα με το IPv6 και σας καθυστερεί στο Internet. Όσοι πάλι δεν είδατε σημαντική διαφορά, δεν έχει νόημα να συνεχίσετε την ανάγνωση του παρόντος άρθρου, αφού είστε οι τυχεροί της υπόθεσης :)
Αν λοιπόν αρχίσατε ήδη το safari αναζήτησης στο google για το “πώς να απενεργοποιήσω το IPv6” τότε είστε σε καλό δρόμο. Δυστυχώς υπάρχει αστάθεια στην Δύναμη, με αποτέλεσμα οι περισσότεροι guides/how-to να δίνουν συμβουλές που σχετίζονται με το blacklisting των ipv6 modules στο /etc/modprobe.d/ directory κάτι το οποίο δεν βοηθάει ιδιαίτερα αφού με ένα απλό request το module επαν-ενεργοποιείται. Αν πάλι βάλετε alias τότε τα πράγματα είναι κάπως καλύτερα αλλά και πάλι δεν σώνετε την κατάσταση. Ο πιο “ας πούμε” καλός τρόπος που θα βρείτε είναι να ξεγελάσετε το σύστημα, δηλαδή όταν γίνει request για ipv6, αντί να ενεργοποιηθεί το module, να εκτελεσθεί στην θέση του η εντολή /bin/true — που δεν κάνει τίποτα. Και πάλι όμως, αν τα κάνετε όλα αυτά σήμερα με τα Ubuntu 11.04, Fedora 15 και OpenSuSE 11.4, αμφιβάλλω αν καταφέρετε να πάρετε μηδενική απάντηση δίνοντας την εντολή “lsmod | grep ipv6“. Δυστυχώς δεν υπάρχει πλέον καθολική ρύθμιση απενεργοποίησης του IPv6 (ενώ παλαιότερα υπήρχε και λειτουργούσαν οι παραπάνω τρόποι), συνεπώς όσο σας επιστρέφει αποτέλεσμα η εντολή “lsmod | grep ipv6” τότε δεν έχετε καταφέρει απολύτως ΤΙΠΟΤΑ.
Για παράδειγμα, έστω ότι έχετε απενεργοποιήσει κάποια από τα modules του ipv6, τα οποία δεν τα βλέπετε πλέον ενεργά δίνοντας lsmod. Δοκιμάστε να τρέξετε τον Firefox χωρίς να του απενεργοποιήσετε το IPv6. Τι παρατηρείτε; Ότι έγινε ξανά αργός όπως το πρώτο boot. Αν είχατε όντως απενεργοποιήσει το IPv6 καθολικά, τότε ο Firefox είτε τον ρυθμίζατε να χρησιμοποιεί IPv4 είτε IPv6, αυτός θα χρησιμοποιούσε εν τέλη IPv4.
Ο μόνος τρόπος που είναι αποτελεσματικός 100% και δουλεύει, είναι να πείτε στον πυρήνα kernel να μην φορτώσει εξαρχής το IPv6 module. Για να το κάνετε αυτό θα πρέπει να πειράξετε το αρχείο εκκίνησης του GRUB που βρίσκεται στο /boot/grub/menu.lst. Εκεί βρίσκετε την γραμμή που ξεκινάει με την λέξη kernel, και προσθέτετε στο τέλος την παράμετρο ipv6.disable=1. Κάντε επανεκκίνηση και τότε θα δείτε διαφορά τόσο στον Firefox όσο και στον Software Manager της διανομής σας (apt-get, yum, pacman κλπ). Πλέον έχετε απενεργοποιήσει το IPv6 !!!
Γεωργιάδης Παναγιώτης

Δεν υπάρχουν σχόλια:

Δημοσίευση σχολίου