0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

新型无线VPN路由器硬件设计开发方案

电子设计 来源:中电网 作者:中电网 2021-02-02 14:26 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

文较为详细地介绍了一种新型无线VPN路由器的设计方法。首先从硬件构造上进行剖析,提供了详细的硬件开发方案。然后重点阐述了软件设计方法,包括操作系统的移植,实现无线网络连接的PPP拨号程序以及实现VPN 的IPSEC应用程序。通过使用本文中所提出的方法,可以很好的满足很多行业的应用需求。

近年来蜂窝式移动通信系统在中国的发展非常迅速,不仅给用户带来了方便快捷的语音通信服务,而且还能提供灵活的数据通信服务。

本文提出了一种新型的基于ARM7的嵌入式设备———GPRS无线VPN路由器的设计方法,使得原先使用有线通信系统的各种业务终端设备能够非常方便地接入到GPRS网络中,利用无线移动网络提供的数据服务来进行数据通信。

1 概述

1.1 ARM简介


ARM (Advanced RISC Machines) ,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。1991年ARM公司成立于英国剑桥, ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。ARM微处理器目前包括下面几个系列, ARM7系列、ARM9系列、ARM9E系列、ARM10E系列、SecurCore系列、Intel 的Xscale以及StrongARM。它们共同构成了当今嵌入式领域的主流微处理器。

1.2 GPRS简介

GPRS(General Packet Radio Service)是通用分组无线业务的简称,是在GSM基础上发展起来的一种分组交换的数据承载和传输方式。与原有的GSM比较, GPRS在数据业务的承载和支持上具有非常明显的优势:通过多个GSM时隙的复用,支持的数据传输速率更高,理论峰值达115kbps;不同的网络用户共享同一组GPRS信道,但只有当某一个用户需要发送或接收数据时才会占用信道资源。这样,通过多用户的业务复用,更有效地利用无线网络信道资源,特别适合突发性、频繁的小流量数据传输,很好地适应数据业务的突发性特点; GPRS计费方式更加灵活,可以支持按数据流量来进行计费;与无线应用协议(WAP)技术不同, GPRS能够随时为用户提供透明的IP通道,可直接访问Internet中的所有站点和资源;采用信道复用技术,每一个GPRS用户都能够实现永远在线。

2 硬件部分

2.1 设计思路


无线路由器电路板通过无线通信模块连接GPRS移动网络,通过以太口连接内部终端设备或者内部局域网。无线路由器具备网络路由功能,能够在两个网络之间转发数据。各种终端设备发出的数据通过以太口被处理器接收,处理器对数据进行相应处理后(例如加/解密)再通过串行口发送给无线通信模块,由它转发到GPRS网络中。同理,反向的数据经过相反的路径最终送回终端设备。

2.2 硬件设计

嵌入式处理器采用三星公司的S3C4510B,它是基于以太网应用系统的高性价比的16/32位RISC微控制器,内含一个由ARM公司设计的16/32位ARM7TDMI RISC处理器核。通过GPRS网进行数据传输需要使用GPRS模块。目前, GPRS模块一般是指带有GPRS功能的GSM模块,模块通过外接天线与蜂窝小区基站通信, 收发无线数据。本设计中GPRS 模块采用Wavecom公司的W ISMO Quik Q2400系列.其他各部分基本功能描述如下:

串行接口电路用于S3C4510B与GPRS模块以及其他应用系统进行短距离双向串行通讯; 复位电路可完成系统上电复位和在系统工作时用户按键复位;电源电路为整个系统提供工作所需的电压,包括5V, 3.6V以及3.3V;10MHz有源晶振为系统提供工作时钟; FLASH存储器可存放已调试好的应用程序、嵌入式操作系统或其他在系统掉电后需要保存的用户数据等;

SDRAM存储器作为系统运行时的主要区域,系统及用户数据、堆栈均位于SDRAM存储器中;10M/100M以太网接口为系统提供以太网接入的物理通道;I2C存储器可存储少量需要长期保存的用户数据.

2.3 硬件连接

完整的硬件连接图如图1所示。

o4YBAGAY-xWAWjJSAAEy8jGYQ1k256.png

图1 硬件连接图

3 软件部分

在此无线路由器中使用的操作系统是uClinux,它是专门应用于没有MMU的微控制器上的操作系统。uClinux操作系统中已经内嵌了TCP/IP网络协议的实现代码,在内核中设置“IP转发”就能实现静态路由功能。为了实现拨号登录移动网络以及VPN的功能,则需要用到2个网络应用程序: PPP应用程序和IPSec应用程序。图2是整个系统的软件结构层次图。

o4YBAGAY-yOAWQoPAAB7oZoWYuY856.png

