View Single Post
  #3   Spotlight this post!  
Unread 17-01-2015, 09:37
robert1356 robert1356 is offline
Registered User
AKA: Robert Palmer
FRC #3824 (RoHAWKtics)
Team Role: Mentor
 
Join Date: Jan 2015
Rookie Year: 2012
Location: Knoxville, TN
Posts: 48
robert1356 is an unknown quantity at this point
Re: mDNS with router not working correctly

We are seeing this problem quite a bit, actually multiple "we's". There are three teams working at the same facility and all three teams are having various similar issues.

(yes, we have run the radio config utility).

I have not been able to completely isolate the issue. Generally it comes to this: computer connects to wifi successfully, computer can connect to roborio if IP address is used, computer fails to connect if mDNS name is used (roborio-team.local).

A quick fix is to set the computer to a static IP address, it will begin to work, then if you change back to a DHCP address, it will continue to work (at least for a while, I haven't verified it it works indefinitely or if it fails again later).

IPv6 may have some relation to the issue as the PC ping responses, when they work initially, have IPv6 addresses instead of IPv4 addresses.

Also - mDNS always works when connected directly via ethernet cable to the roborio.

What I have done is run some tests and collected wireshark network traces (attached).

In the traces, I can see the mDNS requests being sent, but never see a response from the roborio.

Here is what I did in my test:
  • powered robot on (roborio and router)
  • connected a PC to the network wirelessly
  • from PC "ping roborio-3824.local" - worked, but response was on IPV6 address
  • logged into DLINK to look at DHCP assignments
  • roborio-3824.local --> 10.38.24.24
  • pc --> 10.38.24.20
  • DHCP range specified as 10.38.24.20 through 199, subnet mask 255.255.255.0
  • connected Mac OS X to wireless network
  • mac received IP 10.38.24.21, subnet 255.255.255.0
  • checked on DLINK - it shows the mac assigned to 10.38.24.21
  • ... so far, everything looks good ...
  • Mac: "ping roborio-3824.local" -- result:
  • Code:
    Dropkick-Murphys:~ robert$ ping roborio-3824.local
    ping: cannot resolve roborio-3824.local: Unknown host
  • changed Mac to static IP and ping'd - worked
  • changed Mac back to DHCP and ping'd - worked after route failure:
  • Code:
    ping: sendto: No route to host
    ping: sendto: No route to host
    Request timeout for icmp_seq 0
    ping: sendto: No route to host
    Request timeout for icmp_seq 1
    ping: sendto: No route to host
    Request timeout for icmp_seq 2
    ping: sendto: No route to host
    Request timeout for icmp_seq 3
    ping: sendto: No route to host
    Request timeout for icmp_seq 4
    ping: sendto: No route to host
    Request timeout for icmp_seq 5
    ping: sendto: No route to host
    Request timeout for icmp_seq 6
    ping: sendto: No route to host
    Request timeout for icmp_seq 7
    ping: sendto: No route to host
    Request timeout for icmp_seq 8
    Request timeout for icmp_seq 9
    64 bytes from 10.38.24.24: icmp_seq=10 ttl=64 time=1.695 ms
    64 bytes from 10.38.24.24: icmp_seq=11 ttl=64 time=5.960 ms

The shorter name is a capture from using the Mac in DHCP only
The longer name was when I wanted to test using static IP. I did a ping from the Mac while in DHCP, then switched to static, did a ping, then switched back to DHCP and did a ping.
Attached Files
File Type: zip wireshark captures.zip (25.3 KB, 3 views)