jpetazzo / pipework

Software-Defined Networking tools for LXC (LinuX Containers)
Apache License 2.0
4.22k stars 727 forks source link

Adding another way to flush ARP cache #60

Closed nwalker closed 7 years ago

nwalker commented 10 years ago

This is a workaround for the case I've described here. I've added ping to force gateway to update ARP cache entry for IP of macvlan interface. This update is done on first IP packet with new MAC:IP address pair, looks like just arping is not enough.

kmanna commented 10 years ago

Could this be used instead of arpping? I've had issues with arpping not returning true, see #57 and #59.

jpetazzo commented 10 years ago

MMmmmaybe. @discordianfish is that one of the tricks you had to use when experimenting with pipework and HA? Or did you end up using only arping?

nwalker commented 10 years ago

Sorry, Kyle, I've totally forgot to answer, shame on me.

Well, I'm not so good in networking deeper than IP(and even there), but I'm not sure, that it can replace arping at all. As I understand, arping is more generic and broadcasts appearance of new MAC to all NIC's of same network segment(or how this thing is called properly?..), not just gateway.

Why it was not working in my case? I don;t know. Maybe it's Juniper specific issue, kind of "just ARP packet is not enough to update ARP cache entry", maybe arping is called improperly somehow. That 'ping' idea came from admin in my hosting support, he told something like "just ping tha gateway every time you change a MAC".

BTW, I'm sorry for my horrifiying english.

discordianfish commented 10 years ago

@jpetazzo Nope, back when I was using pipework I don't think I used any kind of arping/ping

jefferai commented 10 years ago

@discordianfish Can you describe what you are doing now? Perhaps pipework isn't the best solution for the OP either.

discordianfish commented 10 years ago

@jefferai @nwalker I'm just using the host networking (docker run --net host ...)

jpetazzo commented 9 years ago

@nwalker, @kmanna, did you end up drawing conclusions on this? I.e. is this helpful? If yes feel free to rebase (or let me know since that's trivial).