So, I was at a tradeshow and was prepping to demo a network-connected device. Typically, in this situation I use a Linksys wireless router designed to accept a Verizon Wireless air card. However, at this particular show, that tool was unavailable. The solution? A Palm Pre Plus, and a MacBook Pro running Mac OS X 10.6.
Before we begin… my disclaimer: This process worked for me in my environment. Your results may vary. This howto assumes general familiarity Mac OS X and configuring network interfaces. If you use a cellular connection as I did you may rack up some charges. That’s not my problem.
1) Start Internet Sharing
Open System Preferences and open the Sharing preference panel. It should be the last option on the right on the third row (Internet & Wireless). Select Internet Sharing in the left hand list of sharing types. When selecting Internet Sharing be sure not to check the “On” checkbox yet.
Select the network interface that is your connection to the internet from the dropdown labelled “Share your connection from:” In my case I selected AirPort as I was connected to the mobile hotspot feature of the Palm. In the list of network interfaces below the dropdown check the box next to the interface that will connect to the other device. With these two selections made, you can check the “On” box in the left hand list of sharing types. You’ll be warned that this may wreak havoc on your network if you’re not paying attention. Pay attention.
2) Configure Non-BootP Compatible Device
What I discovered was that my device was trying to obtain a DHCP lease from the laptop’s internet sharing, but it was not able to secure one. After some digging I found that BootP is used as opposed to DHCP. So, I figured configuring my device statically could solve the issue.
The default subnet used by Internet Sharing is 192.168.2.x. I used the following setup for my device:
Worked like a charm.
If this doesn’t work for you, double check the configuration of the network interface that is sharing the connection, not the interface that is the source of your internet connection. If it is not using 192.168.2.1 as its IP address then use whatever subnet that interface is using, and increment that interface’s IP address by one. This check should not be done in System Preferences. This check should be done on the command line with ifconfig.
If you experience trouble because the interface that is the source of your internet connection exists in the 192.168.2.x subnet (which many consumer routers do, btw) you may need to change Internet Sharing’s default subnet. There’s a great howto on this topic at macosxhints.com. The article’s link is below.