图2软件结构层次图

3. 1 uClinux 的移植

uClinux 的源代码和开发工具可以免费从http: //www.uclinux.org上下载得到。www.uclinux.org上定期为新推出的Linux内核推出相应的源码包。最新的版本为uClinux-dist-20040408.tar.gz,也可以从该网站上免费下载得到。这个源码包里包含了uCL inux -2.6.2、uCL inux-2.4.24、2.0.39、uClibc和已经移植到uClinux下的用户应用程序。tar xzvf uClinux-dist-20040408.tar.bz将其解压缩到/home/uClinux-dist下。另外还需要从www.uclinux.org/pub/uClinux/arm-elf -tools/上下载ARM 交叉编译器: arm-elf-tools-20030314.sh,执行以建立uClinux-ARM的交叉编译环境。为了使uClinux能顺利地在无线路由器上跑起来,需要针对此硬件平台对uClinux再进行修改。在/home/uClinux-dist/linux-2.4.x/include/asm-armnommu/下的hardware.h文件包含了S3C4510B片内特殊功能寄存器以及其他相关硬件信息的定义。可以在此对其进行修改。另外还可以在make xconfig的时候将vendor选为Samsung,并选中Customize Kernel Settings一项,之后可以在出现的System Type中对相关参数进行修改,主要包括系统的主时钟频率、FLASH和SDRAM的起始地址及大小等。最终通过编译即可得到无线路由器运行所需要的image.rom和image.ram。

3. 2 PPP应用程序

PPP应用程序用来通过无线通信模块拨号登录移动网络,登录过程遵循PPP (Point-to-Point Protocol)通信协议。目前uClinux操作系统中已包含的多种应用程序中有一种实现PPP协议的程序pppd,只需要根据无线移动网络通信的特征,修改pppd源代码中的部分配置参数,就能够得到需要的PPP应用程序。以下是进行拨号登陆移动网络的脚本程序:

#! /bin/sh

/usr/sbin/pppd

nodetach

connect"/etc/ppp/peers/gprs-connect-chat"

disconnect"/etc/ppp /peers/gprs-disconnect-chat"

/dev/ttyS0

115200

nocrtscts

local

defaultroute

novj

nobsdcomp

novjccomp

nopcomp

noaccomp

noauth

其中用来实现拨号和挂断的脚本gprs-connect-chat和gprs-disconnect-chat分别如下:

gprs-connect-chat

#! /bin/sh

exec/usr/sbin/chat

TIMEOUT 5

ECHO ON

ABORT ’nBUSY r’

ABORT ’nERROR r’

ABORT ’nNO ANSWER r’

ABORT ’nNO DIALTONE r’

ABORT ’nR INGING rnrnRINGING r’

SAY "Press CTRL-C to close the connection at any stage!"

SAY"ndefining PDP context. . . n"

" " ’+ + + ’

" " ’ATH’

OK ’AT +CGDCONT = 1,"IP" , "cmnet" ’

OK ’ATDT3 993 3 3 1#’

TIMEOUT 10

SAY" nwaiting for connect. . . n"

CONNECT" "

SAY"nConnected. "

SAY"n If the following ppp negotiations fail, n"

SAY"try restarting the phone.n"

gprs-disconnect

#!/bin/sh

/usr/sbin/chat

TIMEOUT 5

ECHO ON

ABORT ’NO CARR IER’

ABORT ’ERROR’

ABORT ’NO DIALTONE’

SAY "nSending break to the modem n"

" " ’dd + + + d d’

" " ’ATH’

" " OK

SAY"nPDP context detached n"

3. 3 IPSec应用程序

IPSec应用程序用来在路由器上建立基于IPSec( IP Security)协议的虚拟专用网VPN (Virtual PrivateNetwork) , IPSec 是IETF( Internet Engineer TaskForce)制定的安全标准,它把几种安全技术结合在一起形成了一个较为完整的体系。它通过对数据进行加密、认证、完整性检查来保证数据传输的可靠性、私有性和保密性。IPSec提供IP层的安全性,由于所有支持TCP/IP协议的主机进行通信时都要经过IP层的处理,所以提供了IP层的安全性就相当于为整个网络提供了安全通信的保障。IPSec由认证头AH (Authentication Header) 、安全封装载荷ESP( Encap sulated Security Payload)和密钥管理协议组成。IPSec应用程序的设计就是将IPSec协议用计算机语言代码来实现。uClinux 操作系统中的FreeSWAN应用程序就是用来实现IPSec协议的一种公开源代码软件,通过对相关部分的修改和配置,就可以在无线路由器上运行。最新版本的uClinux中已经包含了FreeSWAN1.97。

