Monday, February 18, 2013

Getting Raspberry Pi DHCP working with internet sharing from OS X

My sons asked to learn more about computers, so we got a Raspberry Pi. We also got Adafruit's Pi Cobbler kit. Using Adafruit's Occidentalis distro of Raspbian, I had to do a little configuration to make the following setup work, and it turned into a little bit of a networking lesson for my kids, too. I figured I'd write it up in case some other Googling Pi user needs to learn & solve this particular combination of problems - or in case I forget and need to re-do this sometime. :-)

The goal was to have the Pi share a wifi-equipped Mac's network connection.

Mac running Lion (OS X 10.7) is connected to Internet via wifi.

Pi connected via Ethernet cable to Mac.

Share the Mac's Internet connection: on the Mac, go to System Preferences - Sharing.
  • Check the box Internet Sharing from the list of services. 
  • Confirm that that the sharing status is On. 
  • Confirm that Ethernet is checked on the list of ports to share to.
Now power on the Pi. It should get an IP address assigned via DHCP, and it should be on the network. Thanks to Occidentalis, the Pi is registered with Rendezvous using the name raspberrypi.local. If  DHCP and Rendezvous are both working, you can reach the Pi from the Mac using that name. This is great, because you can plug in and access a headless Pi quite easily this way.

Macintosh:~ dan$ ping raspberrypi.local
PING raspberrypi.local ( 56 data bytes
64 bytes from icmp_seq=0 ttl=64 time=0.720 ms
64 bytes from icmp_seq=1 ttl=64 time=0.982 ms
64 bytes from icmp_seq=2 ttl=64 time=0.919 ms
--- raspberrypi.local ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 0.720/0.874/0.982/0.112 ms

But, it wasn't working for us. The Pi wasn't registering its name, we couldn't reach it from the Mac. Pings just resulted in "ping: cannot resolve raspberrypi.local: Unknown host". We tried all the suggestions on the FAQ and troubleshooting wiki (cable swapping, reflashing the Pi's software, swapping power supplies) but they did not help.

There were two problems: the Pi's network configuration needed to be changed, and the Mac's Internet Sharing needed to be restarted.

Fixing the network configuration on the Pi, David Singleton's web page gave me a clue about needing to enable the Ethernet interface on the Pi to make it get configuration from DHCP.

This is the original network interface configuration on Occidentalis:

pi@raspberrypi:~$ cat /etc/network/interfaces
auto lo

iface lo inet loopback
iface eth0 inet dhcp

auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
        wpa-ssid "my-network-ssid"
        wpa-psk "my-wifi-password"

Using nano, and opening the file as superuser because it is a restricted system file,

pi@raspberrypi:~$ sudo nano /etc/network/interfaces

we make the following additions (in bold):

auto lo

iface lo inet loopback
auto eth0
iface eth0 inet dhcp

#auto wlan0 allow-hotplug wlan0 iface wlan0 inet dhcp
#        wpa-ssid "my-network-ssid"
#        wpa-psk "my-wifi-password"

Here, eth0 is the Ethernet interface,  lo is the loopback interface, and wlan0 is the wireless interface.

We don't have a wireless adapter on our Pi, so we commented out the three lines of wireless interface configuration.

Then, we restart the network, forcing it to load the new interfaces file.

pi@raspberrypi:~$ sudo /etc/init.d/networking restart

That worked better. The Pi was now coming up and making a DHCP request. But it wasn't getting a response. That's not a Pi problem, that's a problem with the Mac's Internet Connection Sharing.

