vim使用技巧: Esc G 到最后一行

首先安装两个制作无线路由器必需的软件

pi@raspberrypi:~ $ sudo apt-get update
pi@raspberrypi:~ $ sudo apt-get install hostapd dnsmasq

hostapd: 该软件能使无线网卡工作在软AP(Access Point)模式,即无线路由器;
dnsmasq: 该软件能够同时提供DHCP和DNS服务

在最新的树莓派版本中,所有的网络接口默认使用dhcpd程序来进行配置,因为wlan0工作在AP模式,所以我们要手动给他静态配置IP地址,所以先在配置文件 /etc/dhcpcd.conf 中最下面添加一行去禁用 wlan0:

pi@raspberrypi:~$ sudo vim /etc/dhcpcd.conf

#interface eth0
#fallback static_eth0
denyinterfaces wlan0

接下来我们在 /etc/network/interfaces 中静态配置无线网卡的IP地址:

pi@raspberrypi:~ $ sudo vim /etc/network/interfaces

# interfaces(5) file used by ifup(8) and ifdown(8)# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.dauto lo
iface lo inet loopbackauto eth0
iface eth0 inet static
address 192.168.2.13                    //连接路由器的ip地址
netmask 255.255.255.0
gateway 192.168.2.1allow-hotplug wlan0
iface wlan0 inet static
address 192.168.10.1                    //树莓派的LAN的ip地址
netmask 255.255.255.0

pi@raspberrypi:~ $ sudo reboot 重启系统,让无线网卡生效

接下来修改hostapd程序的配置文件:
pi@raspberrypi:~$ sudo vim /etc/hostapd/hostapd.conf

# This is the name of the network
ssid=Pi3-AP# The network passphrase
wpa_passphrase=raspberry

修改hostapd的启动配置文件,让系统启动时能够找到hostapd的配置文件:
pi@raspberrypi:~ $ sudo vim /etc/default/hostapd

这时候,可以使用下面命令启动测试 hostapd
pi@raspberrypi:~ $ sudo hostapd -B /etc/hostapd/hostapd.conf

通过笔记本或电脑会发现 无线AP Pi3-AP,但是连接不上,这是因为树莓派的无线网卡并没有开启 DHCP和DNS服务器,接下来我们配置dnsmasq。

pi@raspberrypi:~$ sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
pi@raspberrypi:~$ sudo vim /etc/dnsmasq.conf
pi@raspberrypi:~$ sudo service dnsmasq restart

开启DHCP和DNS服务之后,我们的电脑可以获取IP地址,并连接到树莓派上,但是电脑还是不能上网。这时我们需要开启Linux的内核的IP转发以及使用iptables做NAT表,让无线网卡的数据通过有线网卡转发出去。

开启Linux内核的IP转发功能:
pi@raspberrypi:~$ sudo sh -c “echo 1 > /proc/sys/net/ipv4/ip_forward”

开启树莓派有线网卡和无线网卡的转发功能:
pi@raspberrypi:~$ sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
pi@raspberrypi:~$ sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
pi@raspberrypi:~$ sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

这时候笔记本或手机再连上树莓派上,就可以上网了。当然,由于上面命令都是手动执行的,树莓派上电后,并不会执行他们,这时我们需要进行一些配置,让系统启动后就生效:

保存当前的防火墙策略到配置文件中:
pi@raspberrypi:~$ sudo sh -c “iptables-save > /etc/iptables.ipv4.nat”

修改系统启动脚本,添加启动任务:
pi@raspberrypi:~$ sudo vim /etc/rc.local

然后重启生效:
pi@raspberrypi:~$ sudo reboot

接下来我们的电脑就可以连到树莓派上上网了。


名词解释:
WAN:广域网 (连接Internet)
LAN: 局域网 (路由器的IP)

AP模式:这个模式是供已有路由器的用户使用的,它给现有的局域网扩展无线功能,让那些用本本的用户可以通过无线网络直接接入到局域网中来。(如下图所示)

AP模式的意义:可以扩展有线局域网覆盖范围

DHCP:动态主机配置协议(DHCP)是一种基于UDP协议且仅限于在局域网内部使用的网络协议,主要用于大型的局域网环境或者存在较多移动办公设备的局域网环境中,其主要用途是为局域网内部的设备或网络供应商自动分配IP地址等参数
http://www.cnblogs.com/zhangjianghua/p/9185039.html

DNS服务器:是进行域名和与之相对应的IP地址转换的服务器。DNS中保存了一张域名和与之相对应的IP地址 的表,以解析消息的域名。

