OpenWRT UCI命令实现无线中继
本文主要功能主要是利用OpenWRT系统uci命令实现无线中继,主要是利用uci程序修改/etc/congfig/目录下的配置文件。实现步骤如下主要分为以下几步:
1) 安装 relayd (opkg安装或者make menuconfig里加载)
opkg update
opkg install relayd
/etc/init.d/relayd enable
2) 开启系统wifi功能
uci set wireless.@wifi-device[0].disabled=0 //开启wifi
uci commit wireless //写入配置到config文件
wifi //wifi重启
3) 创建 wwan 网络接口
uci set network.wwan=interface //network中添加wwan接口
uci set network.wwan.proto=dhcp //开启dhcp服务
uci commit network //写入该配置到配置文件
4) 连接上级路由节点 (我的上级路由ssid:"eSo")
uci set wireless.radio0.channel=11 //改变信道,此配置可省略
uci set wireless.@wifi-iface[0].network=wwan //设置wwan网络接口
uci set wireless.@wifi-iface[0].mode=sta //设置station客户端模式
uci set wireless.@wifi-iface[0].ssid=eSo //需要连接的无线ssid
uci set wireless.@wifi-iface[0].encryption=psk2 //加密方式PSK2
uci set wireless.@wifi-iface[0].key=20130828 //需要连接的ssid 密码
uci commit wireless //写入配置到文件
wifi down //关闭wifi
wifi //启动wifi
5) 设置lan口IP段,设置网关
uci set network.lan.ipaddr=192.168.10.1 //设置本地路由ip,避免与上级路由冲突
uci set network.lan.gateway=192.168.3.1 //设置网关为上上级路由网关
uci set network.lan.dns=8.8.8.8 //设置dns
uci commit network //写入配置到文件
wifi down //关闭wifi
wifi //启动wifi
6) 开启本地DHCP服务器
uci set dhcp.lan.ignore="0" //关闭禁用
uci set dhcp.lan.ra_management="1" //设置
uci commit dhcp //写入配置
7) 防火墙修改
uci set firwall.@zone[0].forward=ACCEPT //访问
uci set firwall.@zone[0].network="lan" //lan
uci set firwall.@zone[1].forward=ACCEPT //访问
uci set firwall.@zone[1].network="wan wwan" //wan wwan接口桥接
8) 创建AP服务端
uci add wireless wifi-iface //创建ap接口
uci set wireless.@wifi-iface[1].device=radio0 //选择radion0设备
uci set wireless.@wifi-iface[1].network=lan //lan口
uci set wireless.@wifi-iface[1].mode=ap // AP模式
uci set wireless.@wifi-iface[1].ssid=RT5350 //AP ssid
uci set wireless.@wifi-iface[1].encryption=psk2 //加密方式
uci set wireless.@wifi-iface[1].key=12345678 //无线密码
uci commit wireless //写入配置
9) 网络重启,使中继生效
/etc/init.d/dnsmasq restart //网络服务重启
/etc/init.d/firewall restart //防火墙重启
wifi down //关闭wifi
wifi //开启wifi
10) 测试
在完成以上配置命令后,系统将会自动连接至指定的无线节点(我的上级路由是eSo),并放出本地AP(RT5350)。
ifconfig查看结果如下:
根据以上可以看到无线wlan0已经连接到了我的上级路由(eSo),并且分配到的IP为192.168.3.13。
接下来测试本地AP连接情况:(使用计算机连接本地无线AP(RT5350))
连接后,电脑分到的IP为:192.168.10.157
此时如果上级路由eSo有网的话,当前连接的RT5350也会连上Internet.
下面是ping 百度结果:
至此,无线中继配置全部完成。
11) 下面是我的/etc/config/目录下面配置文件的结果,以前配置不成功的话可以参考直接利用vim 编辑器修改配置文件就可以。(呵呵,怎么快怎么来...)
network配置文件如下:
firwall配置文件:(只需要关注lan 和 wan 两个端口的配置,即zone[0] 、zone[1])
dhcp配置文件:
wireless配置文件:
ok,敲完,收工...
OpenWRT UCI命令实现无线中继的更多相关文章
- Openwrt无线中继设置并访问外网
Openwrt无线中继设置并访问外网 本篇博文参考来自:http://blog.csdn.net/pifangsione/article/details/13162023 配置目标 主路由器使用AP模 ...
- openwrt 无线中继
参考: https://wiki.openwrt.org/doc/recipes/relayclient 该方法可以实现中继AP,而不需要AP(WDS)模式.中继后,相当于该路由所有的LAN口以及AP ...
- Android手机做无线中继路由器
为什么要拿手机做路由器?因为我现在每天要带着一个火柴盒大小的路由器(703n).它提供了一个f了q的无线网络,电脑,手机,平板等设备连接上这个无线网络之后之后就可以自由上twitter,看youtub ...
- 提升网速的路由器优化方法(UPnP、QoS、MTU、交换机模式、无线中继)
在上一篇<为什么房间的 Wi-Fi 信号这么差>中,猫哥从微波炉.相对论.人存原理出发,介绍了影响 Wi-Fi 信号强弱的几大因素,接下来猫哥再给大家介绍几种不用升级带宽套餐也能提升网速的 ...
- openwrt uci
UCI: Unified Configuration Interface 通用配置接口,主要用于集中控制openwrt的配置文件. 1.uci使用的配置文件一般放置在设备上的/etc/config目录 ...
- 【转载】OpenWrt sysupgrade 命令行更新固件到最新版
OpenWrt sysupgrade 命令行更新固件到最新版 下面我们要使用 sysupgrade 更新固件到trunk最新版. 要注意的是,trunk包含试验的功能,可能不稳定,刷机风险自己承担. ...
- 路由器桥接(WIFI无线中继)设置及摆放位置图解
路由器桥接(WIFI无线中继)设置及摆放位置图解 WIFI实在好用,但它的波覆盖面小.穿透力很差.我们安装时要考虑波的衍射特点,装在衍射效果最佳的位置(居中,室外可绕,避开密封墙).确实无法兼顾的地方 ...
- openwrt无线中继教程
1.设置自己路由lan口的IP地址,网段不能跟上级路由的一样. 2.在无线标签下点击"扫描网络". 3.在新出现的界面中,会列出你附近的无线网络.点击你需要中继的网络右边的&quo ...
- 1 Openwrt无线中继设置并访问外网
https://www.cnblogs.com/wsine/p/5238465.html 配置目标 主路由器使用AP模式发射Wifi 从路由器使用Client模式接受Wifi 从路由器使用Master ...
随机推荐
- Java 第八周总结
1. 本周学习总结 2. 书面作业 1.List中指定元素的删除 1.1 实验总结 list中可以通过list.get(i)来获取具体第几个的元素的值,再通过compareTo来对比 通过in.has ...
- 201521123101 《Java程序设计》第4周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 理解类的继承的概念,明白父与子之间关系的 2. 书面作业 1.注释的应用,使用类的注释与方法 ...
- 戴建钊 201521123023《Java程序设计》第2周学习总结
1. 本周学习总结 (1)String类:字符串连接"+",以前觉得方便但不知其原理,所以在有大量修改字符串操作的时候用得不亦乐乎,既浪费内存,又减缓效率.现在知道用Stringb ...
- 基于socket.io的实时在线选座系统
基于socket.io的实时在线选座系统(demo) 前言 前段时间公司做一个关于剧院的项目,遇到了这样一种情况. 在高并发多用户同时选座的情况下,假设A用户进入选座页面,正在选择座位,此时还没有提交 ...
- Python学习笔记007_图形用户界面[EasyGui][Tkinter]
EasyGui官网:http://easygui.sourceforge.net/ EasyGui最新版:easygui-0.97.rar 小甲鱼根据官网文档翻译之后的中文文档地址: http://b ...
- 交互模式下测试python代码及变量的四则运算
在交互模式下,python代码可以立即执行,所以这很方便我们进行代码测试 1.命令窗口,输入python (如果没配置环境变量则需带python安装目录的绝对路径) >>> 这个就是 ...
- SIT 和 UAT
在企业级软件的测试过程中,经常会划分为三个阶段--单元测试,SIT和UAT,如果开发人员足够,通常还会在SIT之前引入代码审查机制(Code Review)来保证软件符合客户需求且流程正确.下面简单介 ...
- Eclipse插件springsource-tool-suite在线和离线安装步骤
springsource-tool-suite插件是一个基于Eclipse的开发环境,为开发Spring应用程序而定制.它提供了一个即用的环境来实现,调试,运行和部署Spring应用程序,包括Pivo ...
- Android 之异步加载LoaderManager
LoaderManager: Loader出现的背景: Activity是我们的前端页面展现,数据库是我们的数据持久化地址,那么正常的逻辑就是在展示页面的渲染页面的阶段进行数据库查询.拿到数据以后才展 ...
- vue 2 使用Bus.js进行兄弟(非父子)组件通信 简单案例
vue2中废弃了$dispatch和$broadcast广播和分发事件的方法.父子组件中可以用props和$emit().如何实现非父子组件间的通信,可以通过实例一个vue实例Bus作为媒介,要相互通 ...