一、软件包的安装

1、 olsrd软件包的安装

libpthread_0.9.33.2-1_ar71xx.ipk

olsrd_0.6.6.2-4_ar71xx.ipk

2、 luci的安装

olsrd-mod-jsoninfo_0.6.6.2-4_ar71xx.ipk

luci-lib-luaneightbl_0.12+git-15.037.36195-f1e2a26-1_ar71xx.ipk

luci-app-olsr_0.12+git-15.037.36195-f1e2a26-1_ar71xx.ipk

luci-lib-json_0.12+git-15.037.36195-f1e2a26-1_ar71xx.ipk

3、 olsrd-server的安装

olsrd-mod-nameservice_0.6.6.2-4_ar71xx.ipk

luci-app-olsr-services_0.12+git-15.037.36195-f1e2a26-1_ar71xx.ipk

4、 olsrd-viz的安装

olsrd-mod-txtinfo_0.6.6.2-4_ar71xx.ipk

luci-app-olsr-viz_0.12+git-15.037.36195-f1e2a26-1_ar71xx.ipk

注:如果没法联网,直接通过opkg install安装,则可以直接在menuconfig中加入编译选项,可以按“/”进行查找软件包。

在menuconfig中查找的时候,olsrd-mod-jsoninfo、olsrd-mod-nameservice、olsrd-mod-txtinfo三个ipk包在olsrd选上时也就可以编译进内核了。

二、设置概览(以网络中存在3个节点为例)

每个节点的lan IP可以设置在不同网段,我的设置如下

节点编号

LAN IP

无线AP设置

Ad-Hoc IP

1

172.16.1.11

SC-wifi11

172.16.2.11

2

172.16.1.12

SC-wifi12

172.16.2.12

3

172.16.1.13

SC-wifi13

172.16.2.13

三、具体设置

以节点编号为3的为例子,进行设置

1、 修改lan ip为172.16.1.13;

2、 添加wifi热点SC-wifi13,之后就可以通过无线连接这个节点,进行以下操作;

3、网络 >>无线,点击“添加”

4、信道为6,ESSID为默认OpenWrt,模式为点对点Ad-Hoc,网络创建一个网络mesh,最后点击“保存和应用”,设置效果如下

5、 点击 网络 >>接口,进入到MESH接口设置,协议选择静态地址,ip地址为172.16.2.13,子网掩码为255.255.255,保存和应用,效果如下

6、 防火墙新建一个mesh防火墙,设置如下

7、 进入 服务 >>OLSR IPv4

在接口处选择mesh,效果如下

8、 进入 服务 >>OLSR IPv4 >>Plugins,启用olsrd_jsoninfo.so.0.0,设置如下

四、其他设置

1、其他两个节点也类似的设置,注意lan iP不同,Ad-Hoc的wlan IP要设置在同一网段,三个节点的信道要在同一信道,否则组网无法成功。

2、查看组网状态

进入 状态 >>OLSR >>OLSR-Viz

此时可以相互ping通。

五、更多设置

1、 让电脑也加入这个mesh网络

(1)这时要开启某个多点中继站MPR(MultipointRelay)节点的DHCP服务,例如开启172.16.2.11的DHCP服务,设置:在 网络 >>接口 >>MESH接口 开启DHCP服务。

(2)电脑选择OpenWrt无线信号,进行连接

(3)此时,电脑可以ping通这个网络中的所有节点可以相互ping通,但是在OLSR-Viz中只显示MPR的网络拓扑图。

此时,电脑的浏览器可以都可以登陆到这三个路由的管理界面,输入ip如下表

节点

输入ip

1

172.16.2.11

2

172.16.2.12

3

172.16.2.13

2、 让所有节点都可以上网

(1)开启DHCP的MPR要配置能连接外网,可以直接WAN口连接网线,也可以增加无线为客户端模式。

(2)电脑加入这个mesh网络,过一阵子就可以上外网了。

(3)其他节点的配置

A、进入 网络 >>接口 >>mesh接口

填写网关设置172.16.2.11

此时就可以上外网了,但dns有问题。

B、继续配置dns,填入 114.114.114.114,就可以正常上网了。

设置效果如下

参考:

基于OLSR路由协议的Wireless Mesh Network实验设计_中国论文网

OLSR on OpenWrt - Ubiquiti Wiki