树莓派制作无线路由器相关推荐

  1. 用树莓派制作无线路由器:

    先来简要介绍无线路由器的工作原理: 无线路由器有LAN口和WAN口,LAN口即局域网端口,WAN口即广域网接口(wide area network interface),是与Internet网连接的接 ...

  2. 使用树莓派3B制作无线路由器

    前言:接着上一篇博客,这次使用同一个树莓派制作无线路由器.上一次已经使能了树莓派远程登录的功能,通过SecureCRT登录到树莓派上操作. 一.更新树莓派软件列表,下载并安装制作无线路由器必须的两个软 ...

  3. 树莓派的ssh远程登录和树莓派配置无线路由器

    电脑远程登陆树莓派 1.首先使用电脑远程登陆树莓派,树莓派相当于一个微型电脑,目前电脑所拥有的基本功能树莓派基本上都有.想要远程登陆树莓派,必须电脑与树莓派处于同一无线局域网. 对树莓派进行设置,首先 ...

  4. 树莓派制作“数码显微镜”,了解一下?

    今天教大家如何利用树莓派制作一个"数码显微镜". 项目虽然是19年就有了,但是不妨碍我们学习. 这个小项目诞生的起因是作者想要一个数字显微镜,来检查他的电路板以及3D打印件. 他希 ...

  5. 【利用树莓派制作无线打印服务器】

    利用树莓派制作无线打印服务器 文章目录 利用树莓派制作无线打印服务器 一.树莓派是什么? 二.什么是CUPS 树莓派如何启用CUPS 三.电脑端如何连接树莓派打印服务器? 四.手机如何连接树莓派打印服 ...

  6. 树莓派制作遥控小车教程

    树莓派制作遥控小车教程 一.成品图 二.准备材料: 三.开始制作 1.接线 2.写程序 一.成品图 二.准备材料: 1.树莓派 2.充电宝 3.小车套件(底盘,车轮,电机,电池座) 4.导线,杜邦线 ...

  7. 树莓派制作路由器,手机连接wifi

    树莓派制作路由器,手机连接wifi 在制作之前总的介绍本文用到的包:hostapd  以及dhcp服务 hostapd- 一个用户态用于AP和认证服务器的守护进程.它实现了IEEE 802.11相关的 ...

  8. 玩转树莓派---详解树莓派的系统烧录,基础使用及基于树莓派制作手势控制的小车(附详细代码及演示效果)

    目录 一.写在前面 二.系统实现: Author:qyan.li Date:2022.6.10 Topic:详解树莓派的使用及基于树莓派制作手势控制的小车 Reference:如何给树莓派安装操作系统 ...

  9. 如何使用树莓派制作避障机器人

    学习Arduino或者树莓派的过程中,如果仅仅看代码或者做简单实验,那么常常会虎头蛇尾,所以我们建议还是尝试一些简单的机器人项目,这样既有趣也能不断学习提高.本文将向大家展示如何使用树莓派制作简单的避 ...

最新文章

  1. 用java实现给图片增加图片水印或者文字水印(也支持视频图像帧添加水印)
  2. 如何在vsc上选择远程miniconda特定的虚拟环境中的Python解释器(4步)
  3. 解决kalilinux: E: 无法获得锁 /var/lib/apt/lists/lock - open (11: 资源暂时不可用) E: 无法对目录 /var/lib/apt/lists/
  4. 【深度学习】超强优化器如何与网络有机结合
  5. python基础笔记_python基础学习笔记(九)
  6. todo已完成任务_uTools 插件介绍 | 「todo」!打工人必备
  7. java开发平台普元_java开发平台的两种实现模式
  8. JSP的三六九四七(三大指令、六大标签、九大内置对象、四大作用域、七个动作指令)
  9. Oracle递归查询,Oracle START WITH……CONNECT BY查询
  10. 建立高端人脉的三条捷径
  11. 如何检查正在运行脚本的Python版本?
  12. 【备战春招/秋招系列】美团Java面经总结进阶篇 (附详解答案) 1
  13. 身份证号码 如何把格式设置成18个格子
  14. 盘点CSV文件在Excel中打开后乱码问题的两种处理方法
  15. Windows的sc命令详解
  16. 使用script#编写Xrm的Javascript
  17. AI伪原创混剪软件脚本,短视频伪原创剪辑工具必备神器
  18. pygame-KidsCanCode系列jumpy-part1-如何组织复杂游戏的代码
  19. js(javascript)页面刷新
  20. 用html和css设计QQ注册页面,html和css制作QQ企鹅教程

热门文章

  1. 区块链技术培训—从技术小白到年薪百万区块链工程师的进阶之路
  2. ORB词袋特征提取和匹配
  3. Springboot 使用 sendgrid发送邮件
  4. 阿里云盘视频m3u8播放-python+vue3实现
  5. 网易云信IM即时通讯聊天源码SDK 并发高轻松万人并发稳定不丢消息 后端PHP 前端 安卓Java
  6. TMS320f28335实现步进电机的驱动程序及原理分析
  7. python可以自动运行m文件吗_如何运行m文件而不启动matlab
  8. fault tolerance中的错误和故障检测(Error and Fault Detection Mechanisms)
  9. 基于单片机的教室照明智能控制系统设计
  10. PL SQL中如何去掉字符串中重复的字符