diff --git a/package/gluon-client-bridge/luasrc/lib/gluon/upgrade/310-gluon-client-bridge-local-node b/package/gluon-client-bridge/luasrc/lib/gluon/upgrade/310-gluon-client-bridge-local-node index 824d8d40..4b51db0c 100755 --- a/package/gluon-client-bridge/luasrc/lib/gluon/upgrade/310-gluon-client-bridge-local-node +++ b/package/gluon-client-bridge/luasrc/lib/gluon/upgrade/310-gluon-client-bridge-local-node @@ -23,8 +23,7 @@ uci:section('network', 'device', 'local_node_dev', { local ip4, ip6 if next_node.ip4 then - local plen = site.prefix4():match('/%d+$') - ip4 = next_node.ip4 .. plen + ip4 = next_node.ip4 .. '/32' end if next_node.ip6 then diff --git a/package/gluon-mesh-batman-adv/luasrc/lib/gluon/upgrade/320-gluon-mesh-batman-adv-client-bridge b/package/gluon-mesh-batman-adv/luasrc/lib/gluon/upgrade/320-gluon-mesh-batman-adv-client-bridge index 4658b419..58c6084a 100755 --- a/package/gluon-mesh-batman-adv/luasrc/lib/gluon/upgrade/320-gluon-mesh-batman-adv-client-bridge +++ b/package/gluon-mesh-batman-adv/luasrc/lib/gluon/upgrade/320-gluon-mesh-batman-adv-client-bridge @@ -25,7 +25,18 @@ uci:section('network', 'interface', 'client', { uci:delete('network', 'client_lan') +uci:section('network', 'rule', 'local_node_rule', { + src = next_node.ip4 .. '/32', + lookup = 2, +}) +uci:set('network', 'local_node_rule', 'in', 'loopback') + uci:delete('network', 'local_node_route') +uci:section('network', 'route', 'local_node_route', { + interface = 'local_node', + target = site.prefix4(), + table = 2, +}) uci:section('network', 'rule6', 'local_node_rule6', { src = next_node.ip6 .. '/128',