Raspberry pi设置自动拨号,搭建无线路由环境

Raspberry pi设置自动拨号,搭建无线路由环境


  • 前言

    raspberry pi(树莓派), 是一款针对电脑业余爱好者、教师、小学生以及小型企业等用户的迷你电脑,由于可以烧录Linux操作系统,因此可以衍生出各种各样的使用途径,诸如控制版,爬虫机器,个人vps,门禁系统…..本文主要介绍如何在raspberry pi上面完成pppoe拨号上网功能,以及如何利用raspberry pi完成路由转发功能,进而将其作为一个家用无线路由器来使用。


  • 准备环境
  1. raspberry pi 三代 b+版
  2. Kali Linux 镜像,点此链接下载最新镜像
  3. 一款Kali Linux支持的,拥有AP模式的USB网卡, 可以参考此链接

烧录Kali Linux系统到SD卡片(此处略过)在windows上面,我们可以使用 Win32DiskImager工具进行镜像的烧录;在Linux宿主系统上面,可以利用dd命令直接将img镜像dump到sd卡里面,例如: [email protected]:~ dd if=kali-2.1.2-rpi.img of=/dev/sdb bs=512k安装必要软件 我们需要在Kali上面安装pppoe软件用来拨号,安装AP软件将Raspberry pi作为一个无线AP,安装dhcp软件用来给客户端分发IP地址,DNS等信息。 

[email protected]:~# apt-get install pppoe pppoeconf hostapd udhcpd
  • 设置拨号 
    在这里,我们使用Raspberry pi的以太网网口接入网线进行拨号设置。在命令行输入如下指令:

[email protected]:~# pppoeconf

   在这里,会提示相应的配置文件将发生改变,点选Yes。

  下一步会提示在拨号的偏好设定,点选Yes。

  下一步会提示输入拨号的用户名,直接输入然后点击OK。

  下一步会提示输入拨号密码,直接输入然后点击OK。

  下一步会确认是否将ISP供应商提供的DNS信息写入配置,选Yes。

  下一步会提示修改ppp接口的MTU大小,选择Yes。

  下一步提示是否在开机启动的时候就进行ppp拨号,选择Yes。

  下一步提示是否现在进行拨号连接,选择Yes。

  拨号成功之后,利用ip命令查看ppp情况:

[email protected]:~# ip a s ppp05: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1488 qdisc pfifo_fast state UNKNOWN group default qlen 3    link/ppp    inet 10.12.6.137 peer 10.12.0.1/32 scope global ppp0       valid_lft forever preferred_lft forever

[email protected]:~# ip r s t maindefault dev ppp0 scope link10.12.0.1 dev ppp0 proto kernel scope link src 10.12.6.13720.20.20.0/24 dev wlan1 proto kernel scope link src 20.20.20.1

  可以看到,已经拨号获取地址,ping一下 伟大的百度 试试……

[email protected]:~# ping -c 3 www.baidu.comPING www.a.shifen.com (119.75.217.109) 56(84) bytes of data.64 bytes from 119.75.217.109 (119.75.217.109): icmp_seq=1 ttl=55 time=4.33 ms64 bytes from 119.75.217.109 (119.75.217.109): icmp_seq=2 ttl=55 time=4.18 ms64 bytes from 119.75.217.109 (119.75.217.109): icmp_seq=3 ttl=55 time=4.06 ms

--- www.a.shifen.com ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2002msrtt min/avg/max/mdev = 4.064/4.193/4.333/0.122 ms

  至此,pppoe拨号配置完毕。

  • 无线热点(AP)配置 
    首先查一下所用的无线网卡是否支持AP模式,我这里的无线网卡的标识为phy1, wlan1,可以看到,该网卡支持AP模式:
[email protected]:~# iw phy1 info | grep -i ap                 * AP                 * AP/VLAN                Capabilities: 0x172                 * start_ap                 * set_noack_map                 * set_qos_map                 * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0                 * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0                 * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0                 * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0                 * AP/VLAN                 * #{ AP, mesh point } <= 8,        HT Capability overrides:        Device supports AP scan.

  下一步,编辑/etc/hostapd/hostapd.conf文件:

