switch-fabric: add package that handles switch-fabric features

* add support for port mirroring
* lagcp will be housed within this package aswell in future

Signed-off-by: John Crispin <john@phrozen.org>
This commit is contained in:
John Crispin
2021-08-16 11:43:28 +02:00
parent cf8c89d9e1
commit 179d1b5770
5 changed files with 122 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
#!/bin/sh
. /lib/functions.sh
port_mirror() {
for lan in $(ls -d /sys/class/net/lan* | cut -dn -f3 |sort -n); do
tc qdisc del dev lan$lan clsact
done
monitor=$(uci get switch.mirror.monitor)
analysis=$(uci get switch.mirror.analysis)
[ -n "$monitor" -a -n "$analysis" ] || return
ifconfig $analysis up
for port in $monitor; do
tc qdisc add dev $port clsact
tc filter add dev $port ingress matchall skip_sw action mirred egress mirror dev $analysis
tc filter add dev $port egress matchall skip_sw action mirred egress mirror dev $analysis
done
}
port_mirror