Instead of setting a source why aren't you using the -U flag? It's missing from that command line.
This: arping_cmd = ['arping', arg, '-I', iface_name, '-c', 1, # Pass -w to set timeout to ensure exit if interface # removed while running '-w', 1.5, address]
Does not generate a gratuitous ARP.
Instead of setting a source why aren't you using the -U flag? It's missing from that command line.
This:
arping_cmd = ['arping', arg, '-I', iface_name, '-c', 1,
# Pass -w to set timeout to ensure exit if interface
# removed while running
'-w', 1.5, address]
Does not generate a gratuitous ARP.