Το Raspberry Pi μπορεί να συνδεθεί σε ένα δίκτυο Wi-Fi χρησιμοποιώντας dongle USB, αλλά χρησιμοποιώντας το ίδιο dongle μπορείτε επίσης να μετατρέψετε το Raspberry Pi σε σημείο ασύρματης πρόσβασης. Μόλις ρυθμιστεί σωστά, αυτό θα επιτρέψει σε άλλες ασύρματες συσκευές να συνδεθούν με το Pi σας και προαιρετικά μπορείτε να κατευθύνετε οποιαδήποτε κίνηση εξέρχεται μέσω της θύρας Ethernet και στο διαδίκτυο (μέσω του δρομολογητή από τον ISP σας).

Ωστόσο, πριν κοιτάξετε τα βήματα που απαιτούνται για να λειτουργήσει αυτό, μια προειδοποίηση. Η διαμόρφωση που απαιτείται μπορεί να είναι λίγο περίπλοκη και αν τα πράγματα δεν λειτουργούν όπως θα έπρεπε τότε η αντιμετώπιση προβλημάτων μπορεί να είναι δύσκολη. Επίσης, για να λειτουργήσει σωστά, χρειάζεστε ένα WiFi USB dongle που μπορεί να λειτουργήσει ως σημείο πρόσβασης. Το καλύτερο μέρος για να βρείτε πληροφορίες σχετικά με το δικό σας dongle και το Raspberry Pi βρίσκεται στη σελίδα προσαρμογέων ενσωματωμένου Linux Raspberry Pi Wi-Fi.

Για να ρυθμίσετε τις παραμέτρους ενός hotspot απαιτούνται διάφορα βήματα:

  • Διαμορφώστε τον ασύρματο προσαρμογέα με μια στατική διεύθυνση IP
  • Εγκαταστήστε και διαμορφώστε ένα διακομιστή DHCP
  • Εγκαταστήστε και διαμορφώστε τον δαίμονα σημείου πρόσβασης
  • Ρυθμίστε τη δρομολόγηση IP μεταξύ ασύρματου και Ethernet

Σε αυτό το παράδειγμα, το ασύρματο δίκτυο θα χρησιμοποιεί την περιοχή διευθύνσεων 192.168.42.n και το ενσύρματο Ethernet θα χρησιμοποιεί την περιοχή διευθύνσεων 192.168.1.n

Διαμορφώστε τον ασύρματο προσαρμογέα με μια στατική διεύθυνση IP

Επεξεργαστείτε το "/ etc / network / interfaces" και προσθέστε τις πληροφορίες στατικής διεύθυνσης IP για το wlan0 . Μπορείτε να μάθετε σχετικά με τις στατικές διευθύνσεις IP στο φροντιστήριο SSH και στατικής διεύθυνσης IP.

 sudo nano / etc / δίκτυο / διεπαφές 

Τοποθετήστε ένα σημάδι "#" μπροστά από όλες τις γραμμές που αναφέρονται wlan0 και wpa, εκτός από το " allow hotplug wlan0 ". Στη συνέχεια, προσθέστε τις ακόλουθες γραμμές στο αρχείο:

 iface wlan0 inet στατική διεύθυνση 192.168.42.1 netmask 255.255.255.0 

Το κάτω μισό του αρχείου θα φαίνεται τώρα έτσι:

Τώρα επανεκκινήστε.

Εγκαταστήστε και διαμορφώστε ένα διακομιστή DHCP

Εγκαταστήστε το διακομιστή DHCP:

 sudo apt-get να εγκαταστήσετε το isc-dhcp-server 

Μπορείτε να αγνοήσετε με ασφάλεια τα τυχόν σφάλματα σχετικά με την αδυναμία εκκίνησης του διακομιστή DHCP σε αυτό το σημείο. Τώρα επεξεργαστείτε το αρχείο ρυθμίσεων:

 sudo nano /etc/dhcp/dhcpd.conf 