Off to Google again - this thread showed other people had problems with ICS in Lion. The easiest suggestion was to simply stop and restart the service, and this worked. One more restart of the Pi's networking, and as David says: "yay, network!"


  1. Thanks for the help! Worked perfectly in getting my Pi going!

    1. Great Article Cloud Computing Projects

      Networking Projects

      Final Year Projects for CSE

      JavaScript Training in Chennai

      JavaScript Training in Chennai

      The Angular Training covers a wide range of topics including Components, Angular Directives, Angular Services, Pipes, security fundamentals, Routing, and Angular programmability. The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training

  2. Thank you very much for taking the time to post this. This fixed my problem and ended much frustration!

  3. Thank you very much, it helped to me!

  4. Wow i can say that this is another great article as expected of this blog.Bookmarked this site..
    carding forum

  5. DOCSIS 3.0 Cable architecture probably can provide you faster speed up to 300 Mbps - but depends on the infrastructure the ISPs have here

  6. This is my first time i visit here. I found such a substantial number of interesting stuff in your blog especially its examination. Really its inconceivable article. Keep it up. Speed Test Etisalat

  7. Thank you because you have been willing to share information with us. we will always appreciate all you have done here because I know you are very concerned with our.

  8. Thanks for picking out the time to discuss this, I feel great about it and love studying more on this topic. It is extremely helpful for me. Thanks for such a valuable help again.

  9. The technology empowers different sorts of work and work to be decoupled from each other. how to write a blog post that converts

  10. On the off chance that you have been in arrange showcasing for any period of time you have presumably had somebody in your upline disclose to you that there is no conceivable method to manufacture an effective system advertising business on the web and that they best way to do it is to make a rundown of everybody you know on planet earth, consider them and offer them the opportunity to band together with you in your business opportunity.webinar software

  11. Thank you for another informative website. Where else could I get that type of information written in such an ideal way? I have a project that I’m just now working on, and I have been on the look out for such information. مقوي سيرفس الكويت

  12. The internet can indeed, serve people with different lifestyles in a lot of ways. It can be a means of communication, a good source of information, a mode of entertainment, a way of making purchases, banking transactions and much more. KickassTorrents proxy

  13. I don't contest these discoveries. I as well, need laborers I speak to recover their personal satisfaction, including their full working class potential, as fast as could be expected under the circumstances.Email Extractor Software

  14. TV, portable and even types of customarily non-advanced media, for example, announcements and travel signs. Basically any advertising media that is conveyed electronically is viewed as computerized promoting. CBT Mass Email Sender

  15. Positive site, where did u come up with the information on this posting?I have read a few of the articles on your website now, and I really like your style. Thanks a million and please keep up the effective work. internet providers calgary

  16. Just saying thanks will not just be sufficient, for the fantasti c lucidity in your writing. I will instantly grab your rss feed to stay informed of any updates. internet speed test

  17. This is a brilliant blog! I'm very happy with the comments!.. sviluppo siti web Milano

  18. The hardest task to take care of ever is to stand up your customer or chief yet indeed doing this consistently can make your infuriating website measure a wonderful encounter for yourself and for your customers too. Webdesign

  19. At the point when you are maintaining a web design business, it is vital for you to comprehend that your customers are the an integral part of your business. Webdesigner

  20. I appreciate the time you put into this post. In fact your writing has me wanting to kickoff my own webblog now. Thanks again for sharing this up. buy here

  21. you’re actually a good webmaster. The website loading speed is amazing. It sort of feels that you’re doing any unique trick. Also, The contents are masterpiece. you’ve performed a excellent process on this subject! GoodCrypto

  22. brand positioning agency
    It's not my very first time to visit this blog; I’m visiting this daily and acquire superb info from here day by day.

  23. I’d have to examine with you here. Which is not one thing I usually do! I take pleasure in reading a post that may make folks think. Additionally, thanks for permitting me to comment! coinspot australia review

  24. I’m impressed, I have to admit. Really rarely can i encounter a weblog that’s both educative and entertaining, and let me tell you, you could have hit the nail on the head. Your thought is outstanding; the thing is an element that not enough people are speaking intelligently about. My business is very happy which i found this in my find some thing concerning this. upcoming nft mints

  25. Hello there! I know this is kinda off topic but I was wondering which blog platform are you using for this site? I’m getting fed up of WordPress because I’ve had problems with hackers and I’m looking at alternatives for another platform. I would be awesome if you could point me in the direction of a good platform. reddit