1

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,

  • I occasionally see the same under 10.11.3. Turning off Wifi and immediately turning it on again helps. – Thorbjørn Ravn Andersen Feb 2 '16 at 1:21
2

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. :-)

0

This may be caused by the wireless access point having been configured to prevent wireless clients to talk to each other.

The way to verify it (and not rely on ICMP) is to try to ping or telnet to a random port from one of your OSX machines to another one and see if an arp entry for that other machine shows up in the arp table, eg from machine with IP 192.168.0.101 run:

ping -c2 192.168.0.105

or:

telnet 192.168.0.105 22

(note, the telnet command above tries to connect to port tcp/22, which is normally used by ssh, which may not work on the target machine; that's alright, as we're only testing Ethernet/WIFI connectivity)

After any of the above commands, run:

arp -an | grep '(192.168.0.105)'

If the Layer 2 connectivity is there (Ethernet/WIFI), then you should see an output similar to below:

MacBook:~$ arp -an | grep '(192.168.0.105)'
? (192.168.0.105) at (xx:xx:xx:xx:xx:xx) on en1 ifscope [ethernet]

alternatively, if there's no Layer 2 connectivity at all (e.g. as it's prevented by the WIFI Access Point), you'll see something similar to:

MacBook:~$ arp -an | grep '(192.168.0.105)'
? (192.168.0.105) at (incomplete) on en1 ifscope [ethernet]

From that point on you will at least know if the connectivity is prevented by the WIFI AP.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .