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 ...
随机推荐
- 201521123105 第七周Java学习总结
1. 本周学习总结 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 以下是ArrayList的contains源代码: public boole ...
- 201521123064 《Java程序设计》第13周学习总结
本次作业参考文件 正则表达式参考资料 1. 本章学习总结 1.1 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. ① InetAddress(IP地址对应的类) InetAd ...
- 201521123121 《Java程序设计》第12周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. Java流(Stream).文件(File)和IO Java.io包几乎包含了所有操作输入.输出需要的类.所有 ...
- jsp+servlet对于单选按钮和复选框取值并且存放到数据库中
index.jsp <form action="index.gj?method=toradio" method="post"> <div al ...
- Mysql中的in和find_in_set的区别?
在mysql中in的使用情况如下: select * from article where 列名 in(值1,值2,值3.....): select * from article where 值1 i ...
- Linux第二篇【系统环境、常用命令、SSH连接、安装开发环境】
系统环境 我们知道Windows的出色就在于它的图形界面那一块,而Linux对图形界面的支持并不是那么友好-其实我们在Windows下对图形界面进行的操作都是得装换成命令的方式的! 当然了,我们在Ub ...
- 纳税服务系统【抽取BaseService、条件查询】
抽取BaseService 到目前为止,我们已经写了三个模块的开发了.我们已经抽取过了BaseAction.BaseDao,我们这次来看看我们的Service接口. UserService /** * ...
- [UWP]分享一个基于HSV色轮的调色板应用
1. 前言 上一篇文章介绍了HSV色轮,这次分享一个基于HSV色轮的调色板应用,应用地址:ColorfulBox - Microsoft Store 2. 功能 ColorfulBox是Adobe 色 ...
- BlockingQueue<> 队列的作用
BlockingQueue<> 队列的作用 BlockingQueue 实现主要用于生产者-使用者队列 BlockingQueue 实现主要用于生产者-使用者队列,BlockingQueu ...
- JavaScript中DOM
概念 什么是DOM 1. 什么是 DOM DOM 的全称是document object model 它的基本思想是将结构化文佳例如HTML xml解析成一系列的节点.就像一颗树一样. 所有的节点和最 ...