All Projects → bmx-routing → bmx7

bmx-routing / bmx7

Licence: GPL-2.0 license
BMX7 / SEMTOR Securely Entrusted Mesh Routing Protocol

Programming Languages

c
50402 projects - #5 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to bmx7

Ansible Openwisp2
Ansible role that installs and upgrades OpenWISP.
Stars: ✭ 403 (+632.73%)
Mutual labels:  openwrt, mesh
Lime Packages
OpenWrt packages composing LibreMesh meta-firmware for wireless mesh networking
Stars: ✭ 204 (+270.91%)
Mutual labels:  openwrt, mesh
edgevpn
⛵ The immutable, decentralized, statically built p2p VPN without any central server and automatic discovery! Create decentralized introspectable tunnels over p2p with shared tokens
Stars: ✭ 223 (+305.45%)
Mutual labels:  tunnel, mesh
Gateway Go
🎁GateWay Client for OpenIoTHub[云易连访问内网端口和设备的网关]
Stars: ✭ 127 (+130.91%)
Mutual labels:  tunnel, openwrt
Board
LibreRouter hardware repository
Stars: ✭ 48 (-12.73%)
Mutual labels:  openwrt, mesh
Inlets Pro
Secure TCP and HTTP tunnels that work anywhere
Stars: ✭ 179 (+225.45%)
Mutual labels:  tunnel, mesh
cfdtunnel
A wrapper for cloudflared that manages multi clients for you
Stars: ✭ 43 (-21.82%)
Mutual labels:  tunnel
nodewatcher-agent
A monitoring agent that runs on OpenWrt-supported devices.
Stars: ✭ 14 (-74.55%)
Mutual labels:  openwrt
NeuroMorph
The NeuroMorph analysis and visualization toolkit
Stars: ✭ 57 (+3.64%)
Mutual labels:  mesh
webhook-tunnel
A little HTTP proxy suitable to create tunnels for webhook endpoints protected behind a firewall or a VPN
Stars: ✭ 63 (+14.55%)
Mutual labels:  tunnel
CloudFlare-DDNS-Script
CloudFlare-DDNS-Script Support LEDE/Openwrt with IPv4/IPv6
Stars: ✭ 40 (-27.27%)
Mutual labels:  openwrt
nycmeshnet.github.io
NYC Mesh Website
Stars: ✭ 18 (-67.27%)
Mutual labels:  mesh
openwrt
A custom ROM for IPQ40xx (currently: EA6350v3, MR8300, EA8300, GL-S1300, and GL-B1300) with several modifications and many annoyances fixed.
Stars: ✭ 58 (+5.45%)
Mutual labels:  openwrt
libgltf
glTF 2.0 parser/loader for C++11, supports many extensions likes `KHR_draco_mesh_compression`, `KHR_lights_punctual`, `KHR_materials_clearcoat`, and more.
Stars: ✭ 55 (+0%)
Mutual labels:  mesh
tor-router-nexx-wt3020
Make a cheap TOR router for $10
Stars: ✭ 15 (-72.73%)
Mutual labels:  openwrt
easemesh
A service mesh implementation for connecting, control, and observe services in spring-cloud.
Stars: ✭ 454 (+725.45%)
Mutual labels:  mesh
Actions-ImmortalWrt-R1S-H5
A very simple openwrt vision of r1s-h5.
Stars: ✭ 24 (-56.36%)
Mutual labels:  openwrt
amlogic-s9xxx-openwrt
OpenWrt for Amlogic and Rockchip. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, rk3588, rk3568, rk3288, etc. including install to EMMC and update related functions.
Stars: ✭ 724 (+1216.36%)
Mutual labels:  openwrt
Point2Mesh
Meshing Point Clouds with Predicted Intrinsic-Extrinsic Ratio Guidance (ECCV2020)
Stars: ✭ 61 (+10.91%)
Mutual labels:  mesh
SAGEMCOM-FAST-5370e-TELIA
This is my personal wiki for hacking the router firmware used by (Sagemcom)F@st Version 3.43.2 delivered from Sagemcom
Stars: ✭ 92 (+67.27%)
Mutual labels:  openwrt

alt text

BMX7 is a mesh routing protocol for Linux based operating systems. The academic paper with more theoretical details can be found here.

Content

Installation

Requirements

The following tools and libraries are needed to obtain, compile, and install bmx7:

Optional for static configuration:

The following Linux-kernel modules are needed (depending on used bmx7 features)

  • ipv6
  • tunnel6
  • ip6_tunnel

The mbed TLS or PolarSSL crypto library is needed for cryptographic operations: Most tested with debian or mbedtls-2.4.0:

wget https://tls.mbed.org/download/mbedtls-2.4.0-gpl.tgz
tar xzvf mbedtls-2.4.0-gpl.tgz
cd mbedtls-2.4.0
make
sudo make install
# compile bmx7 with: make EXTRA_CFLAGS="-DCRYPTLIB=MBEDTLS_2_4_0"

Downloading

Latest development sources are available from bmx7 git repository:

git clone https://github.com/bmx-routing/bmx7.git
cd bmx7

Compile and Install

To only compile the main bmx7 daemon (no bmx7 plugins):

make EXTRA_CFLAGS="-DCRYPTLIB=MBEDTLS_2_4_0"
sudo make install

Installing in OpenWRT

BMX7 is currently in the official OpenWRT-routing feed, so to install it from a existing system you can use opkg:

opkg install bmx7 bmx7-uci-config

If you are compiling your own OpenWRT, you can add the routing feed (already enabled by default) which can be found here: https://github.com/openwrt-routing/packages

Then run "make menuconfig" and select the bmx7 package in Networking -> Routing and redirection

It is recommended to select also, at least, the uci plugin (bmx7-uci-config)

You can select "luci-app-bmx7" to have a nice web interface for manage and monitorize the routing daemon.

Finally type "make" to build the image.

Packages

Available packages exist for the following distributions:

FAQ

  1. How does BMX7 work and on which OSI layer?
  • BMX7 is a routing protocol that operates on layer 3 of the OSI layer; it extends the concept of receiver-driven routing and the principles of DSDV routing. The routing update of BMX7 (in contrast to traditional DSDV) contains a single and verifiable heartbeat value which unambiguously identifies a particular node of the network and a specific version of this nodes' self-defined description and routing-update version.
  1. The goal of BMX7/SEMTOR?
  • The goal of BMX7 is to provide secure mechanisms to ensure that non-trusted nodes in an open network are effectively prevented from disrupting the routing between trusted nodes.
  • It's achieved by enforcing the exclusion of a given set of identified faulty nodes.
  1. Differences with bmx6
  • TBD
  1. Similar Software
  • AODV,
  • Babel,
  • BMX6,
  • OLSR,
  • batman-adv
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].