interface=wlan1 #使用的接口名称        ssid=Raspberry_AP #AP的ssid名称hw_mode=g   #操作模式为IEEE 802.11gchannel=11      #设置频段为11macaddr_acl=0 #启用mac地址白名单模式auth_algs=1 #定义802.11鉴权算法为Shared Key Authenticationignore_broadcast_ssid=0 #关闭broadcast_ssid功能wpa=2 #采用wpa2标准wpa_passphrase=raspberrypi  #密码wpa_key_mgmt=WPA-PSK #使用wpa2-psk类型进行加密wpa_pairwise=TKIP   #加密算法rsn_pairwise=CCMP #加密算法

  编辑完毕之后,利用如下命令启动hostapd:

[email protected]:~# /usr/sbin/hostapd -B -P /run/hostapd.pid \ /etc/hostapd/hostapd.conf
  • 配置DHCP功能 
    编辑/etc/udhcpd.conf文件,修改如下内容:
# Sample udhcpd configuration file (/etc/udhcpd.conf)

# The start and end of the IP lease block

start           20.20.20.2      #default: 192.168.0.20end             20.20.20.20     #default: 192.168.0.254

# The interface that udhcpd will use

interface       wlan1           #default: eth0

  配置完毕之后,启动udhcpd服务:

[email protected]:~# udhcpd /etc/udhcpd.conf
  • 开启NAT转发功能 
    在Raspberry pi上面开启NAT功能,以实现路由转发。
[email protected]:~# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE[email protected]:~# iptables -t filter -A FORWARD -i ppp0 -o wlan1 -m state --state RELATED,ESTABLISHED -j ACCEPT[email protected]:~# iptables -t filter -A FORWARD -i wlan1 -j ACCEPT

  • 连接测试 
    通过本地windows连接Raspberry_AP,并用本地cygwin尝试连接 伟大的百度……测试连通成功,至此Raspberry pi已经可以作为家庭路由器进行工作了!

[jiangche00.jiangche00-PC]  ping www.baidu.com

正在 Ping www.a.shifen.com [119.75.217.109] 具有 32 字节的数据:来自 119.75.217.109 的回复: 字节=32 时间=5ms TTL=54来自 119.75.217.109 的回复: 字节=32 时间=6ms TTL=54来自 119.75.217.109 的回复: 字节=32 时间=6ms TTL=54来自 119.75.217.109 的回复: 字节=32 时间=11ms TTL=54

119.75.217.109 的 Ping 统计信息:    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),往返行程的估计时间(以毫秒为单位):    最短 = 5ms,最长 = 11ms,平均 = 7ms
时间: 2024-08-05 02:07:54

Raspberry pi设置自动拨号,搭建无线路由环境的相关文章

Win10 IoT C#开发 1 - Raspberry安装IoT系统及搭建开发环境

原文:Win10 IoT C#开发 1 - Raspberry安装IoT系统及搭建开发环境 Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架构上运行. The Raspberry Pi Foundation 是英国一个致力于科技推广的慈善组织,为广发爱好者和DIY科技迷开发了搭载ARM架构处理器的 mini 电脑 Raspberry Pi 并获得了成功.而微软最新发

【树莓派】【转】将树莓派Raspberry Pi设置为无线路由器(WiFi热点AP,RTL8188CUS芯片)

下文为转载,文章转自:http://wangye.org/blog/archives/845/,仅供本次学习实践参考. 最近又开始折腾起Raspberry Pi来了,因为某处上网需要锐捷拨号,于是我就想能不能让我的树莓派代劳,当然首先要将其改造为路由器,默认自带的网口作为WAN口,我们还缺一个网口,木有办法,只好占用一个USB口,接上一个USB网卡,网上的USB转RJ45网线口的适配器比较少,价格也不便宜,于是就考虑干脆将其改造成无线路由,也符合时下高端大气上档次的标准. 准备工作,当然要先去购

将树莓派Raspberry Pi设置为无线路由器(WiFi热点AP,RTL8188CUS芯片)

本文是基于在某东购买的usb无线网卡(RTL8188CUS芯片)来制作无线热点.本来想制作一个一键脚本.只是先把实现的过程记录下来. 參考文章 Turn Your Raspberry Pi Into a WiFi Hotspot with Edimax Nano USB EW-7811Un (RTL8188CUS chipset) Why won't dnsmasq's DHCP server work when using hostapd? 1.更新系统,安装须要的软件 我们首先须要更新系统.

Raspberry Pi 4B C和Python开发环境安装

C编译环境wiringPi安装 安装步骤参照 wiringPi官网 目前针对Raspberry Pi 4B的版本是2.5.2 cd /tmp wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb 检查版本 gpio -v Python环境安装 sudo apt-get update sudo apt-get install idle-python2.7 原文地址

Raspberry Pi AP功能改进: systemd服务封装以及dnsmasq的使用

前言在上一篇<Raspberry pi 设置自动拨号, 搭建无线路由环境>一文中,笔者利用hostapd和udhcpd程序,创建无线热点,实现地址分配以及DNS服务器的设置.本篇将基于上一篇的环境,对树莓派AP进行改进:使用dnsmasq代替udhcpd实现DNS以及地址租约,并将AP功能封装成为一个服务 上一篇中使用的hostapd以及udhcpd,其方式有一些缺陷: 使用命令行方式启动,并未将启动本身封装成为一个固定的"服务" 三代树莓派的内置网卡以及笔者使用的外置网卡

在Ubuntu 16.04中搭建RobotFramework环境

1.搭建RF环境 2.安装RF相关库 3.查看RF case 4.设置环境变量 相关知识点:pip  --proxy=http://xx.xx.xx.xx:xx install 包名,使用pip的--proxy参数可以设置代理 1.搭建RF环境 安装python:推荐python2.7版本,python3以上版本无法安装用例编写可视化工具ride 安装RF: sudo pip install robotframework==3.0.4 安装IDE 3.1安装wxpython(python可视化工

从零开始搭建Raspberry Pi机器视觉编程环境

从零开始搭建Raspberry Pi机器视觉编程环境 本文主要包括如下内容: 安装Raspbian系统 连接和设置网络 安装中文支持 用电脑控制树莓派 通过SSH远程登录树莓派命令行界面 安装VNC远程登录树莓派图形桌面 通过串口连接树莓派 安装OpenCV及相关开发包 一键备份树莓派SD卡 1 安装Raspbian系统 拿到树莓派后第一件事当然是装系统.安装树莓派系统所需配置: 1个输出5V,>700mA(通常选择1A或2A)的USB电源适配器 1根micro USB线(安卓线) 1张拷贝好系

树莓派(Raspberry Pi)搭建简单的lamp服务

树莓派(Raspberry Pi)搭建简单的lamp服务: 1. LAMP 的安装 sudo apt-get install apache2 mysql-server mysql-client php5 php5-gd php5-mysql –安装mysql.apache.php sudo chmod 777 /var/www/ –设置web目录的权限 2. phpmyadmin 安装 sudo apt-get install phpmyadmin –安装后选择apache2 3.配置 sudo

Raspberry Pi 自动挂载USB存储设备

简单介绍实现命令行下USB存储设备自动挂载的方法,Linux gnome/kde窗口环境下有移动存储的管理程序,可以实现自动挂载移动存储设备,但是在命令行下 通常需要用mount命令手动挂载USB存储设备. 通过给linux下的设备管理服务udev添加规则配置文件,可以实现命令行下USB存储设备自动挂载 创建10-usbstorage.rules sudo vim /etc/udev/rules.d/10-usbstorage.rules 复制粘贴以下代码 KERNEL!="sd*",