OpenWrt——神奇的路由系统
鉴于最近大家对这个系统比较感兴趣而且疑问很多所以本渣就整理下我对这个系统的理解和最实用的802.1x认证的理解。还望大家多多互相交流。
如果您时间紧张直接看最后的步骤,时间充裕的请仔细阅读,理解。
OpenWrt是一个基于linux内核的路由器操作系统。这就和我们最常用的windows系列的操作系统一样,至于为什么路由器不用windows系统我的理解是路由器不论是CPU还是内存都比较小 而且路由器需要的是长期稳定的工作 再加上linux自身的轻量级和自身防火墙(与UNXI相比)等等方面的优势所以绝大多数路由器或者说网络硬件设备都是linux内核的。整个使用路由器的过程是这样的:
1.选取一个可以支持OpenWrt的路由器,主要是看CPU型号,内存之类大部分可以自行更换,常用的有BCM63XX、AR71XX、RT305等等。具体可以参看 https://dev.openwrt.org.cn/wiki/platforms
这里有读者就想问了为什么别的路由器不支持OpenWrt呢或者说是不是所有的路由都支持OpenWrt呢? 答案是否定的,首先这个系统需要一定的硬件开销 很早之前的路由硬件已经不足以支持这个系统正常使用 再或者说某些路由过于陈旧现在的网络环境已经很少见到了 所以OpenWrt开发者就没有针对这些路由做相关开发。
2.刷机,也就是把OpenWrt系统刷到路由器上,这个我们电脑装XP或者WIN7一个道理。这点也是新手最难上手的,一个操作不慎就会导致路由器刷死、刷砖的情况。个人建议提前准备好TTL线(原因如下:TTL线刷机比较稳定 不容易刷死,TTL也是救砖利器)。TTL搞不定就可以考虑使用JTAG来救砖,不过鉴于二手路由都比较便宜可以考虑再买一个。
3.选取合适的拨号程序。了解现在使用的802.1x认证客户端的版本号,再搜寻合适的拨号程序(有很多代替的拨号程序 在此我只介绍njit)。 注意搜到的njit一定要对应你的路由的CPU型号。有可能你会直接搜到对应版本的njit的安装包 这样最省事直接下载好再传到路由器flash里配置好账户密码等信息就可以使用了,还有种情况就是搜到的是源码没有对应的安装包 这时就需要自己编译。可以找一个懂的人帮你或者自己来,建议新手使用虚拟机安装Ubuntu系统编译njit。具体过程可以参看 https://dev.openwrt.org.cn/wiki/DevelopmentIndex 编译好之后用ftp之类的工具取回来再传到路由器flash里就好了。
4.配置参数。这个就很简单了,正常情况只要配置好账号和密码就可以使用。
整个过程的一些特殊情况:
1.自行编译的时候最好直接使用真机来编译,虚拟机难免会出现各种奇葩的问题(不推荐新手使用真机)。
2.你发现你版本号没有对应的代替拨号软件。那真是恭喜你 哈哈 你使用的软件版本过高开发人员还没有推出相应的代替软件。在这种情况下有两条路你可以选:①等开发人员出对应版本的拨号软件 不过可能等着出来的时候你的软件也会变成更高版本的哦。②自行编写代替软件。关于这点我建议几点:抓包、反汇编(不过这是违法的哦 自己小心查水表)、一定的程序编写能力。
3.你发现对应的拨号软件不能用或者会出现经常掉线的情况。不能用最大可能就是你们的ISP更换了秘钥(至于怎么办 哦呵呵大家都懂的…),掉线的话应该是心跳包过不去 或者是有一个非常奇怪的数据包过不去(我有遇到过这种情况,有一个不同的EAP认证包因为算法不对 而且服务器也采用了这个包作认证)。
待续吧 先写这么多
OpenWrt——神奇的路由系统的更多相关文章
- x86主机搭建家庭智能路由系统 ---- 设计篇
组件简介 Proxmox: 基于Debian的虚拟化系统,支持OpenVZ和KVM. pfSense: 基于FreeBSD的开源路由系统. FreeNAS: 开源NAS系统. shadowsocks: ...
- python 全栈开发,Day120(路由系统, 实例化Flask的参数, 蓝图(BluePrint), before_request after_request)
昨日内容回顾 1.Flask: from flask import Flask app = Flask(__name__) # 从源码中可以看出,Flask集成的run方法是由werkzeug中的ru ...
- Django 框架篇(四) : 视图(view)详解 以及 路由系统(url)
|--Django的View(视图) |-- CBV和FBV: |-- 给视图增加装饰器: |-- request对象: |-- response对象: |-- Django的路由系统(url): | ...
- VBox 虚拟机安装 Openwrt 做旁路由
VBox 虚拟机安装 Openwrt 做旁路由 需求:开个虚拟机做旁路由,电脑把网关设置成旁路由地址,用它跑个上网或其他什么东西. 安装及配置过程简述 这件事流程很简单,总结起来主要有以下几点: 安装 ...
- ASP.NET Core的路由[2]:路由系统的核心对象——Router
ASP.NET Core应用中的路由机制实现在RouterMiddleware中间件中,它的目的在于通过路由解析为请求找到一个匹配的处理器,同时将请求携带的数据以路由参数的形式解析出来供后续请求处理流 ...
- ASP.NET Web API路由系统:路由系统的几个核心类型
虽然ASP.NET Web API框架采用与ASP.NET MVC框架类似的管道式设计,但是ASP.NET Web API管道的核心部分(定义在程序集System.Web.Http.dll中)已经移除 ...
- ASP.NET Web API路由系统:Web Host下的URL路由
ASP.NET Web API提供了一个独立于执行环境的抽象化的HTTP请求处理管道,而ASP.NET Web API自身的路由系统也不依赖于ASP.NET路由系统,所以它可以采用不同的寄宿方式运行于 ...
- .NET/ASP.NET Routing路由(深入解析路由系统架构原理)
阅读目录: 1.开篇介绍 2.ASP.NET Routing 路由对象模型的位置 3.ASP.NET Routing 路由对象模型的入口 4.ASP.NET Routing 路由对象模型的内部结构 4 ...
- 探索ASP.NET MVC框架之路由系统
引言 对于ASP.NET MVC的路由系统相信大家肯定不陌生.今天我们就深入ASP.NET的框架内部来看一下路由系统到底是怎么通过我们给出的地址(例如:/Home/Index)解析出Controlle ...
随机推荐
- 【noiOj】p8207(233)
07:和为给定数 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 给出若干个整数,询问其中是否有一对数的和等于给定的数. 输入 共三行:第一行是整数n(0 & ...
- 如何将一个对象存到网页中并在js中使用
需求:希望在js中使用Controller传过来的对象,特别是对象里存有list的数据. 不希望循环使用隐藏域. 解决办法:在View中使用Json.Net序列化: @{ string jsonStr ...
- CodeForces 670D1 暴力或二分
今天,开博客,,,激动,第一次啊 嗯,,先来发水题纪念一下 D1. Magic Powder - 1 This problem is given in two versions that diff ...
- AE唯一值符号化的流程以及过程
唯一值符号化的流程以及过程(转) 一.获取ServerStyle库中的符号 Style符号库在ArcGIS Engine开发中对应的是ServerStyle符号库,可以通过专门的转换程 ...
- script标签不带属性与带async、defer的区别
<script> 当页面解析到script标签时,会停止解析并下载对应的脚本,并马上执行,执行完毕后再继续解析页面 <script async> async 在下载脚本的同时不 ...
- Search Ads 已经在美国区上线 - iOS 移动开发周报(46)
Search Ads 已经在美国区上线 - iOS 移动开发周报(46) 新闻 Search Ads 上线 苹果的 AppStore 搜索广告终于 正式上线了 https://developer.ap ...
- 《深入.NET平台和C# 编程》内测纠错记录
1. .NET框架的核心组件包括(BD)(选择两项) A.CTS (通用类型系统) B.CLR (公共语言运行时,.NET的基础) C.CLS (公共语言规范) D.FCL (框架类 ...
- [LintCode] Parking Lot 停车场问题
Design a parking lot. see CC150 OO Design for details.1) n levels, each level has m rows of spots an ...
- C++ substr() 和 Java substring() 区别
Java和C++中都有关于子字符串的操作,C++中是substr(),Java中是substring(),两者的用法上稍有些区别,首先针对只有一个参数的情况: s.substr(start) 和 s. ...
- asp.net 修改/删除站内目录操作后会导致Session丢失
http://www.jb51.net/article/21770.htm http://blog.chinaunix.net/uid-7425507-id-134216.html 在Web项目中使用 ...