Cannot ping between OS X on wireless LAN

Networkpingwifi

Macbook Pro OSX 10.10.5, Late 2013 model. Firewall entirely off (Stealth mode is certainly off). Three Macbook Pro’s wirelessly connected to the same wireless network (WPA/WPA2 Personal) under the same netmask with one and only wireless router (192.168.0.1).

Mac 1: inet 192.168.0.101 netmask 0xffffff00 broadcast 192.168.0.255
Mac 2: inet 192.168.0.105 netmask 0xffffff00 broadcast 192.168.0.255
Mac 3: inet 192.168.0.119 netmask 0xffffff00 broadcast 192.168.0.255

If ping each other, one will receive a permanent Request timeout for icmp_seq. If ping a random non-exist address (192.168.0.188), I get No route to host after Request timeout for icmp_seq. If any OS X ping the router (192.168.0.1), then it gets all packets transmitted and received with 0.0% loss.

From the results I assume the OS X can ping router and the router tries to transmit the packet if the IP exist,

Best Answer

First, it seems your wireless router seems to have some firewall part preventing ICMP messages (ping is one part of this protocol suite) going over the wireless lan to prevent a ping flood. To verify this, try out these tests:

  1. Disable any VPN software you may run (VPN software mostly includes Desktop policies preventing "unwanted" protocols to be executed and they insert special routes).

  2. ping -c2 192.168.0.255

A usual behaviour for that command would be to get an answer from all your machines in the same network. If this doesn't work, something else is preventing that. As you wrote you disabled all the OS X firewalls, this command should be successful.

To verify this, go to step 2:

  1. Take two MBP and connect them with one CAT6 Gigabit Ethernetcable and assign IP adresses to the LAN ports:

    MBP1: en0: 172.16.42.5 netmask 255.255.255.0

    MBP2: en0: 172.16.42.6 netmask 255.255.255.0

    MBP3: en0: 172.16.42.7 netmask 255.255.255.0

Now try to ping MBP2 from MBP1 and vice versa and take notes:

MBP1 -> MBP2: 1->2 yes / no, 2->1 yes / no

MBP1 -> MBP3: 1->3 yes / no, 3->1 yes / no

MBP2 -> MBP3: 2->3 yes / no, 3->2 yes / no

If all of these connections are working, then you know the router is the bad guy. Take a closer look in your router configuration and look there for terms like "broadcast storm", "ping flood" or "ICMP broadcast prevention". Switch that feature off and try it again.

Hope this helps in analysing your annoying trouble. :-)