@@ -93,30 +93,33 @@ function babeld.configure(args)
9393
9494 uci :save (" babeld" )
9595
96- if utils .is_installed (" kmod-batman-adv" ) then
97- if not fs .stat (" /etc/nft-lime" ) then fs .mkdir (" /etc/nft-lime" ) end
98- if not fs .stat (" /etc/nft-lime/20-lime-babel-filter.nft" ) then
99- fs .writefile (" /etc/nft-lime/20-lime-babel-filter.nft" , [[
100- table netdev lime_babel_filter {
96+ if utils .is_installed (" kmod-batman-adv" ) then
97+ local dir = " /usr/share/nftables.d/ruleset-post"
98+ local path = dir .. " /20-lime-babel-filter.nft"
99+
100+ if not fs .stat (dir ) then fs .mkdir (dir ) end
101+
102+ if not fs .stat (path ) then
103+ fs .writefile (path , [[
104+ #!/usr/sbin/nft -f
105+ add table inet lime_babel_filter
106+ add chain inet lime_babel_filter prevent_babel_leak_from_bat0
107+ delete chain inet lime_babel_filter prevent_babel_leak_from_bat0
108+
109+ table inet lime_babel_filter {
101110 chain prevent_babel_leak_from_bat0 {
102111 type filter hook ingress device "bat0" priority 0; policy accept;
103- ether daddr 33:33:00:00:01:06 counter drop
104- ether daddr 01:00:5e:00:00:6f counter drop
112+
113+ ip6 daddr ff02::1:6 udp dport 6696 counter drop
114+ ip daddr 224.0.0.111 udp dport 6696 counter drop
115+
105116 ip6 nexthdr udp udp dport 6696 counter drop
106117 ip protocol udp udp dport 6696 counter drop
107118 }
108119}
109120]] )
110-
111- uci :set (" firewall" , " lime_babel_filter_include" , " include" )
112- uci :set (" firewall" , " lime_babel_filter_include" , " path" , " /etc/nft-lime/20-lime-babel-filter.nft" )
113- uci :set (" firewall" , " lime_babel_filter_include" , " type" , " nftables" )
114- uci :set (" firewall" , " lime_babel_filter_include" , " position" , " ruleset-post" )
115- uci :set (" firewall" , " lime_babel_filter_include" , " enabled" , " 1" )
116-
117- uci :save (" firewall" )
118- end
119- end
121+ end
122+ end
120123end
121124
122125function babeld .setup_interface (ifname , args )
0 commit comments