I have observed that the roboRIO (RR) seems to remember its last assigned IP address around power off and back on. It seems reluctant to change its IP address when you change the dhcp assignment range in the router. It does change at times when you change the router starting address but other times seems to ignore the change and retain an earlier assignment.
This exploration came about because we had a case where mDNS just quit working and we were dead in the water. Looking at the deploy in Eclipse it falls back to the xx.xx.xx.2 fixed ip address if mDNS fails. So I thought it would be good to start the router dhcp at .2, so the RR would be assigned .2 and the fall back would work. But I was not able to get the RR to take an address below 20 (when it would take a new address from the router).
mDNS went back to working for no apparent reason and I’m spooked by this so getting the RR on .2 would seem to be good, unless there is a place in the eclipse plugin files where you can set the default IP used for deploy fall back.
A DHCP client (ie the roboRIO) is able to ask for a specific IP address. In this case, the roboRIO probably asked for it’s old IP address, and if that address was still in the valid range, the dlink DHCP server probably assigned it. If you changed the dlink to serve a completely different range, eg 220-230, I would expect the roboRIO to change. Does this match the behavior you’re seeing?
The dlink supports DHCP address reservation, where the server will always give out the same address to one device. You can read about it on page 30 of the manual: http://www.dlink.com/-/media/Consumer_Products/DAP/DAP%201522/Manual/DAP_1522_B1_Manual_v2_10_EU.pdf
Thanks for that. It makes sense. I did not realize DHCP allowed for the device to request a specific IP address. I will test changing the range.
FYI,
If you set the IP address of the RoboRio to a static IP such as 10.TE.AM.2, mDNS will still work, but all devices which do not support mDNS can use the static IP address.
If you have further networking questions there may be an answer on our controls website
Doing the above may be your optimal approach in all instances. This is exactly what I do on our team (static IP for RoboRio’s).
when you state the mDNS did not work, and then worked again were you always using the same computer? For mDNS to work, the host computer must have a mDNS resolver.
At competition, the DS will be reprogramed to the FMS (using the competition bridge config utility), and I would suspect that it will change the range of the DHCP back to defaults, although I can not confirm if that is true, or if the user specified range will persist.
http://controls.team2168.org
The mDns issue has not recurred so I suspect that was my error. I am interested in setting static roboRIO ip address but I did not find where you do that in the rio config web pages. Where is this done?
If you decide to do this, the easiest way is to access the roboRIO’s web page, by using the address as the URL. There is a networking tab, and it will let you configure it much like a wifi router.
But I’m not sold that you should turn it off. If you are using configurations where DHCP is not available, sure, but I don’t understand why it isn’t better to fix the DHCP situation.
Greg McKaskle
We seem to have solved the mdns issue as it is working fine now. I did find how to set a static IP on the roboRIO and also how to set the eclipse deployment fall back IP (to something other than .2) and even how to get dhcp to assign the .2 address to the rio. So, many ways to tinker with connection failure if it should become a problem again.
Thanks all.