x86路由解决方案.docx

上传人:b****7 文档编号:10440178 上传时间:2023-02-11 格式:DOCX 页数:10 大小:23.67KB
下载 相关 举报
x86路由解决方案.docx_第1页
第1页 / 共10页
x86路由解决方案.docx_第2页
第2页 / 共10页
x86路由解决方案.docx_第3页
第3页 / 共10页
x86路由解决方案.docx_第4页
第4页 / 共10页
x86路由解决方案.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

x86路由解决方案.docx

《x86路由解决方案.docx》由会员分享,可在线阅读,更多相关《x86路由解决方案.docx(10页珍藏版)》请在冰豆网上搜索。

x86路由解决方案.docx

x86路由解决方案

x86,路由解决方案

  篇一:

用OPENWRTX86打造无线路由

  用OPENWRTX86打造无线路由+BT下载机

  本帖最后由99010于XX-12-916:

45编辑

  前言:

  玩路由器也有一段时间了,受限无线路由器的性能(CPU慢、内存小、USB读写速度,当然高端的不在此列,不过高端也是高价格),脱机下载总是不能满足要求,所以就折腾小主机来下载。

小主机上装过小毛驴BT系统,满足基本要求了,其间又折腾小毛驴增加路由功能,看着教程也做成功了,接着买了无线网卡,打算加上无线AP功能,无奈WPA加密始终搞不定(小区里面N多蹭网高手)。

接着把目光投向OPENWRT,于是就有了下面这段文字。

当然了,本人也是接触LINUX不久,很多东西都是现学现卖,有不对的地方请多多指教。

  正文:

  开工前按照惯例说明硬件环境:

ITX主板,CF转接卡,128MCF卡,120G硬盘,瑞银USB无线网卡用到的软件:

