树莓派(Raspberry Pi 3) - 树莓派打造无线路由器

      使用树莓派来做无线路由器,首先需要确认的是USB无线网卡已经安装了正确的驱动并能工作,其次所使用的无线网卡需要支持AP功能,否则即使正确配置了无线路由器,有软件也无法正常工作。配置无线路由器需要安装 hostapd 与 isc-dhcp-server ,其中 hostapd 是一个用于访问点以及认证服务器的服务程序。(配置时建议以管理员身份配置

一、配置无线网卡固定 IP 以及子网地址

  • 编辑网络配置文件:  vi /etc/network/interfaces 文件,找到和wlan0相关的几行注释掉。
# allow-hotplug wlan0
# iface wlan0 inet manual
# wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
  • 在文件最后添加几行网卡的配置(192.168.2.1是给raspberry pi 做的路由器分配的网关 ip,这个不能跟局域网里其他路由网关ip重复。)

iface wlan0 inet static
address 192.168.2.1
netmask 255.255.255.0
          
二、安装Hostapd
  • 输入命令:apt-get install hostapd 完成软件安装。修改 hostapd 的默认配置文件: vi /etc/default/hostapd,取消“#DAEMON_CONF = ""”最前面得注释号“#”,并增加一个 hostapd 的配置文件。
DAEMON_CONF="/etc/hostapd/hostapd.conf"
          
  • 配置hostapd服务器,建立配置文件: vi /etc/hostapd/hostapd.conf,并输入以下内容。
# 设置默认的接入点为无线网卡 wlan0
interface = wlan0

# 设置驱动程序为 nl80211
driver = nl80211

# 设置网卡工作模式为 802.11G
hw_mode = g

# 设置无线网络 SSID 为 RaspberryPi
ssid = RaspberryPi

# 设置无线通道为5,如果发现连接速度慢或有干扰,也可以设置为其他数值
channel = 6

# 设置加密模式为 WPA2
wpa = 2

# 设置密码为123456789
wpa_passphrase = 123456789

# 设置加密方式为CCMP
wpa_key_mgmt = WPA-PSK
wpa_pairwise = CCMP
rsn_pairwise = CCMP
beacon_int = 100
auth_algs = 3
wmm_enabled = 1
wmm_enabled=1
  • 修改完成后保存退出,并重新启动 hostapd 服务器: /etc/init.d/hostapd restart(如有重启错误,先确保hostapd已启动:restart -> start),提示配置成功。
          
三、安装DHCP服务

  • 输入命令:apt-get install isc-dhcp-server 完成服务安装。修改DHCP服务的配置文件: vi /etc/dhcp/dhcpd.conf,注释掉以 option domain - name 为开头的两行,以取消对域名的设置。

          

  • 随后在文档的最后增加以下内容,修改完成后重新启动dhcp服务: /etc/init.d/isc-dhcp-server restart(如有重启错误,先确保hostapd已启动:restart -> start),提示配置成功。

subnet 192.168.10.0 netmask 255.255.255.0 {
  range 192.168.2.10 192.168.2.100;
  option routers 192.168.2.1;
  option broadcast-address 192.168.2.127;
  option domain-name-servers 8.8.8.8,8.8.4.4;
  default-lease-time 600;
  max-lease-time 7200;
}

          
  • 重新启动服务后,就可以通过客户端来连接无线路由了,这时可以通过无线连接到树莓派上,但是不能上网。

          

四、配置路由转发

  • 不能上网原因是还没有设置数据的转发功能,而在 Linux 系统中我们通常使用防火墙来实现这一功能。输入命令:

iptables -F
iptables -X

# 设置转发规则
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# 将转发规则保存到防火墙配置中
iptables-save > /etc/iptables.up.rules

# 开启防火墙
/etc/init.d/iptables start

# 开启内核转发功能
echo 1 > /proc/sys/net/ipv4/ip_forward


你可以按照以下步骤将树莓派配置为无线路由器: 1. 确保你的树莓派已经启用了 Wi-Fi,可以通过在终端输入 `sudo raspi-config` 进入 Raspberry Pi 配置界面,选择 Network Options -> Wi-Fi,接着输入你的 Wi-Fi 网络信息,如 SSID 和密码,以启用 Wi-Fi。 2. 安装所需软件包。在终端输入以下命令: ``` sudo apt-get update sudo apt-get install hostapd dnsmasq ``` 3. 配置静态 IP 地址。在终端输入以下命令: ``` sudo nano /etc/dhcpcd.conf ``` 在文件末尾添加以下内容: ``` interface wlan0 static ip_address=192.168.4.1/24 nohook wpa_supplicant ``` 保存文件并退出。 4. 配置 hostapd。在终端输入以下命令: ``` sudo nano /etc/hostapd/hostapd.conf ``` 在文件末尾添加以下内容: ``` interface=wlan0 ssid=YourSSID hw_mode=g channel=7 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=YourPassword wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP ``` 其中,`YourSSID` 和 `YourPassword` 分别是你想要设置的无线网络名称和密码。保存文件并退出。 5. 配置 dnsmasq。在终端输入以下命令: ``` sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig sudo nano /etc/dnsmasq.conf ``` 在文件末尾添加以下内容: ``` interface=wlan0 dhcp-range=192.168.4.2,192.168.4.20,255.255.255.0,24h ``` 保存文件并退出。 6. 配置 IP 转发。在终端输入以下命令: ``` sudo nano /etc/sysctl.conf ``` 找到以下行: ``` #net.ipv4.ip_forward=1 ``` 将其改为: ``` net.ipv4.ip_forward=1 ``` 保存文件并退出。 7. 配置 iptables。在终端输入以下命令: ``` 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 sudo sh -c "iptables-save > /etc/iptables.ipv4.nat" ``` 8. 启动服务。在终端输入以下命令: ``` sudo systemctl start hostapd sudo systemctl start dnsmasq ``` 如果你想让这些服务在启动时自动启动,可以输入以下命令: ``` sudo systemctl enable hostapd sudo systemctl enable dnsmasq ``` 9. 重启树莓派。在终端输入以下命令: ``` sudo reboot ``` 完成上述步骤后,你应该就可以使用你的树莓派作为一个无线路由器了。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值