mesh-batman-adv: mesh_on_lan
This adds mesh_on_lan functionality. A new optional site.conf option, mesh_on_lan, has been added. If set to 'true', all LAN ports will be used for meshing instead of being part of the client bridge.
This commit is contained in:
parent
3f80b65856
commit
39d0c8f459
@ -119,6 +119,9 @@ fastd_mesh_vpn
|
||||
mesh_on_wan : optional
|
||||
Enables the mesh on the WAN port (``true`` or ``false``).
|
||||
|
||||
mesh_on_lan : optional
|
||||
Enables the mesh on the LAN port (``true`` or ``false``).
|
||||
|
||||
autoupdater : package
|
||||
Configuration for the autoupdater feature of Gluon.
|
||||
::
|
||||
|
@ -13,3 +13,4 @@ for _, config in ipairs({'wifi24', 'wifi5'}) do
|
||||
end
|
||||
|
||||
need_boolean('mesh_on_wan', false)
|
||||
need_boolean('mesh_on_lan', false)
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
local sysconfig = require 'gluon.sysconfig'
|
||||
local sysctl = require 'gluon.sysctl'
|
||||
local site = require 'gluon.site_config'
|
||||
local uci = require('luci.model.uci').cursor()
|
||||
|
||||
|
||||
@ -20,7 +21,7 @@ uci:commit('batman-adv')
|
||||
if not uci:get('network', 'client') then
|
||||
local ifname
|
||||
|
||||
if sysconfig.lan_ifname then
|
||||
if sysconfig.lan_ifname and not site.mesh_on_lan then
|
||||
ifname = sysconfig.lan_ifname .. ' bat0'
|
||||
else
|
||||
ifname = 'bat0'
|
||||
|
@ -0,0 +1,23 @@
|
||||
#!/usr/bin/lua
|
||||
|
||||
local site = require 'gluon.site_config'
|
||||
local uci = require 'luci.model.uci'
|
||||
local util = require 'gluon.util'
|
||||
local sysconfig = require 'gluon.sysconfig'
|
||||
|
||||
local c = uci.cursor()
|
||||
|
||||
if sysconfig.lan_ifname then
|
||||
if not c:get('network', 'mesh_lan') then
|
||||
c:section('network', 'interface', 'mesh_lan',
|
||||
{ ifname = sysconfig.lan_ifname
|
||||
, proto = 'batadv'
|
||||
, mesh = 'bat0'
|
||||
, macaddr = util.generate_mac(1, 1)
|
||||
, auto = site.mesh_on_lan and 1 or 0
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
c:save('network')
|
||||
c:commit('network')
|
Loading…
Reference in New Issue
Block a user