对FreeSWAN 的配置主要是对/ etc / ipsec.conf和/ etc/ipsec.secrets 这两个文件进行相应的编辑。/etc /ipsec.conf中包含了对应不同连接的相关配置信息,而/etc/ipsec.secrets中则包含了RSA密钥对以及预共享秘密等用来进行认证的密钥信息。在无线路由器上执行# ipsec showhostkey———left,以获得该主机的RSA 公钥,然后编辑/etc/ ipsec.conf,增加了一个名为“net - net”的新连接。

conn net-net left = x. x. x. x ,填入无线路由器拨号所获得的对外IP地址leftsubnet = 192.168.1.0/24 ,无线路由器网关保护子网的IP地址范围leftrsasigkey = 0s1LgR7 /oUM. . . ,将刚才得到的left RSA公钥填入right = x. x. x. x ,填入VPN服务器的对外IP地址rightsubnet=192.168.5.0/24 ,另一方保护的子网IP地址范围rightrsasigkey = 0sAQOqH55O. . . ,将VPN服务器的right RSA公钥填入auto=add ,启动时并不自
动建立连接双方重新启动ipsec后,该连接就被Pluto加载, 并做好建立连接的准备了。在无线路由器上执行# ipsec auto———up net-net即可看到一系列的连接建立过程。

4 连接方法及应用

无线路由器对终端设备提供两个接口,分别是以太网接口和RS-232 串行接口。无线路由器中的路由软件将来自设备的数据自动转发到GPRS网络,或者接收来自GPRS网络的数据并转发给设备。终端设备只要通过以太网口或RS-232串行口连接到无线路由器,并将默认网关设置成无线路由器的IP地址,就可以接入到GPRS网络。

o4YBAGAY-02AU59YAAEK3p0Vn94658.png

图3网络规划和设计图

使用通信专线将移动网络与行业的数据中心相连;在数据中心放置VPN服务器,与各网点的无线路由器进行VPN连接;修改现有网络中各设备的网络配置,利用移动网络进行数据通信。其适用场合包括: 银行:营业网点、ATM机、pos机; 医院:医保中心联网、流动救护车; 保险:保险公司网点联网; 超市、连锁店:M IS系统互连; 移动场所:电力抢修、治安警车等; 环保:现场监控、联网。

5 总结

本文较为详细地介绍了一种新型无线VPN路由器的设计方法。首先从硬件构造上进行剖析,提供了详细的硬件开发方案。然后重点阐述了软件设计方法,包括操作系统的移植,实现无线网络连接的PPP拨号程序以及实现VPN 的IPSEC应用程序。通过使用本文中所提出的方法,可以很好的满足很多行业的应用需求。
编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • GPRS
    +关注

    关注

    21

    文章

    986

    浏览量

    132714
  • ARM7
    +关注

    关注

    3

    文章

    207

    浏览量

    51729
  • 无线路由器
    +关注

    关注

    9

    文章

    352

    浏览量

    33031
  • VPN
    VPN
    +关注

    关注

    4

    文章

    303

    浏览量

    31615
  • 路由器
    +关注

    关注

    22

    文章

    3890

    浏览量

    118855
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    多台IR615如何通过vpn进行远程管理?

    现有多台IR615路由器,希望将其配置为vpn客户端,连接云服务vpn服务端 工程师远程连接云服务对IR615进行管理 在IR615中
    发表于 08-06 07:21

    如何将你手中的树莓派变身为强大路由器

    将树莓派用作路由器,是一种经济高效且可定制的解决方案,能满足从基础家庭网络到专业设置的各种网络需求。树莓派是一款小型单板计算机,配备必要的硬件和软件后即可作为路由器使用。DIY
    的头像 发表于 07-07 16:30 2864次阅读
    如何将你手中的树莓派变身为强大<b class='flag-5'>路由器</b>?

    启明智显ZX7981PA无线路由器方案,一机搞定家庭、企业网络需求!

    路由器信号弱?覆盖不足?功能受限?启明智显ZX7981PA无线路由器解决你的困扰!专业无线路由器方案,打造高速、稳定、灵活网络环境!核心硬件
    的头像 发表于 05-09 18:05 706次阅读
    启明智显ZX7981PA<b class='flag-5'>无线路由器</b><b class='flag-5'>方案</b>,一机搞定家庭、企业网络需求!

    路由器的散热解决方案

    数据传输时易形成局部热点,导致信号稳定性下降。更严峻的是,设备轻薄化趋势使内部空间高度压缩,传统散热方案如金属散热片与风扇组合已难以平衡效率与体积。 例如,某企业级路由器曾因CPU高温降频导致性能衰减,拆解
    发表于 04-29 13:57

    Banana Pi BPI-RV2 RISC-V 路由器开发板发售, 全球首款RISC-V路由器

    BPI-Wifi5 低成本Wifi5 路由器合作之后的又一力作,为全球开发者与商业客户提供基于RISC-V的路由器解决方案,支持OpenWrt系统。 Banana Pi BPI-RV2
    发表于 04-18 14:06

    工业路由器 VS 无线路由器:硬汉与暖男的 “职场生存法则”

    一、路由器界的 “双胞胎”?实则天差地别! 你可能觉得路由器都长一个样 —— 方盒子、几根天线、闪着小灯。但如果把工业路由器无线路由器放在一起,就像让特种兵和文艺青年比拼体能,看似相
    的头像 发表于 04-03 10:05 642次阅读
    工业<b class='flag-5'>路由器</b> VS <b class='flag-5'>无线路由器</b>:硬汉与暖男的 “职场生存法则”

    工业路由器和家用路由器区别

    ,揭示工业级设备在复杂环境中的独特价值。 一、硬件设计与环境适应性差异 工业路由器采用金属外壳与无风扇散热设计,具备IP30以上防护等级,可抵御粉尘、湿气及物理冲击。其元器件经过工业级筛选,支持-40℃至75℃宽温工作范
    的头像 发表于 03-27 16:20 760次阅读

    汤诚科技路由器全套应用解决方案

    )与广域网(如互联网)之间的连接。 现代路由器通常具备无线功能,能够为多个设备提供Wi-Fi连接。用户可以通过无线网络方便地访问互联网和内部资源。此外,路由器还支持网络地址转换(NAT
    的头像 发表于 03-10 16:34 544次阅读
    汤诚科技<b class='flag-5'>路由器</b>全套应用解决<b class='flag-5'>方案</b>

    桥接无线路由器设置方法

    桥接无线路由器是扩展无线网络覆盖范围的有效方法,以下是桥接无线路由器设置的详细步骤: 一、准备工作 检查设备 : 确保你已经拥有两台支持WDS(无线分布式系统)功能的
    的头像 发表于 02-01 15:53 4955次阅读

    无线路由器终端是如何工作的?

    什么是无线路由器终端?     无线路由器终端 ,简而言之,是一种能够利用无线技术将多个计算机、移动设备和其他设备连接到局域网(LAN)或广域网(WAN)的设备。它不仅内置了路由器功能
    的头像 发表于 01-17 17:47 1630次阅读
    <b class='flag-5'>无线路由器</b>终端是如何工作的?

    无线网关和路由器的区别

    在现代家庭和企业网络中,无线网关和路由器是两个不可或缺的设备。它们都扮演着连接互联网和内部网络的关键角色,但各自有着不同的功能和应用场景。 无线网关(Wireless Gateway) 无线
    的头像 发表于 01-02 16:02 2144次阅读

    5G/4G工业路由器和普通路由器的区别

    在现代网络设备中,路由器是不可或缺的组成部分。无论是在家庭网络中,还是在企业或工业环境中,路由器都发挥着至关重要的角色。然而,市场上的路由器种类繁多,尤其是“工业路由器”和“普通
    的头像 发表于 12-26 14:23 1769次阅读
    5G/4G工业<b class='flag-5'>路由器</b>和普通<b class='flag-5'>路由器</b>的区别

    如何远程登录路由器

    路由器放置在机房、弱电箱等不方便直接操作的位置,或当网络出现故障或者需要远程协助时远程登录路由器可以极大的解决问,本期重点说明远程登录路由器的方法,供各位参考使用: 首先 ,需要确保家里的
    的头像 发表于 12-18 12:01 1554次阅读
    如何远程登录<b class='flag-5'>路由器</b>

    Bananna Pi开源社区联合矽昌通信打造开源的低成本Wifi5路由器解决方案

    香蕉派 BPI-Wifi5 路由器采用矽昌SF19A2890S2芯片方案设计。它是一款高性能无线路由器,适用于小微企业、家庭和其他网络环境。Banana Pi开源社区提供整体解决方案
    发表于 12-12 17:15

    Bananna Pi开源社区联合矽昌通信打造开源的低成本Wifi5路由器

    香蕉派 BPI-Wifi5 路由器采用矽昌SF19A2890S2芯片方案设计。它是一款高性能无线路由器,适用于小微企业、家庭和其他网络环境。Banana Pi开源社区提供整体解决方案
    的头像 发表于 12-12 17:10 2008次阅读
    Bananna Pi开源社区联合矽昌通信打造开源的低成本Wifi5<b class='flag-5'>路由器</b>