(17)樹莓派配置成路由器


樹莓派配置成路由器

 

Raspberry Pi 3B+板載了無線網絡適配器和陶瓷天線,不需要額外增加無線網卡就可以把它打造成一個無線路由器。有一種方法是給Raspberry Pi刷上OpenWRT等路由器固件,這樣它就變成了一個比較正宗的路由器。另一種方法是開啟樹莓派無線網絡適配器的AP功能,並且共享其有線網絡。這樣依然使用Raspbian系統,可以發揮Raspiberry Pi作為一個微型服務器的優勢。

以下描述如何開啟樹莓派3B+(系統版本:2018-06-27-raspbian-stretch)無線網絡適配器的AP功能,並且共享其有線網絡,實現無線路由功能。

一.准備工作

1.1在之前的配置中我們的樹莓派是連上了路由器,可以聯網下載軟件。我們需要先下載相關軟件。

sudo apt-get install hostapd dnsmasq

hostapd將開啟無線適配器的AP功能,dnsmasq是DHCP和DNS服務器。

sudo apt-get install isc-dhcp-server

isc-dhcp-server是安裝DHCP服務

注意.1、本次工作我們最好是通過樹莓派連接電腦顯示器,在樹莓派系統里面用命令行操作。

     2、可以不插網線直接用樹莓派配置,配置完成后再插入網線即可當路由器使用。

二.設置靜態IP

2.1首先讓dhcpcd不再管理wlan0,避免設置沖突。

sudo nano /etc/dhcpcd.conf

在文件的開頭增加一行:

denyinterfaces wlan0

2.2設置wlan0的靜態ip,修改文件:

sudo nano /etc/network/interfaces

在最下面添加以下內容:

allow-hotplug wlan0

iface wlan0 inet static

      address 192.168.0.1

      netmask 255.255.255.0

      network 192.168.0.0

      broadcast 192.168.0.255

 interfaces.png

192.168.0.1是給樹莓派做路由器分配的網關IP,這個不能與局域網其他路由器網關IP重復,若重復此處可以修改IP地址為其他網關。

三.安裝hostapd

3.1新建配置文件:

sudo nano /etc/hostapd/hostapd.conf

把以下內容復制進hostapd.conf

interface=wlan0

driver=nl80211

ssid=Yahboom_WIFI

hw_mode=g

channel=6

ieee80211n=1

wmm_enabled=1

ht_capab=[HT40][SHORT-GT-20][DSSS_CCK-40]

macaddr_acl=0

auth_algs=1

ignore_broadcast_ssid=0

wpa=2

wpa_key_mgmt=WPA-PSK

wpa_passphrase=12345678

rsn_pairwise=CCMP

hostapd.png

 上面文檔中,ssid=Yahboom_WIFI是無線網絡的名字,wpa_passphrase=12345678是密碼。

測試配置是否正確:

sudo /usr/sbin/hostapd  /etc/hostapd/hostapd.conf

此時准備掏出手機,打開設置搜索WiFi,如果可以看到設置的無線WiFi名字,恭喜你,已經成功一半了。

請按Ctrl+C停止測試。

使上述設置生效:

sudo nano /etc/default/hostapd

將#DAEMON_CONF=""刪除前面的井號#並修改為DAEMON_CONF="/etc/hostapd/hostapd.conf"

daemon_config.png

四.配置DHCP服務

4.1備份配置文件dhcpd.conf:

sudo cp /etc/dhcp/dhcpd.conf  /etc/dhcp/dhcpd.conf.bak

4.2修改配置文件dhcpd.conf:

sudo nano /etc/dhcp/dhcpd.conf

增加以下內容:

subnet 192.168.0.0 netmask 255.255.255.0 {

  range dybamic-bootp 192.168.0.10 192.168.0.100;

  option routers 192.168.0.1;

  option broadcast-address 192.168.0.255;

  option domain-name-servers 8.8.8.8,8.8.4.4;

  default-lease-time 600;

  max-lease-time 7200;

}

 dhcpd.png

五.開啟IPV4轉發

5.1修改sysctl.conf文件:

sudo nano /etc/sysctl.conf

去掉net.ipv4.ip_forward=1前面的“#”號。

sysctl.png

通過iptables做NAT轉發

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT

sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

nat.png

5.2保存NAT轉發配置:(因為這些配置重啟之后就會失效)

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

5.3設置為開機自動加載:

sudo nano /etc/rc.local

在exit 0上方增加:

iptables-restore < /etc/iptables.ipv4.nat

rc.png

啟動服務

sudo service hostapd start

接着reboot重啟。到此樹莓派配置成路由器已經完成。

樹莓派重啟之后就可以用手機連接到wifi了。名字和密碼在上面的文檔中體現了,連接之后系統會自動為我們連接的設備分配未使用的ip。如果我們的樹莓派通過有線網絡連上互聯網的話,我們連上的樹莓派路由器的話,也是可以上網的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM