Networking – Cannot Ping B from A Until B Pings A

arpnetworkingubuntu-12.04

I have a server cluster all connected on a local network(all physical machines, not virtual). When trying to ping from Server A to B, I get a Desitination Host Unreachable. I can ping from B to A no problem, which then allows me to ping from A to B for a short while. Because of this behavior I believe I have an ARP issue, although I do not know how to fix it. When running arp -a I get the following result ? (10.0.0.105) at <incomplete> on eth1, which is the IP I am trying to ping. Not sure if it will help at all but here is my /etc/network/interfaces files for the both machines(I am running Ubuntu 12.04 Server).

Server A
auto eth1
iface eth1 inet static
        address 10.0.0.102
        netmask 255.255.255.0

Server B
auto eth1
iface eth1 inet static
        address 10.0.0.105
        netmask 255.255.255.0

Every other server(I have 7 in this network) can be pinged / can ping any other server. It is just a problem between these two. Any help would be greatly appreciated.

Edit

Server A
iptables --list 

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Server B
iptables --list

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Best Answer

Does sound like a arp problem, if its long spanned vlan over a vpn or similar, you may need to add static arp entries, with an ether address of the local switch.

arp -s <destination address> <mac address> -i <interface to go out via>

And if thats the fix, you will have to add this to command to start up scripts.