On Thursday, 14 February 2019 16:52:43 CET Linus Lüssing wrote:
Currently incoming ARP Replies, for example via a DHT-PUT message, do not update the timeout for an already existing DAT entry. These ARP Replies are dropped instead.
This however defeats the purpose of the DHCPACK snooping, for instance. Right now, a DAT entry in the DHT will be purged every five minutes, likely leading to a mesh-wide ARP Request broadcast after this timeout. Which then recreates the entry. The idea of the DHCPACK snooping is to be able to update an entry before a timeout happens, to avoid ARP Request flooding.
This patch fixes this issue by updating a DAT entry on incoming ARP Replies even if a matching DAT entry already exists. While still filtering the ARP Reply towards the soft-interface, to avoid duplicate messages on the client device side.
Signed-off-by: Linus Lüssing linus.luessing@c0d3.blue
This patch was verified in VMs via gratuitous ARP Replies generated by "mausezahn", together with the "batman-adv: allow snooping gratuitous ARP Replies" patch.
Before this patch, the timeout observed via "batctl dc" would continue to increase on gratuitous ARP Reply reception. After this patch, the last-seen value was reset to 0 successfully.
@Antonio: Any opinions about the patch [1]?
Kind regards, Sven