not sure if this can ever hang (since any arp query is a success and they happen arround every 10 secs or so anways) but this would fix the issue we would need to switch from sync reading to polling with a time interval and a short timeout of maybe 1 second