Αποφάσισα να ανοίξω αυτό το νήμα ώστε να υπάρχει μια αναφορά σε ένα πασίγνωστο εναλλακτικό firmware για πάρα πολλές συσκευές της αγοράς, το dd-wrt:
https://www.dd-wrt.com/site/
Πρόκειται για ένα Linux based firmware το οποίο εγκαθίσταται σε μια ευρεία γκάμα routers/access points κλπ της αγοράς (linksys, netgear, tp-link, d-link κ.α.). Δεν υποστηρίζονται modem/routers καθώς τα περισσότερα modems βασίζονται σε proprietary drivers, οπότε αν θέλουμε να χρησιμοποιήσουμε ένα dd-wrt router ως κύριο router, θα πρέπει να το κάνουμε bridge με κάποιο modem/router ή αν δεν έχουμε αυτή τη δυνατότητα, θα πρέπει να διαβάσουμε για το πως θα απενεργοποιήσουμε μια σειρά από services στο adsl router και θα κάνουμε ότι απαιτηθει για να αποφύγουμε το διπλό ΝΑΤ.
Η πρώτη μου εμπειρία με το dd-wrt ήταν γύρω στο 2012 μέ το κλασικό linksys WRT54GL το οποίο και έστησα στο πατρικό μου ως repeater για να αποκτήσει πρόσβαση στο internet ένας media player στην τηλεόραση η οποία βρισκόταν μακριά από το router.
O καιρός πέρασε, το linksys μπήκε σε αχρηστία και σκονιζόταν στο πατάρι, μέχρι που ένας φίλος μου ζήτησε βοήθεια με το δίκτυο στο σπίτι του. Είχε ήδη τραβήξει UTP καλώδιο από τον έναν όροφο στον άλλον, είχε δώσει ένα σκασμό λεφτά να αγοράσει διάφορα access points για να στήσει ένα ασύρματο δίκτυο στον έξτρα όροφο και για κάποιο λόγο επί 2 χρόνια ταλαιπωρούνταν από κάκιστο internet με συνεχείς αποσυνδέσεις κλπ. Πηγαίνοντας σπίτι του για να δω τι φταίει, πήρα καλού κακού και το linksys μαζί. Αφού έχασα κάθε ελπίδα να καταλάβω τι στο καλό συμβαίνει με την περίπτωσή του, ξήλωσα τα πάντα, έβαλα το ddwrt linksys με αποτέλεσμα ο άνθρωπος να δει το φως του μετά από επίπονες προσπάθειες ετών.
Κάπου εκεί μου ήρθε η όρεξη να το ψάξω παραπάνω και έτσι αφού έκανα έρευνα αγοράς, κατέληξα στην αγορά ενός Netgear R7000:
http://www.netgear.com/home/products/networking/wifi-routers/R7000.aspx
Έβαλα το adsl router μου (tp-link Archer D5) σε bridge mode, φλάσαρα το ddwrt στο R7000 και ξεκίνησε το παιχνίδι....
Ακολουθούν κάποια πολύ ενδιαφέροντα πράγματα που έχω κάνει μέχρι στιγμής:
1. DNS Caching
Με τη χρήση του dnsmasq για dhcp/dns server και ορίζοντας τον ως τον πρώτο dns server για όλες τις συσκευές στο δίκτυο, απέκτησα dns caching. Έτσι όταν κάποια συσκευή στο δίκτυο κάνει ένα dns request, αν αυτό το request υπάρχει στην cache, σερβίρεται ακαριαία κάτι που δίνει μια έξτρα σπιρτάδα στην περιήγηση στο διαδίκτυο.
2. Adblocking
Εδώ το παιχνίδι άρχισε να γίνεται πολύ ενδιαφέρον. Επί της ουσίας με τη χρήση του privoxy, το router γίνεται ένας τοπικός proxy, ο οποίος κόβει ΑΠΕΙΡΗ σαβούρα από το διαδίκτυο. Εκτός από διαφημίσεις κόβονται και πολλές "κακοτοπιές" και πραγματικά αλλάζει η εμπειρία του σερφαρίσματος.
Η διαδικασία αυτή είναι διαφορετική από το κλασικό ad blocking με plugins στους browsers, με βασικό πλεονέκτημα υπέρ του privoxy την καλύτερη ταχύτητα στο φόρτωμα των σελίδων, καθώς η διαφήμιση δεν φτάνει καν στον τελικό αποδέκτη, σε αντίθεση με το adblock plus πχ όπου φτάνει και μπλοκάρεται μετά.
3. VPN client/server
Δεν ασχολήθηκα με το να στήσω openvpn server τοπικά, αλλά μια που έχω έναν δικό μου openvpn server online, ασχολήθηκα με το να κάνω το netgear, openvpn client. Αφού πέρασα τα απαραίτητα στοιχεία, ενεργοποίησα τον client, ο οποιος συνδέθηκε αμέσως και έτσι με τη μία, όλες οι συσκευές πίσω από το router απέκτησαν σύνδεση vpn.
4. USB Support/Samba server
To netgear έχει μια usb2 και μια usb3. Στην usb2 κάρφωσα από περιέργεια έναν canon mp490 usb εκτυπωτή, ο οποίος αναγνωρίστηκε ως δικτυακός εκτυπωτής ακαριαία, από τις windows συσκευές του σπιτιού. Δεν κατάφερα να κάνω το scanner του να παίξει, αλλά μόνο τον εκτυπωτή. Δεν ασχολήθηκα παραπάνω καθώς το έκανα για να δω αν και πως γίνεται και δεν κράτησα το setup.
Πάμε όμως τώρα στα ωράια....
Η χρήση φτηνού usb NAS, με έχει απασχολήσει πολύ και έχω κάνει διάφορες δοκιμές στο παρελθόν. Ως βασικό USB Nas είχα μέχρι και χτες ένα odroid C1 με έναν Western Digital Mybook. Λόγω του ότι ο myboοk είναι πολύ θορυβώδης είχα καταλήξει να "εξορίσω" το combo σε απομακρυσμένο σημείο του σπιτιού και να το συνδέσω στο δίκτυο με powerline της devolo.
Το αποτέλεσμα ήταν οκ για τη βασική χρήση που θέλω εγώ (σερβίρισμα μουσικής στο transport), αλλά κατά τ' αλλα με την πάροδο του χρόνου η ποιότητα δικτύου με το devolo γινόταν όλο και χειρότερη και ειχα καταλήξει με ένα δίκτυο που στην καλύτερη περίπτωση ήταν 50-60MBps.
Έτσι αποφάσισα να αγοράσω έναν WD RED 3TB, να τον βάλω σε μια passive αλουμινένια θήκη (για να γλιτώσω ανεμιστήρια κλπ) με usb 3 support και να καρφώσω πάνω στην usb 3 του netgear. Παρότι η usb3 του netgear δεν είναι ότι καλύτερο, κατάφερα να πιάσω τα παρακάτω:
Εν ολίγοις με ένα write 38.7Mb/s και ένα read 35.8MB/s, αυτό που κατάφερα το λές και σοβαρή αναβάθμιση!!!
Εννοείται ότι πλέον έχω φτιάξει ένα σωρό shares και έχω πετάξει στο δίσκο πολλά περισσότερα data απ' ότι στο προηγούμενο usb nas. Με όσες δοκιμές έχω προλάβει να κάνει έχω εξαιρετική εμπειρία η οποία είναι η μέρα με τη νύχτα με πρίν.
Εδώ θα πρέπει να σημειώσω ότι αυτή τη λειτουργία την είχε και το adsl router μου, αλλά έπαιζε τόσο χάλια που ήταν σαν να μην υπάρχει.
Γι αρχή θα σταματήσω εδώ και δε θα περιγράψω περισσότερα. Θα επανέλθω με επόμενα posts με πληροφορίες για:
- το advanced Qos που προσφέρει
- τις δυνατότητες για ftp/web/minidlna και ένα σκασμό ακόμα servers που προσφέρει
- κλπ κλπ
Υπάρχει πραγματικά ένα χάος επιλογών τις οποίες δεν ξέρω πόσα λεφτά πρέπει να δώσει κάποιος για να τις βρει σε consumer προιόν.
Να σημειωθεί ότι δεν έκανα καμιά αναφορά στο wifi, όπου πραγματικά χάνεσαι στις ρυθμίσεις και επιλογές αν το επιθυμείς. Πολύ γρήγορα να πώ ότι σήκωσα αμέσως 3 δίκτυα. Ένα στα 2.4 για βασική χρήση, ένα isolated guest επίσης στα 2.4 καθώς και ένα στα 5Ghz για συγκεκριμένες συσκευές. Πολλές συσκευές (όπως πχ. Netgear με stock fimrware ή το tp-link που είχα εγώ) όταν έχουν σηκωμένα και τα 2 interfaces τα κάνουν μαντάρα με αποσυνδέσεις κλπ. Εδώ μεχρι στιγμής δεν έχει ανοίξει ρουθούνι.
Σχόλια - Παρατηρήσεις
- Αν επιχειρήσετε να βάλετε dd-wrt σε κάποιο υποστηριζόμενο router, θα πρέπει να διαβάσετε αναλυτικά πριν προβείτε στις διαδικασίες γιατί υπάρχει πάντοτε η περίπτωση να το μπρικάρετε και να είναι για πέταμα
- Το dd-wrt είναι ένα κοινοτικό opensource software. Αυτό σημαίνει ότι δεν υπάρχει επίσημη υποστήριξη και επίσης δεν υπάρχει και σιγουριά ότι θα παίξει σταθερά και απροβλημάτιστα σε κάθε συσκευή.
- Στο router database του dd-wrt site θα βρείτε αρχαίες εκδόσεις του firmware. Στην πράξη υπάρχουν ολόφρεσκιες απλά πλέον βγάζουν μόνο beta.
- Oι λειτουργίες που θα βρείτε στο εκάστοτε firmware για μια συσκευή δεν είναι ίδιες. Άλλοτε είναι περισσότερες και άλλοτε λιγότερες, ανάλογα με το διαθέσιμο χώρο που έχει το κάθε router. Tο build του R7000 μου έχει πιθανώς ενσωματωμένες τις περισσότερες από τις προσφερόμενες λειτουργίες.
- Με μια πρόχειρη ματιά στο παρακάτω link, μπορείτε να δείτε αν έχετε κάποια συσκευή που να υποστηρίζει το τελευταίο διαθέσιμο firmware:
http://download1.dd-wrt.com/dd-wrtv2/downloads/betas/2017/07-08-2017-r32597/
Αν δε βρείτε εδώ τη συσκευή σας, δε σημαίνει ότι δεν υποστηρίζεται. Ενδέχεται να υπάρχει κάποιο παλιότερο firmware γι αυτήν.
Αυτά προς το παρόν. Θα επανέλθω με νεότερα καθώς το ψάξιμο θα συνεχιστεί για πολύ ακόμα.
https://www.dd-wrt.com/site/
Πρόκειται για ένα Linux based firmware το οποίο εγκαθίσταται σε μια ευρεία γκάμα routers/access points κλπ της αγοράς (linksys, netgear, tp-link, d-link κ.α.). Δεν υποστηρίζονται modem/routers καθώς τα περισσότερα modems βασίζονται σε proprietary drivers, οπότε αν θέλουμε να χρησιμοποιήσουμε ένα dd-wrt router ως κύριο router, θα πρέπει να το κάνουμε bridge με κάποιο modem/router ή αν δεν έχουμε αυτή τη δυνατότητα, θα πρέπει να διαβάσουμε για το πως θα απενεργοποιήσουμε μια σειρά από services στο adsl router και θα κάνουμε ότι απαιτηθει για να αποφύγουμε το διπλό ΝΑΤ.
Η πρώτη μου εμπειρία με το dd-wrt ήταν γύρω στο 2012 μέ το κλασικό linksys WRT54GL το οποίο και έστησα στο πατρικό μου ως repeater για να αποκτήσει πρόσβαση στο internet ένας media player στην τηλεόραση η οποία βρισκόταν μακριά από το router.
O καιρός πέρασε, το linksys μπήκε σε αχρηστία και σκονιζόταν στο πατάρι, μέχρι που ένας φίλος μου ζήτησε βοήθεια με το δίκτυο στο σπίτι του. Είχε ήδη τραβήξει UTP καλώδιο από τον έναν όροφο στον άλλον, είχε δώσει ένα σκασμό λεφτά να αγοράσει διάφορα access points για να στήσει ένα ασύρματο δίκτυο στον έξτρα όροφο και για κάποιο λόγο επί 2 χρόνια ταλαιπωρούνταν από κάκιστο internet με συνεχείς αποσυνδέσεις κλπ. Πηγαίνοντας σπίτι του για να δω τι φταίει, πήρα καλού κακού και το linksys μαζί. Αφού έχασα κάθε ελπίδα να καταλάβω τι στο καλό συμβαίνει με την περίπτωσή του, ξήλωσα τα πάντα, έβαλα το ddwrt linksys με αποτέλεσμα ο άνθρωπος να δει το φως του μετά από επίπονες προσπάθειες ετών.
Κάπου εκεί μου ήρθε η όρεξη να το ψάξω παραπάνω και έτσι αφού έκανα έρευνα αγοράς, κατέληξα στην αγορά ενός Netgear R7000:
http://www.netgear.com/home/products/networking/wifi-routers/R7000.aspx
Έβαλα το adsl router μου (tp-link Archer D5) σε bridge mode, φλάσαρα το ddwrt στο R7000 και ξεκίνησε το παιχνίδι....
Ακολουθούν κάποια πολύ ενδιαφέροντα πράγματα που έχω κάνει μέχρι στιγμής:
1. DNS Caching
Με τη χρήση του dnsmasq για dhcp/dns server και ορίζοντας τον ως τον πρώτο dns server για όλες τις συσκευές στο δίκτυο, απέκτησα dns caching. Έτσι όταν κάποια συσκευή στο δίκτυο κάνει ένα dns request, αν αυτό το request υπάρχει στην cache, σερβίρεται ακαριαία κάτι που δίνει μια έξτρα σπιρτάδα στην περιήγηση στο διαδίκτυο.
2. Adblocking
Εδώ το παιχνίδι άρχισε να γίνεται πολύ ενδιαφέρον. Επί της ουσίας με τη χρήση του privoxy, το router γίνεται ένας τοπικός proxy, ο οποίος κόβει ΑΠΕΙΡΗ σαβούρα από το διαδίκτυο. Εκτός από διαφημίσεις κόβονται και πολλές "κακοτοπιές" και πραγματικά αλλάζει η εμπειρία του σερφαρίσματος.
Η διαδικασία αυτή είναι διαφορετική από το κλασικό ad blocking με plugins στους browsers, με βασικό πλεονέκτημα υπέρ του privoxy την καλύτερη ταχύτητα στο φόρτωμα των σελίδων, καθώς η διαφήμιση δεν φτάνει καν στον τελικό αποδέκτη, σε αντίθεση με το adblock plus πχ όπου φτάνει και μπλοκάρεται μετά.
3. VPN client/server
Δεν ασχολήθηκα με το να στήσω openvpn server τοπικά, αλλά μια που έχω έναν δικό μου openvpn server online, ασχολήθηκα με το να κάνω το netgear, openvpn client. Αφού πέρασα τα απαραίτητα στοιχεία, ενεργοποίησα τον client, ο οποιος συνδέθηκε αμέσως και έτσι με τη μία, όλες οι συσκευές πίσω από το router απέκτησαν σύνδεση vpn.
4. USB Support/Samba server
To netgear έχει μια usb2 και μια usb3. Στην usb2 κάρφωσα από περιέργεια έναν canon mp490 usb εκτυπωτή, ο οποίος αναγνωρίστηκε ως δικτυακός εκτυπωτής ακαριαία, από τις windows συσκευές του σπιτιού. Δεν κατάφερα να κάνω το scanner του να παίξει, αλλά μόνο τον εκτυπωτή. Δεν ασχολήθηκα παραπάνω καθώς το έκανα για να δω αν και πως γίνεται και δεν κράτησα το setup.
Πάμε όμως τώρα στα ωράια....
Η χρήση φτηνού usb NAS, με έχει απασχολήσει πολύ και έχω κάνει διάφορες δοκιμές στο παρελθόν. Ως βασικό USB Nas είχα μέχρι και χτες ένα odroid C1 με έναν Western Digital Mybook. Λόγω του ότι ο myboοk είναι πολύ θορυβώδης είχα καταλήξει να "εξορίσω" το combo σε απομακρυσμένο σημείο του σπιτιού και να το συνδέσω στο δίκτυο με powerline της devolo.
Το αποτέλεσμα ήταν οκ για τη βασική χρήση που θέλω εγώ (σερβίρισμα μουσικής στο transport), αλλά κατά τ' αλλα με την πάροδο του χρόνου η ποιότητα δικτύου με το devolo γινόταν όλο και χειρότερη και ειχα καταλήξει με ένα δίκτυο που στην καλύτερη περίπτωση ήταν 50-60MBps.
Έτσι αποφάσισα να αγοράσω έναν WD RED 3TB, να τον βάλω σε μια passive αλουμινένια θήκη (για να γλιτώσω ανεμιστήρια κλπ) με usb 3 support και να καρφώσω πάνω στην usb 3 του netgear. Παρότι η usb3 του netgear δεν είναι ότι καλύτερο, κατάφερα να πιάσω τα παρακάτω:
Code:
dd if=/dev/zero of=/mnt/ddwrt/music/testfile bs=1M count=1024 oflag=direct
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 27.7596 s, 38.7 MB/s
dd if=/mnt/ddwrt/music/testfile of=/dev/null bs=1M count=1024 iflag=direct
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 30.0215 s, 35.8 MB/s
Εν ολίγοις με ένα write 38.7Mb/s και ένα read 35.8MB/s, αυτό που κατάφερα το λές και σοβαρή αναβάθμιση!!!
Εννοείται ότι πλέον έχω φτιάξει ένα σωρό shares και έχω πετάξει στο δίσκο πολλά περισσότερα data απ' ότι στο προηγούμενο usb nas. Με όσες δοκιμές έχω προλάβει να κάνει έχω εξαιρετική εμπειρία η οποία είναι η μέρα με τη νύχτα με πρίν.
Εδώ θα πρέπει να σημειώσω ότι αυτή τη λειτουργία την είχε και το adsl router μου, αλλά έπαιζε τόσο χάλια που ήταν σαν να μην υπάρχει.
Γι αρχή θα σταματήσω εδώ και δε θα περιγράψω περισσότερα. Θα επανέλθω με επόμενα posts με πληροφορίες για:
- το advanced Qos που προσφέρει
- τις δυνατότητες για ftp/web/minidlna και ένα σκασμό ακόμα servers που προσφέρει
- κλπ κλπ
Υπάρχει πραγματικά ένα χάος επιλογών τις οποίες δεν ξέρω πόσα λεφτά πρέπει να δώσει κάποιος για να τις βρει σε consumer προιόν.
Να σημειωθεί ότι δεν έκανα καμιά αναφορά στο wifi, όπου πραγματικά χάνεσαι στις ρυθμίσεις και επιλογές αν το επιθυμείς. Πολύ γρήγορα να πώ ότι σήκωσα αμέσως 3 δίκτυα. Ένα στα 2.4 για βασική χρήση, ένα isolated guest επίσης στα 2.4 καθώς και ένα στα 5Ghz για συγκεκριμένες συσκευές. Πολλές συσκευές (όπως πχ. Netgear με stock fimrware ή το tp-link που είχα εγώ) όταν έχουν σηκωμένα και τα 2 interfaces τα κάνουν μαντάρα με αποσυνδέσεις κλπ. Εδώ μεχρι στιγμής δεν έχει ανοίξει ρουθούνι.
Σχόλια - Παρατηρήσεις
- Αν επιχειρήσετε να βάλετε dd-wrt σε κάποιο υποστηριζόμενο router, θα πρέπει να διαβάσετε αναλυτικά πριν προβείτε στις διαδικασίες γιατί υπάρχει πάντοτε η περίπτωση να το μπρικάρετε και να είναι για πέταμα
- Το dd-wrt είναι ένα κοινοτικό opensource software. Αυτό σημαίνει ότι δεν υπάρχει επίσημη υποστήριξη και επίσης δεν υπάρχει και σιγουριά ότι θα παίξει σταθερά και απροβλημάτιστα σε κάθε συσκευή.
- Στο router database του dd-wrt site θα βρείτε αρχαίες εκδόσεις του firmware. Στην πράξη υπάρχουν ολόφρεσκιες απλά πλέον βγάζουν μόνο beta.
- Oι λειτουργίες που θα βρείτε στο εκάστοτε firmware για μια συσκευή δεν είναι ίδιες. Άλλοτε είναι περισσότερες και άλλοτε λιγότερες, ανάλογα με το διαθέσιμο χώρο που έχει το κάθε router. Tο build του R7000 μου έχει πιθανώς ενσωματωμένες τις περισσότερες από τις προσφερόμενες λειτουργίες.
- Με μια πρόχειρη ματιά στο παρακάτω link, μπορείτε να δείτε αν έχετε κάποια συσκευή που να υποστηρίζει το τελευταίο διαθέσιμο firmware:
http://download1.dd-wrt.com/dd-wrtv2/downloads/betas/2017/07-08-2017-r32597/
Αν δε βρείτε εδώ τη συσκευή σας, δε σημαίνει ότι δεν υποστηρίζεται. Ενδέχεται να υπάρχει κάποιο παλιότερο firmware γι αυτήν.
Αυτά προς το παρόν. Θα επανέλθω με νεότερα καθώς το ψάξιμο θα συνεχιστεί για πολύ ακόμα.
Last edited: