#!/usr/bin/lua local uci = require('simple-uci').cursor() local site = require "gluon.site" uci:section('firewall', 'zone', 'l3roamd', { name = 'l3roamd', input = 'ACCEPT', output = 'ACCEPT', forward = 'REJECT', device = 'l3roam+', log = '1', }) uci:section('firewall', 'zone', 'mmfd', { name = 'mmfd', input = 'REJECT', output = 'accept', forward = 'REJECT', device = 'mmfd+', log = '1', }) -- forwardings and respective rules uci:section('firewall', 'forwarding', 'fcc', { src = 'local_client', dest = 'local_client', }) uci:section('firewall', 'forwarding', 'fcm', { src = 'local_client', dest = 'mesh', }) uci:section('firewall', 'forwarding', 'fmc', { src = 'mesh', dest = 'local_client', }) uci:section('firewall', 'forwarding', 'fmm', { src = 'mesh', dest = 'mesh', }) uci:section('firewall', 'forwarding', 'flc', { src = 'l3roamd', dest = 'local_client', }) uci:section('firewall', 'forwarding', 'fcl', { src = 'local_client', dest = 'l3roamd', }) uci:section('firewall', 'rule', 'mesh_respondd_mcast_ll', { src = 'mesh', src_ip = 'fe80::/64' , dest_port = '1001', proto = 'udp', target = 'ACCEPT', }) uci:section('firewall', 'rule', 'mesh_respondd_mcast2', { src = 'mesh', src_ip = site.node_prefix6(), dest_port = '1001', proto = 'udp', target = 'ACCEPT', }) uci:section('firewall', 'rule', 'mmfd_respondd_ll', { src = 'mmfd', src_ip = 'fe80::/64', dest_port = '1001', proto = 'udp', target = 'ACCEPT', }) uci:section('firewall', 'rule', 'mmfd_respondd_mesh', { src = 'mmfd', src_ip = site.node_prefix6(), dest_port = '1001', proto = 'udp', target = 'ACCEPT', }) uci:section('firewall', 'rule', 'mesh_mmfd', { src = 'mesh', src_ip = 'fe80::/64', dest_port = '27275', proto = 'udp', target = 'ACCEPT', }) uci:section('firewall', 'rule', 'mesh_babel', { src = 'mesh', src_ip = 'fe80::/64', dest_port = '6696', proto = 'udp', target = 'ACCEPT', }) uci:save('firewall')