OPENWRTX86版本(

  1.安装OPENWRTX86

  a.读卡器装上CF卡,接到WIN的电脑上。

  b.把下载的OPENWRTX86镜像文件(我下载的是)复制到physdiskwrite目录。

  c.在命令提示符里面cd到physdiskwrite目录,再输入

  1.-u

  ,这时候会出现一个大段的提示那你选择要把镜像安装到哪个硬盘(要仔细看好了,一般来说电脑上只有一个硬盘的情况下,硬盘是0,CF卡是1,千万别选错了,不然。

嘿嘿。

),按下1,会有个提示是否写入,选y。

等待一段时间就安装完了。

  2.初步设置

  a.把转接卡装上ITX主板,接好电源、网线,开机。

  b.在WIN的电脑上ping-t,有数据出现就可以用IE登录了(这里需要注意的是,刚安装好的OPENWRT系统默认IP是,建议没改IP前不要接上路由,以免IP地址冲突),

  输入帐号root密码admin,进入管理界面把密码及IP改一下,顺便填上网关、DNS,记得点保存。

c.接上路由。

  3.进阶设置

  a.用PUTTY登录OPENWRTX86,先update:

  1.opkgupdate

  安装USB驱动包:

1.opkginstallkmod-usb-corekmod-usb-ohcikmod-usb-seriallibusbkmod-usb-acmchatcomgtusb-modeswitch

  安装硬盘格式包(请选择需要的来安装,不需要的可以不装)

  1.opkginstallkmod-fs-cifskmod-fs-ext3kmod-fs-ext4kmod-fs-msdoskmod-fs-nfs

  kmod-fs-nfsdkmod-fs-ntfskmod-fs-xfs

  安装fdisk

  1.opkginstallfdisk

  检查下硬盘

  1.fdisk-l

  在root目录新建一个文件夹

  1.mkdirvideos

  给文件夹权限

  1.chown777/root/videos

  把120G硬盘挂载到这个文件目录(这个硬盘事先分好一个区并格式化为EXT3)

  1.mount/dev/hdb1/root/videos

  为了方便,把OPENWRT的web界面换成webif

  1.opkgremove-recursiveluci-*

  1.opkginstallwebifwebif-lang-zh

  安装无线网卡驱动(我的无线网卡是瑞银,请按照你自己的来安装)

  1.opkginstallkmod-zd1211rw

  安装完应该可以在web界面可以看到无线网卡(好像要重启一下才可以看到)

  先写到这里,有空在继续

  篇二:

最常见的五种开源路由器固件测评

  最常见的五种开源路由器固件测评

  除了智能手机外,路由器和无线接入点无疑是最常被破解和修改的消费级设备。

一方面破解这些设备较为简单,另一方面破解、修改设备参数后能带来一系列好处,比如拥有更多的特性,改善路由功能,加强安全性,而且破解后还能配置原厂固件通常不允许修改的参数(例如天线输出功率)。

  五种最常见第三方固件的测评,重点介绍它们所提供的功能、最适合的用户群,其中有专为嵌入式硬件或特定路由器而设计的,有设计成与硬件无关的解决方案的,也有专为x86设备设计的。

  一、DD-WRT:

支持广泛、功能全面

  DD-WRT是一款比较受欢迎的路由器固件,青睐它的不仅有业余爱好者和破解高手,还有众多路由器厂商。

代表性产品是XX年生产的LinksysWRT54G路由器,该路由器基于Linux固件版本,核心软件采用GPL许可方式。

巴法络公司(Buffalo)也使用DD-WRT,作为其多款家用和准专业级消费路由器产品的固件。

  支持的硬件:

DD-WRT支持博通、ADM、Atheros以及Ralink等厂商的芯片组,不过这些芯片组的设备并非全部自动与之兼容。

有些设备可能需要破解才可以使用,而有些可能根本就无法使用。

  功能特性:

DD-WRT提供了消费级路由器通常所不具备的众多强大的功能,比如ChilliSpot(用于建立商用级无线热点)、AnchorFreeVPN系统以及支持NoCat无线社区网络系统。

另外,DD-WRT有多个版本,有只支持最基本功能的2MB大小的“微型”版本,有支持拥有各种功能的8MB大小的“大型”的版本,这使得DD-WRT能够应用于各种不同级别的设备中。

  局限性:

DD-WRT的核心版本不经常更新。

如果你想要更新较快的版本,只能选择临时的测试版,或者选择由厂商提供的定期修订的版本。

  点评:

DD-WRT是大多数用户的最佳选择。

其预装在很多品牌路由器中,很容易去掌握、操纵,包括调整、更新、升级等。

  二、Tomato:

衍生版本众多

  Tomato原本是作为博通路由器的备用固件而设计的,它因图形用户界面(GUI)、带宽监测工具以及其专业级、可调整的功能特性而备受关注。

  支持的硬件:

硬件支持方面与DD-WRT大同小异,不过用户要特别注意有哪些版本与你所用的硬件设备兼容。

  功能特性:

Tomato功能与DD-WRT比较相似,比如拥有复杂精巧的服务质量(QoS)控制、支持telnet或SSH访问命令行接口(CLI)以及Dnsmasq等。

不过,Tomato采用了特别的设计方法,因此,在配置改动后一般不需要重启,而配置改动后重启也是用户经常抱怨的一个方面(无论是商用版还是开源版)。

另外,还有大量由Tomato社区开发的定制脚本,比如将路由器的系统日志重定向至磁盘或另一台计算机、备份路由器的设置等。

  Tomato有一大批派生和衍生版本,其中最主要的是TomatoUSB,该版本之所以有这样的名称,是因为它支持拥有USB端口的路由器,因而其允许挂载可移动介

  质;Toastman则可以编译很多Tomato固件版本的修改版,比如经过改进的服务质量(QoS)模块和IP流量客户端监测工具;Teaman(因其谷歌代码项目名称“tomato-sdhc-vlan”而得名)增添了对安全数字高容量(SDHC)以及MMC介质存储的支持、虚拟局域网(VLAN)标记以及试验性的MultiSSIDWeb界面。

  除此之外,还有TomatobyShibby、TomatoRAF以及其他许多派生版本,其中每个版本都有自己的特点和功能特性方面的改动。

  局限性:

Tomato的修改版之所以这么多,原因很简单,原始版本的代码自XX年后就再没有更新。

为此,任何更新或新功能特性的出现都归功于上面所提到的替用版本,因此,这些版本同样没法保证这些项目都会不间断地更新。

  此外,由于Tomato衍生版本数量众多,用户很难选择最适合的那一个版本。

不过,由于Tomato的文档内容翔实丰富,其中详细介绍了哪些设备适合哪些版本,所以为你的硬件选择合适的版本应该也不是太难。

  点评:

Tomato适合于十分熟悉路由固件的用户。

Tomato用起来与DD-WRT差不多,都需要确保你有合适的硬件,并且严格按照固件刷新指示来操作。

不过,Tomato并不作为商用预装版来使用,所以别指望它像DD-WRT那样出现在现成的路由器中。

  三、OpenWRT:

部署复杂、灵活性高

  OpenWRT路由器固件版本较为成熟,用户可以针对各自的硬件配置下载相对应的程序包,并使用相关工具对硬件进行修改。

这样虽然加大了部署过程的复杂性,也为用户提供了极大的灵活性。

另外,你也可以使用针对常见硬件类型和路由器平台的OpenWRT的各种预制版本,包括使用博通和Atheros芯片组的各种硬件。

OpenWRT的开发者建议用户从现成版本入手,等掌握了一定的基础后,再学习如何推出个性化版本。

  支持的硬件:

支持50多种硬件平台和10种处理器架构,包含从ARM微架构到64位x86架构。

另外,在选购专门与OpenWRT兼容的硬件时,还会附有购买指南,帮助你选择适合的硬件设备。

  功能特性:

除了对硬件和平台的广泛支持外,OpenWRT还支持优化的链路状态路由(OLSR)网状网络协议,该协议使得用户可以利用多个OpenWRT设备,建立临时的移动网络。

而且,软件一旦部署到位,不需要重新刷新固件,就可以进行修改。

另外,用户可以根据需求,通过一个内置的程序包管理系统,添加或删除程序包。

  OpenWRT也有各种派生版本,其中有些版本适用于非常特殊的场合。

比如,Cerowrt版本当初是作为Bufferbloat项目的一部分而开发的,以解决局域网和广域网中的网络瓶颈问题;而FreeWRT比OpenWRT核心版本更适合开发者;Gargoyle则提供了根据主机设定带宽上限的功能,而这是其重要功能之一。

  局限性:

OpenWRT最大的优点也恰恰是其最大的缺点。

用户最好真正明白自己到底在做什么,如果你只是想把原厂路由器固件换成更新一点的固件,最好避而远之。

  点评:

OpenWRT最适合专家型人群。

该固件适合于希望操作方面的限制尽量少、想大胆使用不同寻常的硬件,以及擅长自行推出个性化Linux发行版本的用户。

  四、M0n0wall:

支持的芯片数量较少

  相比文中介绍的其他固件版本,M0n0wall的理念最接近OpenWRT,它是可作为防火墙或路由器来使用的FreeBSD版本。

  支持的硬件:

M0n0wall运行在至少64MB内存、16MB闪存大小的嵌入式硬件系统中。

另外,由于BSD驱动程序库提供了很强的兼容性,因此其可与常见的PC硬件兼容。

  功能特性:

支持所有常见的路由器功能,包括流量整形、QoS工具以及高端网络上的一些功能,比如VLAN标记和轮询。

M0n0wall启动时间很短,一般30秒内即可进入到闪存型硬件的工作系统。

另外,其精巧的Web界面提供了直接通过浏览器升级固件的功能。

  M0n0wall是众多派生版本的基础。

其中最有名的衍生版本是PfSense,它适用于成熟的PC式系统,而不是嵌入式系统。

如果你打算把PC改造成路由器,首先应该使用Pfsense,而不是M0n0wall,因为Pfsense是直接为PC硬件开发的版本,可以极大地缩减用户工作量。

另一个版本M0n0wall-mod增添了新的广域网选项,比如能够针对单独列举的广域网接口配置DHCP和PPTP。

  局限性:

M0n0wall的一个缺点是,它支持的无线芯片组数量很少。

话虽如此,不过任何基于Atheros芯片组的硬件都可以支持。

  点评:

把旧PC硬件改造成防火墙或路由器的用户。

如果你在考虑把嵌入式硬件路由器设计成多用途的网络设备,M0n0wall是个不错的选择。

  五、Vyatta:

x86设备专用

  Vyatta是一款基于Linux的网络操作系统,一般在核心开源版和商用版中使用。

用户可以通过软件订购或购买硬件设备的方式获得商用版。

Vyatta通常部署为小型办公室、分支机构的网关、VPN集线器、数据中心之间或者数据中心与云之间的网桥。

  支持的硬件:

与OpenWRT和M0n0wall/PfSense一样,Vyatta也有支持32位x86PC硬件的版本,任何这类系统与Vyatta都可以改造成高效的路由器、防火墙和网络服务设备。

  功能特性:

一般性的功能Vyatta都具备。

而且其在今年3月的版本中还新添了一些功能,包括以图形化方式显示统计数字的GUI和仪表板(仅限于商用版)、符合RFC的虚拟路由器冗余协议(VRRP)、经过改进的连接跟踪和日志记录子系统,以及状态检查防火墙等。

另外,Vyatta还增添了支持VMwarevSphere5模块的功能。

  局限性:

和这次测评的其他产品相比,Vyatta的最大局限性在于,它是完全为x86设备所设计的,而且不是一般的x86设备,而是存储容量较大(至少1GB)的设备。

简而言之,Vyatta最适合成熟的PC。

此外,虽然Vyatta有64位版本,但是目前还处于测试阶段,不适用于生产系统。

  另外,包括Web界面在内的许多关键功能只出现在商用版中。

其中命令行接口是针对网络管理员设计的,对一般的用户来说可能是个障碍,目前其商用版提供30天的免费试用。

  点评:

Vyatta是一款商务级产品,其路由和安全功能超出大多数小型办公室或家庭办公室的需求。

话虽如此,如果有用户想使用基于x86的PC硬件来搭建网络设备――尤其是用于大型环境,会从Vyatta中找到所需的一切功能。

  注:

  ?

DD-WRT的商用版本自带于巴法络及其他一些硬件厂商的路由器中。

  ?

TomatoRAF是Tomato固件的众多分支版本之一。

原始版本方面的开发止步后,其

  他分支版本就接过了接力棒。

  ?

Gargoyle是OpenWRT的众多变种之一,专门提供特别的带宽上限功能。

  ?

M0n0wall和派生版本PfSense都基于FreeBSD,是为嵌入式硬件和成熟的x86系统

  而设计的。

  ?

Vyatta基于Web的配置面板是商用版最重要的实用特性之一,开源核心版为这款基

  于x86的网络操作系统保留了所有的底层功能。

  篇三:

x86平台三种不同的虚拟化之路

  x86平台三种不同的虚拟化之路

  从1998年开始,VMware创造性的将虚拟化引入x86平台,通过二进制翻译(BT,BinaryTranslation)和直接执行的模式,让x86芯片可以同时运行不同的几种操作系统,并且确保性能、稳定性和安全性。

从那时起,数以万计的企业已经从虚拟化中获得了极大的收益。

但是,关于虚拟化的几种实现方式,引起了很多误解,为此,希望通过此文澄清几种虚拟化道路的优缺点,以及VMware公司对几种虚拟化之路的支持情况。

图1总结了x86虚拟化技术的进展情况,从VMware的BT最近的内核部分虚拟化和硬件辅助虚拟化。

  1.x86虚拟化概览

  所谓x86服务器的虚拟化,就是在硬件和操作系统之间引入了虚拟化层,如图2所示。

虚拟化层允许多个操作系统实例同时运行在一台物理服务器上,动态分区和共享所有可用的物理资源,包括:

CPU、内存、存储和I/O设备。

  图2.x86架构上的虚拟化层

  近年来,随着服务器和台式机的计算能力急剧增加,虚拟化技术应用广泛普及,很多用户已经在开发/测试、服务器整合、数据中心优化和业务连续性方面证实了虚拟化的效用。

虚拟架构已经可以将操作系统和应用从硬件上分离出来,打包成独立的、可移动的虚拟机,从来带来了极大的灵活性。

例如:

现在可以通过虚拟架构,让服务器7x24x365运行,避免因为备份或服务器维护而带来的停机。

已经有用户在VMware平台上运行3年而没有发生任何的停机事件。

  对于x86虚拟化,有两种常见的架构:

寄居架构和裸金属架构。

寄居架构将虚拟化层运行在操作系统之上,当作一个应用来运行,对硬件的支持很广泛。

相对的,裸金属架构直接将虚拟化层运行在x86的硬件系统上,可以直接访问硬件资源,无需通过操作系统来实现硬件访问,因此效率更高。

VMwarePlayer、ACE、Workstation和VMwareServer都是基于寄居架构而实现的,而VMwareESXServer是业界第一个裸金属架构的虚拟化产品,目前已经发布了第四代产品。

ESXServer需要运行在VMware认证的硬件平台上,可以提供出色的性能,完全可以满足大型数据中心对性能的要求。

  为了更好的理解x86平台虚拟化,在此简要介绍一下部件虚拟化的背景。

虚拟化层是运行在虚拟机监控器(VMM,VirtualMachineMonitor)上面、负责管理所有虚拟机的软件。

如图3所示,虚拟化层就是hypervisor(管理程序)直接运行在硬件上,因此,hypervisor的功能极大地取决于虚拟化架构和实现。

运行在hypervisor(管理程序)上的每个VMM进行了硬件抽取,负责运行传统的操作系统。

每个VMM必须进行分区和CPU、内存和I/O设备的共享,从而实现系统的虚拟化。

  图3.Hypervisor通过VMM管理虚拟机

  2.CPU虚拟化

  根据原来的设计,x86上的操作系统需要直接运行在裸机上,因此默认拥有和控制所有的硬件。

如图4所示,x86架构提供了四种特权级别Ring0、1、2和3,通过这四种级别来控制和管理对硬件的访问。

通常,用户级的应用一般运行在Ring3级别,操作系统需要直接访问内存和硬件,需要在Ring0执行它的特权指令。

为了虚拟x86架构,需要在操作系统下面运行虚拟化层,由虚拟化层来创建和管理虚拟机,进行共享资源分配。

而有些敏感指令不能很好的进行虚拟化,它们在Ring0以外级别执行时,会出现不同的结果。

如何在运行时捕获和翻译这些敏感指令成为x86虚拟化的一大挑战,使得x86架构虚拟化最初是不可能的。

  图4.x86架构虚拟化前的特权级别

  VMware在1998年成功克服了这个难点,开发出了BT技术,从而将操作系统移到Ring3的用户模式运行,而VMM运行在Ring0级别实现隔离和性能提升。

尽管VMware通过BT技术实现的全虚拟化已经成为默认的业界标准,超过2万家的VMware用户都在这种技术的支持下可靠、高效运行,但整个业界还没有统一定义的行业标准,因此每家公司都在自由发挥,来试图解决这个技术难点,不同的方案都有自己的优势和劣势。

  到今天为止,有三种典型的技术来解决x86虚拟化的难题:

  通过BT实现的全虚拟化

  操作系统帮助下的虚拟化,也叫半虚拟化

  硬件帮助的虚拟化

  a.技术1–通过BT实现的全虚拟化

  VMware可以通过BT和直接执行技术的结合来实现任何x86操作系统的虚拟化。

如图5所示,BT可以翻译核心指令来代替那些不能虚拟化的指令,通过翻译后的指令直接访问虚拟硬件。

同时,所有用户级指令还是可以直接在CPU上执行来确保虚拟化的性能。

每个VMM为每个虚拟机提供完整的硬件支持服务,包括虚拟BIOS、虚拟设备和虚拟内存管理。

  图5.BT实现x86架构虚拟化

  BT和直接执行技术的结合实现了全虚拟化,此时客户操作系统可以通过虚拟化层从物理硬件上完全抽取出来,客户操作系统感知不到是否发生了虚拟化,完全不需要进行修改。

全虚拟化是迄今为止唯一不需要硬件或操作系统协助来进行敏感和特权指令虚拟化的技术,Hypervisor(管理程序)可以翻译所有的操作系统特权指令,并保存在缓存里备用,而用户级的指令完全可以全速直接执行。

  全虚拟化提供了最好的虚拟机隔离和安全性,简化了客户操作系统迁移和移植能力。

VMwareESXServer就是通过全虚拟化技术来实现的最好案例。

  b.技术2–半虚拟化

  该文中我们将Para-Virtualization翻译为半虚拟化。

Para是来自希腊语的英语前缀,意指“和”、“在边上”、“一道”等。

因此,“半虚拟化”指得是客户操作系统和hypervisor之间的通讯如何提高性能和有效性。

如图6所示,半虚拟化需要修改操作系统内核,替换掉不

  能虚拟化的指令,通过超级调用(hypercall)直接和底层的虚拟化层hypervisor来通讯,hypervisor同时也提供了超级调用接口来满足其他关键内核操作,比如内存管理、中断和时间保持。

  图6.操作系统协助的x86架构虚拟化

  半虚拟化和全虚拟化不同,全虚拟化不需要修改上面的操作系统,敏感的操作系统指令直接通过BT进行处理。

半虚拟化的价值在于降低了虚拟化的损耗,但是半虚拟化的性能优势很大程度上依赖于运行的负载。

由于半虚拟化不支持未修改的操作系统(例如:

WindowsXX/XP),它的兼容性和可移植性差。

在实际的生产环境中,半虚拟化也会导致操作系统支持和维护的艰难,因为半虚拟化往往要深入修改操作系统内核。

开源的Xen项目是半虚拟化的代表,它可以通过修改Linux的内核来实现CPU和内存的虚拟化,通过定制的操作系统驱动来实现I/O的虚拟化。

  为了实现全虚拟化,需要构建复杂的BT技术,这往往比直接修改客户操作系统来启用半虚拟化更艰难。

VMware实际上已经在产品中使用了半虚拟化的一些技术,来构建VMwareTools和优化虚拟设备驱动。

VMwaretools服务为VMMHypervisor提供了一个后门服务,用来同步时间、记录日志和客户操作系统关机等。

Vmxnet是半虚拟化的I/O设备驱动程序,它可以和hypervisor共享数据结构。

这些半虚拟化技术的应用改善了设备的兼容能力,提高了数据吞吐速率,降低了CPU利用率。

需要重点澄清的是:

VMwaretools服务和vmxnet设备驱动并不是CPU半虚拟化解决方案,它们紧紧对客户操作系统进行了微小的、非关键

  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1