基于OLSR的路由协议实现Ad-Hoc组网的更多相关文章

  1. 【转】基于OLSR路由协议实现Ad-Hoc组网

    一.软件包的安装 1. olsrd软件包的安装 libpthread_0.9.33.2-1_ar71xx.ipk olsrd_0.6.6.2-4_ar71xx.ipk 2. luci的安装 olsrd ...

  2. OFDM、FTTx、SCTP、Ad Hoc、WSN术语简介

    上课提到一些术语,下来查了一下,总结在这里. OFDM: OFDM(Orthogonal Frequency Division Multiplexing)即正交频分复用技术,实际上OFDM是MCM(M ...

  3. 即席查询(Ad Hoc)如何做到又快又稳?

    数字化与数字生态建设,是当前所有企业成长发展的必经之路.随着"加强新型基础设施建设"第一次被写入政府工作报告,5G.人工智能.工业互联网.智慧城市等新型基建彻底激发了数字的价值. ...

  4. SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问

    delphi ado 跨数据库访问 语句如下 ' and db = '帐套1' 报错内容是:SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATE ...

  5. Ad hoc sql

    SQL Server如何启用Ad Hoc Distributed Queries? 2011-08-11 14:53 wangdingbang CSDN博客 字号:T | T   本文主要介绍了SQL ...

  6. SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问

    消息 15281,级别 16,状态 1,第 2 行SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/Open ...

  7. XE7 & IOS开发之开发账号(3):证书、AppID、设备、授权profile的申请使用,附Debug真机调试、Ad hoc下iPA文件生成演示(XCode5或以上版本推荐,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...

  8. XE7 & IOS开发之开发账号(2):发布证书、发布授权profile的申请使用,附Ad hoc真机调试、生成ipa文件演示(XCode所有版本通用,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,以下讨论都是以&q ...

  9. 启用与关闭 Ad Hoc Distributed Queries

    在数据库里执行以下脚本: 启用: exec sp_configure 'show advanced options',1reconfigureexec sp_configure 'Ad Hoc Dis ...

随机推荐

  1. css 纸张效果 666

    css /*内外阴影添加*/ .tool-intro { width: 1020px; height: 100px; margin: 0 auto; margin-bottom: 50px; padd ...

  2. [转]Ubuntu安装Python3.6

    Ubuntu安装Python3.6   Ubuntu默认安装了Python2.7和3.5 输入命令python

  3. [转]使用keepalived搭建主备切换环境

    使用keepalived搭建主备切换环境 时间 2016-09-15 08:00:00 cpper 原文  http://cpper.info/2016/09/15/keepalived-for-ma ...

  4. 设置 SSH 通过密钥登录

    我们一般使用 PuTTY 等 SSH 客户端来远程管理 Linux 服务器.但是,一般的密码方式登录,容易有密码被暴力破解的问题.所以,一般我们会将 SSH 的端口设置为默认的 22 以外的端口,或者 ...

  5. golang channel 总结

    1.未初始化的channel读,阻塞 package main import ( "fmt" "time" ) func main() { var ch cha ...

  6. Gym - 101981M:(南京) Mediocre String Problem(回文树+exkmp)

    #include<bits/stdc++.h> #define ll long long #define rep(i,a,b) for(int i=a;i<=b;i++) using ...

  7. CentOS上部署JAVA服务【转】

    http://www.th7.cn/Program/java/201511/686437.shtml 本文将介绍如何在CentOS上运行Java Web服务,其中将包括如何搭建JAVA运行环境.如何开 ...

  8. (10)MySQL触发器(同时操作两张表)

    什么是触发器 触发器是与表有关的数据库对象,在满足定义条件时触发,并执行触发器中定义的语句集合.触发器的这种特性可以协助应用在数据库端确保数据的完整性. 举个例子,比如你现在有两个表[用户表]和[日志 ...

  9. go build Multiple main.go file

    golang 如何编译同目录下多个main文件? 多个go 文件在相同目录编译时候会报错, 可将文件放在不同的package下,结构如下: buidtest/├── a│   └── a.go└── ...

  10. 新安装的win7/win10系统,所有驱动都没安装,插入U盘也无法识别解决方法

    我是使用老毛挑安装的系统,结果安装好之后,才发现所有驱动都没有安装,例如usb,网卡驱动等 解决方法就是先把驱动下载到系统安装盘里面,然后再次进入安装系统界面,相当于重新安装系统,但实际上我们不需要. ...