Προσθέστε ένα χαρακτήρα "#" μπροστά από τις γραμμές " option domain-name " όπως αυτό:

 #option domain-name "example.org"; #option τομέα-όνομα-διακομιστές ns1.example.org, ns2.example.org; 

Αφαιρέστε το σύμβολο "#" μπροστά από το " authoritative; "Δήλωση όπως αυτή:

 # Εάν αυτός ο διακομιστής DHCP είναι ο επίσημος εξυπηρετητής DHCP για το τοπικό # δίκτυο, η εξουσιοδοτημένη οδηγία πρέπει να είναι μη εξουσιοδοτημένη. επίσημος; 

Στο κάτω μέρος του αρχείου προσθέστε τις ακόλουθες γραμμές:

 υποδίκτυο 192.168.42.0 netmask 255.255.255.0 {εύρος 192.168.42.10 192.168.42.50; προαιρετική διεύθυνση εκπομπής 192.168.42.255; δρομολογητές επιλογής 192.168.42.1; προεπιλεγμένος χρόνος μίσθωσης 600; μέγιστος χρόνος μίσθωσης 7200; επιλογή τομέα-όνομα "τοπικό"? επιλογή τομέα-όνομα-εξυπηρετητές 8.8.8.8, 8.8.4.4; }} 

Έξοδος από nano με "Ctrl + X".

Κάντε τον ασύρματο προσαρμογέα την προεπιλογή για το αίτημα DHCP:

 sudo nano / etc / default / isc-dhcp-server 

Αλλαγή " INTERFACES="" " σε " INTERFACES="wlan0" "

Έξοδος από nano με "Ctrl + X".

Κάντε επανεκκίνηση του διακομιστή DHCP:

 sudo υπηρεσία isc-dhcp-server επανεκκίνηση 

Εγκαταστήστε και διαμορφώστε τον δαίμονα σημείου πρόσβασης

Εγκατάσταση του hostapd:

 sudo apt-get να εγκαταστήσετε το hostapd 

Επεξεργαστείτε το αρχείο ρυθμίσεων hostapd και δημιουργήστε ένα ασύρματο δίκτυο:

 sudo nano /etc/hostapd/hostapd.conf 

Προσθέστε τις ακόλουθες γραμμές:

 interface = wlan0 driver = nl80211 # οδηγός = rtl871xdrv ssid = MyPi hw_mode = g κανάλι = 6 macaddr_acl = 0 auth_algs = 1 ignore_broadcast_ssid = 0 wpa = 2 wpa_passphrase = σμέουρα wpa_key_mgmt = WPA-PSK wpa_pairwise = TKIP rsn_pairwise = CCMP 

Αυτό θα δημιουργήσει ένα δίκτυο με κωδικό πρόσβασης που ονομάζεται MyPi στο κανάλι 6 με τον κωδικό πρόσβασης raspberry .

Ενημερώστε το hostapd πού θα βρει το αρχείο ρυθμίσεων του, ορίζοντας την προεπιλεγμένη θέση:

 sudo nano / etc / default / hostapd 

Καταργήστε το "#" μπροστά από το " DAEMON_CONF " και αλλάξτε τη γραμμή για να διαβάσετε:

 DAEMON_CONF = "/ etc / hostapd / hostapd.conf" 

Ρυθμίστε τη δρομολόγηση IP μεταξύ ασύρματου και Ethernet

Επεξεργαστείτε το " /etc/sysctl.conf " για να ενεργοποιήσετε την προώθηση IP:

 sudo nano /etc/sysctl.conf 

Βρείτε τη γραμμή που διαβάζει " Uncomment the next line to enable packet forwarding for IPv4 " και αποσυνδέστε την επόμενη γραμμή όπως αυτή:

 # Αποσυνδέστε την επόμενη γραμμή για να ενεργοποιήσετε την προώθηση πακέτων για το IPv4 net.ipv4.ip_forward = 1 

Εκτελέστε την ακόλουθη εντολή για ενεργοποίηση της προώθησης τώρα:

 sudo sh -c "echo 1> / proc / sys / net / ipv4 / ip_forward" 

