I wanted to test something with Wireshark and upon launching it, I noticed that some device named "AvmAudio" continuously broadcasts some "SW version request" (HomePlug AV protocol) even though our power line does not support this. My guess is that this is a feature of the FritzBox 7530 I've got here, but I cannot find an option in the admin panel to disable this feature. Is it even possible to disable it?
EDIT: Thanks to @wsd for providing a modified version of Lorenzo Fontana's UDP packet filter. I modified it a little more, because I didn't like the void pointer arithmetic going on there.
/*
* File: homeplug_av_drop.c
* Compile: clang -I /usr/include/x86_64-linux-gnu -O2 -target bpf -c homeplug_av_drop.c -o homeplug_av_drop.o
* Load: ip link set dev <devname> xdp obj homeplug_av_drop.o sec .text
* Unload: ip link set dev <devname> xdp off
*/
#include <linux/bpf.h>
#include <linux/in.h>
#include <linux/if_ether.h>
#define SEC(NAME) __attribute__((section(NAME), used))
#define htons(x) ((__be16)___constant_swab16((x)))
#define ETH_P_HOMEPLUG 0x88e1
#define ETH_P_MEDIAXSTREAM 0x8912
int dropper (struct xdp_md* ctx) {
long ethhdr_addr = (long)ctx->data;
long ethhdr_end_addr = ethhdr_addr + sizeof(struct ethhdr);
if (ethhdr_end_addr > (long)ctx->data_end) {
return XDP_PASS;
}
struct ethhdr* eth = (struct ethhdr*)ethhdr_addr;
if (eth->h_proto == htons(ETH_P_HOMEPLUG) || eth->h_proto == htons(ETH_P_MEDIAXSTREAM)) {
return XDP_DROP;
} else {
return XDP_PASS;
}
}
char _license[] SEC("license") = "GPL";
EDIT 2 (June 2020): I sent AVM an email describing the problem and asking whether or not there is a way to make the FRITZ!Box stop sending those packets. Their response (translated from German) reads:
The evaluation of the support data you provided did not reveal any errors on the part of the FRITZ!Box.
We have no plans to add the ability to disable the protocols mentioned. The guide you found in our knowledge base describes a persistent solution to avoid future notifications [about unrequested packages hitting the firewall].
