Giter VIP home page Giter VIP logo

netmaker-openwrt's Introduction

Netmaker-OpenWRT

Netmaker is a platform for creating and managing fast, secure, and dynamic virtual overlay networks using WireGuard. This project offers OpenWRT packages for Netmaker.

Installing package

Download the prebuild package and copy it onto your OpenWRT installation, preferably into the /tmp folder.

Then install the ipk package file:

opkg install netmaker_*.ipk

Now start netclient of Netmaker:

/etc/init.d/netclient start

Compiling from Sources

To include Netmaker into your OpenWRT image or to create an .ipk package (equivalent to Debians .deb files), you have to build an OpenWRT image.

Now prepare OpenWRT:

git clone https://github.com/openwrt/openwrt
cd openwrt

./scripts/feeds update -a
./scripts/feeds install -a

To build Netmaker for OpenWRT, you need to have Golang with OpenWRT build envirment. Then, you can insert the Netmaker package using a package feed or add the package manually.

Add package by feed

A feed is the standard way packages are made available to the OpenWRT build system.

Put this line in your feeds list file (e.g. feeds.conf.default)

src-git netmaker http://github.com/sbilly/netmaker-openwrt.git

Update and install the new feed

./scripts/feeds update netmaker
./scripts/feeds install netmaker

Now continue with the building packages section.

Building Packages

Configure packages:

make menuconfig

Now select the appropiate "Target System" and "Target Profile" depending on what target chipset/router you want to build for. Also mark the Netmaker package under Network ---> VPN ---> <*> netmaker.

Now compile/build everything:

make

The images and all *.ipk packages are now inside the bin/ folder, including the netmaker package. You can install the Netmaker .ipk on the target device using opkg install .

For details please check the OpenWRT documentation.

Build bulk packages

For a release, it is useful the build packages at a bulk for multiple targets:

#!/bin/sh

# dump-target-info.pl is used to get all targets configurations:
# https://git.openwrt.org/?p=openwrt/openwrt.git;a=blob;f=scripts/dump-target-info.pl

./scripts/dump-target-info.pl architectures | while read pkgarch target1 rest; do
  echo "CONFIG_TARGET_${target1%/*}=y" > .config
  echo "CONFIG_TARGET_${target1%/*}_${target1#*/}=y" >> .config
  echo "CONFIG_PACKAGE_example1=y" >> .config

  # Debug output
  echo "pkgarch: $pkgarch, target1: $target1"

  make defconfig
  make -j4 tools/install
  make -j4 toolchain/install

  # Build package
  make package/netmaker/{clean,compile}

  # Free space (optional)
  rm -rf build_dir/target-*
  rm -rf build_dir/toolchain-*
done

Thanks

netmaker-openwrt's People

Contributors

sbilly avatar xcf13363175 avatar goldsoft8888 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.