Τώρα μετατρέψτε το Pi σε δρομολογητή με τις ακόλουθες εντολές:

 sudo iptables -t nat -A ΜΕΤΑΒΟΛΗ -ο eth0 -j MASQUERADE sudo iptables -A FORWARD -i eth0 -ο wlan0 -m κατάσταση -state ΣΧΕΤΙΚΟ, ΣΥΓΚΡΙΘΕΤΑΙ -j ΔΕΔΟΜΕΝΑ sudo iptables -A ΠΡΟΗΓΟΥΜΕΝΟ -i wlan0 -o eth0 -j ΑΠΟΔΕΧΟΜΑΙ 

Και αποθηκεύστε τους πίνακες δρομολόγησης στο αρχείο " /etc/iptables.ipv4.nat "

 sudo sh -c "iptables-save> /etc/iptables.ipv4.nat" 

Επεξεργασία " /etc/network/interfaces ":

 sudo nano / etc / δίκτυο / διεπαφές 

Και προσθέστε την ακόλουθη γραμμή στο τέλος του αρχείου. Αυτή η γραμμή θα επαναφέρει τον πίνακα δρομολόγησης κάθε φορά που εκκινείται το Pi:

 προ-up iptables-restore </etc/iptables.ipv4.nat 

Θα πρέπει τώρα να επανεκκινήσετε το Pi σας και να δοκιμάσετε την ασύρματη πρόσβαση χρησιμοποιώντας φορητό υπολογιστή, smartphone, tablet ή άλλη συσκευή με δυνατότητα Wi-Fi.

Αντιμετώπιση προβλημάτων

Δεδομένου ότι αυτή η διαμόρφωση είναι αρκετά περίπλοκη τα πράγματα μπορούν εύκολα να πάνε στραβά. Αν αντιμετωπίζετε πρόβλημα, ελέγξτε όλα τα αρχεία ρυθμίσεων. Αξίζει επίσης να χρησιμοποιήσετε την ποδηλασία για το Pi, καθώς είναι δυνατόν το dongle USB να μπει σε μια απροσδιόριστη κατάσταση.

Μπορεί να έχετε παρατηρήσει ότι το αρχείο "hostapd.conf" είχε δύο γραμμές " driver= " και μία από αυτές σχολιάστηκε. Εάν το κλειδί USB Wi-Fi χρησιμοποιεί το nl80211 οδήγησης nl80211, τότε η παραπάνω ρύθμιση παραμέτρων θα πρέπει να λειτουργήσει σωστά. Ωστόσο, αν το dongle σας χρησιμοποιεί το rtl871xdrv που κάνει για προσαρμογείς που βασίζονται στο chipset Realtek RTL8188CUS, τότε χρειάζονται κάποια επιπλέον βήματα.

Πρώτα εγκαταστήστε το πακέτο iw :

 sudo apt-get install iw 

Τώρα εκτελέστε την ακόλουθη εντολή:

 iw λίστα 

Αν η έξοδος της εντολής " nl80211 not found " τότε θα πρέπει να χρησιμοποιήσετε το rtl871xdrv οδήγησης rtl871xdrv . Ωστόσο, θα χρειαστείτε επίσης μια ειδική έκδοση του hostapd.

Το Adafruit έχει μια προεπιλεγμένη έκδοση του hostapd για τον οδηγό rtl871xdrv . Για να το εγκαταστήσετε, χρησιμοποιήστε τις ακόλουθες εντολές:

 wget http://www.adafruit.com/downloads/adafruit_hostapd.zip unzip adafruit_hostapd.zip sudo mv / usr / sbin / hostapd /usr/sbin/hostapd.ORIG sudo mv hostapd / usr / sbin sudo chmod 755 / usr / sbin / hostapd 

Εάν έχετε οποιεσδήποτε ερωτήσεις σχετικά με τη μετατροπή του Pi σε ασύρματο σημείο πρόσβασης, παρακαλούμε ρωτήστε παρακάτω και θα προσπαθήσουμε να βοηθήσουμε!