4 Replies Latest reply on Oct 8, 2014 2:46 AM by xthunderheartx

    Setting static IP in IOT Devkit image

    xthunderheartx

      I managed to get the IoTDK running (thx to mhahn and zoopster) on a clean Kubuntu 14.04 machine and put the IoTDK Linux image on an SD card.  Booted fine and I was able to compile "hello world", transfer it to the target, set a breakpoint, hit it, etc.  Works good.  One annoying issue though, is that the target has a tendency to get a new IP address from the DHCP server on my network pretty regularly.  That throws a monkey in the wrench of course.  So I went to set eth0 to "static" on the target, but there is no /etc/networks/interfaces.  Uh ... guess they used a different mechanism for configuring the network.

       

      Anybody know how it works in this image?  Is there a more appropriate forum for this question?

       

      There are other solutions of course.  I've been meaning to put Smoothwall back into service as my router and it can be configured to assign DHCP addresses to clients statically based on MAC which is cool.  But the simplest solution is to just set to static on the client.  Or at least it seems that way.

       

      Any help is appreciated. I promise not to be snarky this time mhahn

        • 1. Re: Setting static IP in IOT Devkit image
          kona

          I would suggest you to post these questions in Intel® Developer Zone: Internet of Things, it is the most active forum on IoT.

          1 of 1 people found this helpful
          • 2. Re: Setting static IP in IOT Devkit image
            mhahn

            The forum kona mentions would indeed be a good place to post the question.

            But I can try to answer here as well:

            xthunderheartx wrote:

             

            I managed to get the IoTDK running (thx to mhahn and zoopster) on a clean Kubuntu 14.04 machine and put the IoTDK Linux image on an SD card.  Booted fine and I was able to compile "hello world", transfer it to the target, set a breakpoint, hit it, etc.  Works good. 

             

            Good to know - and thanks for your suggestions in the other thread btw.

             

            One annoying issue though, is that the target has a tendency to get a new IP address from the DHCP server on my network pretty regularly. 

            Do you mean you get a new IP address for every reboot?

            I wouldn't expect this behavior as you do have static MAC addresses and typically DHCP servers would reassign the same IP to the same MAC. At least that's the behavior I see at my router.

             

              So I went to set eth0 to "static" on the target, but there is no /etc/networks/interfaces.  Uh ... guess they used a different mechanism for configuring the network.

             

            Anybody know how it works in this image?  Is there a more appropriate forum for this question?

             

            There are other solutions of course.  I've been meaning to put Smoothwall back into service as my router and it can be configured to assign DHCP addresses to clients statically based on MAC which is cool.  But the simplest solution is to just set to static on the client.  Or at least it seems that way.

             

             

            In general: The connection manager "connman" is doing a lot of magics and as long as you have the connman service running you shouldn't modify network configurations as it might be overwritten by connman again.

            Some notes:

            • by purpose there is no "eth0" on the Intel(R) IoT devkit image if you don't modify the default behavior. Your adapter should be named starting with "enp " (see e.g. PredictableNetworkInterfaceNames)
            • you can configure connman's behavior using "connmanctl". In particular you can set a static IP address that way. E.G.:

            connmanctl> services

            *AO Wired                ethernet_984fe*_cable

            connmanctl> config ethernet_984fe*_cable --ipv4 manual <address> <netmask> <gateway>


            • Note: If setting static you obviously should make sure to only assign in the range of IP addresses which is not controlled by your DHCP server.
            • you could use the IPv6 address which doesn't require DHCP and is static anyways rather than IPv4. If your OS and network supports it Eclipse works perfectly with IPv6 addresses. If you call "ip a" you'll find the IPv6 address printed after "inet6" take the whole colon seperated string up to but without the terminating "/".

             

            Any help is appreciated. I promise not to be snarky this time mhahn

             

            1 of 1 people found this helpful
            • 3. Re: Setting static IP in IOT Devkit image
              xthunderheartx

              The habit of my target getting a new IP on a regular basis was the result of a really short lease time setting in the router's DHCP server.  I reset set it to 365 days which I imagine will eliminate that annoyance.  I had never heard of connman.  Thanx for the pointer.  Got it now.  I haven't considered IPv6, though all the machines on my net should grok it.  Don't know about some of the other devices like VOIP phones, my wife's reef tank controller etc.  I'll evaluate those.

               

              Thanks again for the help Matthias.

               

              Dallas

              • 4. Re: Setting static IP in IOT Devkit image
                xthunderheartx

                Thanx for the pointer to the other forum Kona.  I was unaware of that one and it is very helpful!