Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
131 commits
Select commit Hold shift + click to select a range
1b4bffd
modules: switch to OpenWrt master
blocktrron Aug 11, 2021
a50227a
gluon-core: don't rewrite distfeeds for next
blocktrron Jul 22, 2020
b90eab0
generic: don't build Coova-Chilli
blocktrron Aug 10, 2022
205fa83
ath79-generic: rename UniFi AP
blocktrron Aug 11, 2022
7e0c610
Dockerfile: Install python3-distutils
mweinelt Nov 20, 2022
3ad8fef
ipq40xx: disable boards lacking DSA conversion
blocktrron Mar 21, 2023
95d6592
ath79-generic: disable RE450 v1 due to insufficient flash space
blocktrron Mar 21, 2023
b3f4535
generic: remove mbedtls wpas
blocktrron Apr 15, 2023
7f9e84b
ath79-generic: disable RE355 due to insufficient flash
blocktrron Apr 15, 2023
8440c3d
ipq40xx: disable engenius_ens620ext
blocktrron Apr 15, 2023
9c92096
Re-add olsr2 patch
mkg20001 May 7, 2023
836add8
Remove mbedtls lib
mkg20001 May 7, 2023
322b1dc
modules: update gluon
blocktrron Apr 15, 2023
832b70b
docs: use linkcheck_ignore for unreachable links
AiyionPrime Apr 17, 2023
e3db3db
update install dependency docs
maurerle Apr 1, 2023
879762c
libbatadv: update UAPI and policy from batctl v2023.0
Apr 16, 2023
5ebbaf8
openwrt: backport combination of dual-flash partitions
blocktrron Apr 17, 2023
79c09db
gluon-mesh-vpn-wireguard: add gluon-hex-to-b64
AiyionPrime Aug 6, 2022
c4c7c98
gluon-mesh-vpn-wireguard: add fastd key migration
AiyionPrime Aug 6, 2022
c3b02ff
docs: gluon-mesh-vpn-key-translate
AiyionPrime Apr 19, 2023
736082b
gluon-web-model: add MultiListValue class
lemoer Apr 14, 2022
3b98260
gluon-web-network: initial draft of role configuration
lemoer Apr 15, 2022
5794f98
gluon-web-network: show pretty interface names
lemoer Oct 30, 2022
0693c59
gluon-web-model: uglify flag --support-ie8 is now --ie
lemoer Jan 4, 2023
8c9f54d
gluon-web-model: add exclusive options for MultiListValue
lemoer May 6, 2022
f38e436
gluon-web-network: make roles "uplink" / "mesh" and "client" exclusive
lemoer May 6, 2022
dc83f30
gluon-core: fix invalid role configurations during reconfigure
lemoer Dec 15, 2022
fd6caf2
docs: explain that invalid interface roles are removed
lemoer Dec 15, 2022
523b602
gluon-core: make interface roles exclusive in site config
lemoer Feb 26, 2023
f1e20cc
gluon-web-model: migrate to SPDX headers for licensing
lemoer Feb 26, 2023
fd8b0c5
gluon-web-network: migrate to SPDX headers for licensing
lemoer Feb 26, 2023
06e8cde
gluon-mesh-olsrd: support clientap
mkg20001 Feb 17, 2023
a821064
fixup! patches
mkg20001 Feb 17, 2023
ffeee06
gluon-mesh-olsrd: whitespace
mkg20001 Feb 17, 2023
61365cf
Revert "gluon-mesh-olsrd: whitespace"
mkg20001 Feb 17, 2023
525c65f
gluon-mesh-olsrd: squashed
mkg20001 Feb 17, 2023
540c859
firewall: switch to nftables
mkg20001 Feb 5, 2023
1b077a7
gluon-nftables: init
mkg20001 Apr 25, 2023
1c10de4
gluon-ebtables -> gluon-nftables-multicast: split out multicast rules…
mkg20001 May 1, 2023
a298451
gluon-mesh-vpn-core: migrate to gluon-nftables
mkg20001 Apr 25, 2023
9b48615
gluon-{iptables => }-clamp-mss-to-pmtu: migrate to nftables
mkg20001 Apr 25, 2023
39490cd
gluon-ebtables-limit-arp: switch to nftables
mkg20001 Apr 25, 2023
9a2fc4f
gluon: rm iptables
mkg20001 Apr 30, 2023
0ea8eff
gluon-nftables-source-filter: migrate to nftables
mkg20001 May 1, 2023
721847d
gluon-nftables-filter-multicast: migrate to nftables
mkg20001 May 1, 2023
2b961bf
gluon-nftables-filter-ra-dhcp: migrate to nftables
mkg20001 May 1, 2023
56d2677
gluon-mesh-batman-adv: migrate to nftables
mkg20001 May 1, 2023
10cc19e
gluon-radv-filterd: migrate to nftables
mkg20001 May 1, 2023
e8d03f4
misc: adjust lint
mkg20001 May 1, 2023
bb9a6cc
misc: labeler
mkg20001 May 1, 2023
fccc1c5
misc: replace example
mkg20001 May 1, 2023
3b55e50
docs: rename ebtables->nftables
mkg20001 May 1, 2023
597c7c2
misc: replace in example configs
mkg20001 May 1, 2023
f89cb70
misc: rename docs
mkg20001 May 1, 2023
e6cfa3f
gluon-core: expand range of custom macs
mkg20001 Dec 13, 2022
ce96ee7
targets/ipq40xx-mikrotik: add 60ghz dish
mkg20001 Dec 13, 2022
bc129af
targets/ramips-mt7621: add hex
mkg20001 Dec 13, 2022
bf9292f
targets/ipq806x-generic: add zyxel nbg6817
mkg20001 Dec 13, 2022
b77e748
targets/ath79-generic: mark some low-storage devices as broken
mkg20001 Dec 13, 2022
88ff522
patch: prune opkg
mkg20001 Dec 13, 2022
1076d9c
patch: extreme led fix
mkg20001 Dec 13, 2022
73070b5
[patch] use custom gluon packages
mkg20001 Dec 13, 2022
5269d2f
[custom] add README
mkg20001 Dec 13, 2022
19bd8b2
gluon-authorized-keys: add disable_site_keys
mkg20001 Dec 13, 2022
d42adaa
gluon-core: add netifd support for static ipv4/ipv6 addresses
mkg20001 Dec 13, 2022
57576ac
gluon-core: ipv4 network seperation
mkg20001 Dec 13, 2022
84f29bf
gluon-authorized-keys: add unauthorized_keys to remove access
mkg20001 Dec 13, 2022
3a44d64
[upstream] vlan ui
mkg20001 Dec 13, 2022
fce626f
[patch] custom ffgraz status page
mkg20001 Dec 13, 2022
c36b602
[patch] re-add ibss
mkg20001 Dec 13, 2022
01c740f
[patch] losen some requirements so we can fuck things up more efficie…
mkg20001 Dec 13, 2022
fdf6bb6
docs: static-ip
mkg20001 Dec 13, 2022
3e972e1
docs: olsrd
mkg20001 Dec 13, 2022
f190c4f
[patch] olsr2 graz
mkg20001 Dec 30, 2022
953ba23
gluon-mesh-olsrd: add all the rest
mkg20001 Dec 13, 2022
a4c463a
[patch] old kmods
mkg20001 Dec 13, 2022
89acbed
gluon-core: add 60ghz support
mkg20001 Dec 13, 2022
0e4d726
[patch] gluon-core: channel adjustable
mkg20001 Dec 13, 2022
394fb86
fixup! 60ghz
mkg20001 Dec 13, 2022
abce561
ibss stuff
mkg20001 Dec 13, 2022
8e24389
gluon-respondd: restart instead of reload
mkg20001 Dec 20, 2022
dd855c2
fixup! opkg
mkg20001 Dec 30, 2022
88390ad
fixup! prune
mkg20001 Dec 30, 2022
23da8d7
fixup! opkg
mkg20001 Dec 30, 2022
632c3f4
[patch] switch hostapd to openssl, since we use it for openvpn anyways
mkg20001 Dec 30, 2022
64aee1d
[hack] make status page show something
mkg20001 Dec 30, 2022
7932ffb
gluon-status-page: add olsr1+2
mkg20001 Dec 30, 2022
925810f
gluon-wireless-encryption-wpa3-openssl: add for just having openssl
mkg20001 Jan 6, 2023
5ddc521
Revert "[patch] switch hostapd to openssl, since we use it for openvp…
mkg20001 Jan 6, 2023
d4222c3
[patch] exclude hostapd-mini when using wpa3-oepnssl
mkg20001 Jan 11, 2023
37f4cf8
[patch] add master script
mkg20001 Jan 12, 2023
bfcff4e
gluon-mesh-olsrd: fix clientap
mkg20001 Jun 9, 2022
b4b194a
gluon-l3roamd: place hook to be called by ddhcpd when a new ipv4 addr…
christf Jun 11, 2018
497f115
[patch] use openvpn small
mkg20001 Jan 20, 2023
836486e
Revert "Migrate to dnsmasq-full to restore query caching"
mkg20001 Jan 20, 2023
29dc248
ubus patch for lua async
mkg20001 Jan 21, 2023
3b89fba
gluon-core: wifi skip channel_adjustable if 5g outdoor
mkg20001 Jan 25, 2023
d080d27
gluon-core: fix 60g
mkg20001 Jan 25, 2023
b18374c
gluon-web-wifi-config: disable channel/txpower on outdoor
mkg20001 Jan 25, 2023
1d345d9
gluon-core: fix 5g auto, del ibss 5g
5gbr Jan 25, 2023
975d858
gluon-core: p2p everywhere
mkg20001 Jan 25, 2023
69cb113
gluon-state-check: remove has_default_gw6
mkg20001 Jan 27, 2023
f319465
buildsystem: allow building custom buildtypes
mkg20001 Jan 30, 2023
e1b497a
gluon-core: add option to exclude upgrade scripts that alter system i…
mkg20001 Feb 5, 2023
89bf40e
gluon-l3roamd: fixup hook to work with claim
mkg20001 Feb 11, 2023
afa4a1e
gluon-web-wifi-config: fix p2p translation
mkg20001 Feb 13, 2023
c623482
gluon-web-wifi-config: fix outdoor translation
mkg20001 Feb 13, 2023
76eb193
fixup! olsr
mkg20001 Feb 17, 2023
fd15156
olsrd: fix caching
mkg20001 Mar 3, 2023
26ac7a0
gluon-mesh-olsrd: more hack
mkg20001 Mar 10, 2023
f66e084
[patch] gluon-respondd: add memory limits
mkg20001 Mar 10, 2023
57666d7
gluon-mesh-olsrd: use cron generated files
mkg20001 Apr 8, 2023
8b80a4a
gluon-respondd: remove memory limit
mkg20001 Apr 13, 2023
f768b18
gluon-mesh-olsrd: use cron
mkg20001 Apr 13, 2023
601285b
backport rust
mkg20001 Apr 16, 2023
f6ff8c2
gluon-core: fix channel
mkg20001 Apr 18, 2023
527e1a7
gluon-core: cleanup
mkg20001 Apr 22, 2023
2f82adf
[patch] adjust push_pkg for graz opkg-less devices
mkg20001 Apr 25, 2023
cd92c1d
ath79-generic: add support for TP-Link EAP-225 Outdoor v3
s-2 Mar 9, 2023
9e7388e
fix: channel switch
mkg20001 Apr 28, 2023
01a210d
gluon-mesh-olsrd: drop ipv6 tag as prob uneeded
mkg20001 Apr 28, 2023
30dee14
fixup! vlan ui
mkg20001 Apr 28, 2023
4ce16c1
olsr2 patch
mkg20001 Apr 29, 2023
a500b2f
[patch] upgrade modules
mkg20001 May 13, 2023
e8c422b
[patch] drop patches
mkg20001 May 13, 2023
77fd471
fix p2p
mkg20001 May 17, 2023
3606629
update
mkg20001 May 17, 2023
9c99f50
olsr2 patch fix
mkg20001 May 20, 2023
25c39a9
cleanup patches
mkg20001 May 20, 2023
a02c5d5
gluon-nftables: add bridge mod
mkg20001 May 21, 2023
b0cb372
build(deps): bump korthout/backport-action from 1.2.0 to 1.3.0
dependabot[bot] Jun 1, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
- package/gluon-mesh-vpn-fastd/**
"3. topic: firewall":
- package/**/*-firewall
- package/gluon-ebtables-*/**
- package/gluon-nftables-*/**
"3. topic: hardware":
- package/gluon-core/luasrc/lib/gluon/upgrade/010-primary-mac
- package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/backport.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
steps:
- uses: actions/checkout@v3
- name: Create backport PRs
uses: korthout/backport-action@v1.2.0
uses: korthout/backport-action@v1.3.0
with:
# Config README: https://github.com/korthout/backport-action#backport-action
pull_description: |-
Expand Down
13 changes: 11 additions & 2 deletions .luacheckrc
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ files["package/**/check_site.lua"] = {
"need",
"need_alphanumeric_key",
"need_array",
"need_array_elements_exclusive",
"need_array_of",
"need_boolean",
"need_chanlist",
Expand All @@ -50,6 +51,7 @@ files["package/**/check_site.lua"] = {

files["package/**/luasrc/lib/gluon/config-mode/*"] = {
globals = {
"MultiListValue",
"DynamicList",
"Flag",
"Form",
Expand Down Expand Up @@ -79,10 +81,17 @@ files["package/**/luasrc/lib/gluon/**/controller/*"] = {
},
}

files["package/**/luasrc/lib/gluon/ebtables/*"] = {
files["package/**/luasrc/lib/gluon/nftables/*"] = {
read_globals = {
"chain",
"path",
"include",
"rule",

"bridge_rule",
"bridge_chain",
"bridge_table",
"bridge_include_rule",
"bridge_include_table",
},
max_line_length = false,
}
Expand Down
4 changes: 3 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ GLUON_PACKAGEDIR ?= $(GLUON_OUTPUTDIR)/packages
GLUON_DEBUGDIR ?= $(GLUON_OUTPUTDIR)/debug
GLUON_TARGETSDIR ?= targets
GLUON_PATCHESDIR ?= patches
GLUON_PREFIX ?= openwrt

$(eval $(call mkabspath,GLUON_TMPDIR))
$(eval $(call mkabspath,GLUON_OUTPUTDIR))
Expand All @@ -60,6 +61,7 @@ GLUON_MULTIDOMAIN ?= 0
GLUON_AUTOREMOVE ?= 0
GLUON_DEBUG ?= 0
GLUON_MINIFY ?= 1
GLUON_BUILDTYPE ?= gluon

# Can be overridden via environment/command line/... to use the Gluon
# build system for non-Gluon builds
Expand All @@ -71,7 +73,7 @@ GLUON_VARS = \
GLUON_VERSION GLUON_SITE_VERSION \
GLUON_RELEASE GLUON_REGION GLUON_MULTIDOMAIN GLUON_AUTOREMOVE GLUON_DEBUG GLUON_MINIFY GLUON_DEPRECATED \
GLUON_DEVICES GLUON_TARGETSDIR GLUON_PATCHESDIR GLUON_TMPDIR GLUON_IMAGEDIR GLUON_PACKAGEDIR GLUON_DEBUGDIR \
GLUON_SITEDIR GLUON_AUTOUPDATER_BRANCH GLUON_AUTOUPDATER_ENABLED GLUON_LANGS GLUON_BASE_FEEDS \
GLUON_SITEDIR GLUON_BUILDTYPE GLUON_AUTOUPDATER_BRANCH GLUON_AUTOUPDATER_ENABLED GLUON_LANGS GLUON_BASE_FEEDS GLUON_PREFIX \
GLUON_TARGET BOARD SUBTARGET

unexport $(GLUON_VARS)
Expand Down
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,14 @@
[![License](https://img.shields.io/badge/License-BSD%202--Clause-orange.svg)](https://opensource.org/license/bsd-2-clause/)
[![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/freifunk-gluon/gluon?sort=semver)](https://github.com/freifunk-gluon/gluon/releases/latest)

# FFGraz Fork

This is a fork of gluon to add olsrd and L3 mesh support.

This is intended to be eventually upstreamed. Currently it's a bit messy and the best documentation of the site config would be the [ffgraz site](https://github.com/mkg20001/funkfeuer-graz-gluon-site/blob/master/site.conf)

See [the github project](https://github.com/ffgraz/gluon/projects/1?query=is%3Aopen+sort%3Aupdated-desc) for more details

# Gluon

Gluon is a firmware framework to build preconfigured OpenWrt images for public mesh networks.
Expand Down
2 changes: 1 addition & 1 deletion contrib/actions/install-dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@
set -e

apt-get -y update
apt-get -y install git subversion build-essential python3 gawk unzip libncurses5-dev zlib1g-dev libssl-dev wget time qemu-utils
apt-get -y install git build-essential python3 gawk unzip libncurses5-dev zlib1g-dev libssl-dev libelf-dev wget rsync time qemu-utils
apt-get -y clean
rm -rf /var/lib/apt/lists/*
15 changes: 14 additions & 1 deletion contrib/ci/olsr-site/site.conf
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,14 @@
-- Prefixes used by clients within the mesh.
-- prefix6 is required, prefix4 can be omitted if next_node.ip4
-- is not set.
prefix4 = '10.0.0.0/20',
prefix6 = 'fdff:cafe:cafe:cafe::/64',

-- Prefixes used by nodes within the mesh
node_prefix6 = 'fdff:cafe:cafe:cafe::/64',
node_prefix4 = '10.12.0.0/16',
node_prefix4_range = 24,
node_prefix4_temporary = true,

-- Timezone of your community.
-- See https://openwrt.org/docs/guide-user/base-system/system_configuration#time_zones
Expand Down Expand Up @@ -96,7 +100,16 @@
-- Options specific to routing protocols (optional)
mesh = {
vxlan = true,
olsrd = {},
-- [olsr] OLSR configuration with v1/v2 parallel mesh
olsrd = {
v1 = {
enable = true,
},
v2 = {
enable = true,
ip6_exclusive_mode = true,
}
},
},

mesh_vpn = {
Expand Down
3 changes: 0 additions & 3 deletions contrib/ci/olsr-site/site.mk
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,6 @@

GLUON_FEATURES := \
autoupdater \
ebtables-filter-multicast \
ebtables-filter-ra-dhcp \
ebtables-limit-arp \
mesh-olsrd \
mesh-vpn-fastd \
respondd \
Expand Down
2 changes: 1 addition & 1 deletion contrib/docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
file \
git \
subversion \
python3 \
python3-distutils \
build-essential \
gawk \
unzip \
Expand Down
18 changes: 5 additions & 13 deletions contrib/push_pkg.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ topdir="$(realpath "$(dirname "${0}")/../openwrt")"
# defaults to qemu run script
ssh_host=localhost
build_only=0
preserve_config=1

print_help() {
echo "$0 [OPTIONS] PACAKGE_DIR [PACKAGE_DIR] ..."
Expand All @@ -18,10 +17,6 @@ print_help() {
echo " running qemu instance started by run_qemu.sh."
echo " -p PORT use PORT as ssh port (default is 22)"
echo " -b build only, do not push"
echo " -P do not preserve /etc/config. By default, if a package"
echo " defines a config file in /etc/config, this config file"
echo " will be preserved. If you specify this flag, the package"
echo " default will be installed instead."
echo ""
echo ' To change gluon variables, run e.g. "make config GLUON_MINIFY=0"'
echo ' because then the gluon logic will be triggered, and openwrt/.config'
Expand All @@ -33,7 +28,6 @@ print_help() {
while getopts "p:r:hbP" opt
do
case $opt in
P) preserve_config=0;;
p) ssh_port="${OPTARG}";;
r) ssh_host="${OPTARG}"; [ -z "$ssh_port" ] && ssh_port=22;;
b) build_only=1;;
Expand Down Expand Up @@ -121,18 +115,16 @@ while [ $# -gt 0 ]; do
fi
done

if [ "$preserve_config" -eq 0 ]; then
opkg_flags=" --force-maintainer"
fi

# shellcheck disable=SC2029
if [ -n "$filename" ]; then
scp -O -P "${ssh_port}" "$feed/$filename" "root@${BL}${ssh_host}${BR}:/tmp/${filename}"
scp -P "${ssh_port}" "$feed/$filename" "root@${BL}${ssh_host}${BR}:/tmp/${filename}"
ssh -p "${ssh_port}" "root@${ssh_host}" "
set -e
echo Running opkg:
opkg install --force-reinstall ${opkg_flags} '/tmp/${filename}'
echo Extracting:
tar xvfz '/tmp/${filename}' -C /tmp
tar xvfz '/tmp/data.tar.gz' -C /
rm '/tmp/${filename}'
rm /tmp/*.tar.gz
gluon-reconfigure
"
else
Expand Down
7 changes: 7 additions & 0 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,13 @@
# Don't highlight code blocks unless requested explicitly
highlight_language = 'none'

# Ignore links to the config mode, as well as anchors on on hackint, which are
# used to mark channel names and do not exist. Regular links are not effected.
linkcheck_ignore = [
'http://192.168.1.1',
'https://webirc.hackint.org/#'
]


# -- Options for HTML output -------------------------------------------------

Expand Down
8 changes: 4 additions & 4 deletions docs/dev/packages.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,10 @@ the workflow using these scripts:
contrib/run_qemu.sh output/images/factory/[...]-x86-64.img

# apply changes to the desired package
vi package/gluon-ebtables/files/etc/init.d/gluon-ebtables
vi package/gluon-nftables/files/etc/init.d/gluon-nftables

# rebuild and push the package to the qemu instance
contrib/push_pkg.sh package/gluon-ebtables/
contrib/push_pkg.sh package/gluon-nftables/

# test your changes
...
Expand All @@ -41,7 +41,7 @@ the workflow using these scripts:
...

# rebuild and push the package to the qemu instance
contrib/push_pkg.sh package/gluon-ebtables/
contrib/push_pkg.sh package/gluon-nftables/

# test your changes
...
Expand Down Expand Up @@ -83,7 +83,7 @@ Note that:
* If you add new packages, you must run ``make update config GLUON_TARGET=...``.
* You can change the gluon target of the target machine via ``make config GLUON_TARGET=...``.
* If you want to update the ``site.conf`` of the target machine, use ``push_pkg.sh package/gluon-site/``.
* Sometimes when things break, you can heal them by compiling a package with its dependencies: ``cd openwrt; make package/gluon-ebtables/clean; make package/gluon-ebtables/compile; cd ..``.
* Sometimes when things break, you can heal them by compiling a package with its dependencies: ``cd openwrt; make package/gluon-nftables/clean; make package/gluon-nftables/compile; cd ..``.
* You can exit qemu by pressing ``CTRL + a`` and ``c`` afterwards.

Gluon package makefiles
Expand Down
57 changes: 57 additions & 0 deletions docs/features/olsrd.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
OLSRD
===========

[todo: re-work for upstream]

Gluon supports OLSRD, both version 1 and 2 in the following modes:

- olsrd
- v4 only
- olsrd2
- v4 only
- v6 only
- dual-stack

olsrdv1 support is intended mostly for migration purposes
and as such v1 IPv6 support is not going to be added

Configuration
-------------

The LAN will automatically be determined by the specified prefix and prefix6

The following options exist

.. code-block:: lua
{
mesh {
olsrd = {
v1 = {
-- Enable v1
-- enable = true,

-- Set additional olsrd configuration
-- config = {
-- DebugLevel = 0,
-- IpVersion = 4,
-- AllowNoInt = yes,
-- },
},
v2 = {
-- Enable v2
enable = true,

-- Make v2 IPv6 exclusive
-- ip6_exclusive_mode = true,

-- Make v2 IPv4 exclusive (useful for v1 co-existence)
-- ip4_exclusive_mode = true,

-- Set additional olsrd2 configuration
-- config = {
--
-- }
}
}
}
}
21 changes: 21 additions & 0 deletions docs/features/static-ip.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
Static IP managment
-------------------

A hack for graz

Static IP managment has the following options

.. code-block:: lua
{
-- Auto-assign addresses from an IPv4 range
node_prefix4 = '10.12.23.0/16',
node_prefix4_range = 24, -- range of node_prefix4 that should be randomized with mac
node_prefix4_temporary = true, -- (def: true) flag to indicate whether or not this is a temporary range that will need manual change for permanent assignments or not

-- Auto-assign addresses from an IPv6 range
node_prefix6 = 'fdff:cafe:cafe:cafe:23::/128',
node_prefix6_range = 84, -- (def: 64) range of node_prefix6 that should be randomized with mac
node_prefix6_temporary = true, -- (def: false) flag to indicate whether or not this is a temporary range that will need manual change for permanent assignments or not
}

Note that these addresses are intended to be temporary
10 changes: 10 additions & 0 deletions docs/features/vpn.rst
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,16 @@ negative effects. Only when a previously connected node reboots the effect
comes into play, as the gateway still knows about the old timestamp of the gluon
node.

gluon-mesh-vpn-key-translate
""""""""""""""""""""""""""""

Many communities already possess a collection of active fastd-keys when they
plan migrating their community to WireGuard.
These public keys known on the server-side can be derived into their WireGuard
equivalent using `gluon-mesh-vpn-key-translate <https://github.com/AiyionPrime/gluon-mesh-vpn-key-translate>`__.
The routers do the necessary reencoding of the private key seamlessly
when updating firmware from fastd to the WireGuard variant.

Gateway / Supernode Configuration
"""""""""""""""""""""""""""""""""

Expand Down
10 changes: 6 additions & 4 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,10 @@ Several Freifunk communities in Germany use Gluon as the foundation of their Fre
features/dns-cache
features/monitoring
features/multidomain
features/olsrd
features/authorized-keys
features/roles
features/static-ip
features/vpn

.. toctree::
Expand Down Expand Up @@ -62,10 +64,10 @@ Several Freifunk communities in Germany use Gluon as the foundation of their Fre

package/gluon-client-bridge
package/gluon-config-mode-domain-select
package/gluon-ebtables-filter-multicast
package/gluon-ebtables-filter-ra-dhcp
package/gluon-ebtables-limit-arp
package/gluon-ebtables-source-filter
package/gluon-nftables-filter-multicast
package/gluon-nftables-filter-ra-dhcp
package/gluon-nftables-limit-arp
package/gluon-nftables-source-filter
package/gluon-hoodselector
package/gluon-logging
package/gluon-mesh-batman-adv
Expand Down
6 changes: 3 additions & 3 deletions docs/multidomain-site-example/site.mk
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@

GLUON_FEATURES := \
autoupdater \
ebtables-filter-multicast \
ebtables-filter-ra-dhcp \
ebtables-limit-arp \
nftables-filter-multicast \
nftables-filter-ra-dhcp \
nftables-limit-arp \
mesh-batman-adv-15 \
mesh-vpn-fastd \
respondd \
Expand Down
Loading