Sharing an Internet Connection
Computer Configuration Issues
If you use a broadband connection to the Internet, you’ll probably have a switch/router appliance connecting your small LAN to the cable or DSL modem. These inexpensive devices allow your LAN to share a single Internet connection (that is, a single IP address) on the Internet, while providing for separate addresses for each computer on the LAN.
DHCP (the Dynamic Host Configuration Protocol) allows the router/switch to automatically configure your computer with the network addressing information it needs when it boots up. When you add a new computer to the LAN, you need to be sure that it’s configured to use DHCP. Otherwise, if you’ve configured a static address on the computer, you need to be sure that the following are true:
- The address is compatible with the addresses of other computers on your network.
- The address is not already in use by another computer on the network.
Recent Windows versions make it easy to configure DHCP and to verify your settings. For example, Windows XP uses this method to configure a LAN connection to use DHCP:
- Select Start, My Network Places, View network connections.
- Right-click your Local Area Connection and select Properties.
- Scroll down in the Components section of the properties sheet shown in
Figure 1, highlight Internet Protocol (TCP/IP), and click the Properties
Figure 1 Select Internet Protocol to troubleshoot network address issues.
- The Internet Protocol (TCP/IP) Properties sheet pops up, as shown in Figure
2. If you are using DHCP, be sure that the Obtain an IP Address Automatically
option is selected. Unless your Internet provider has told you otherwise, the
Obtain DNS Server Address Automatically option should also be selected.
Figure 2 This system gets its IP address from a DHCP server, which might be built into a router, a wireless access point or gateway, or a computer running Internet Connection Sharing.
- If you configured your computers with static addresses, select Use the
Following IP Address, and the IP Address, Subnet Mask, and Default Gateway
fields should contain the appropriate values. If you chose to use DHCP
(automatic configuration), you will not see the IP address, DNS servers, and so
on that were assigned by the switch. Figure
3 shows an example of a static
configuration. Another way to view user-assigned (static) or server-assigned
(DHCP) IP address information is to run IPCONFIG /ALL from the command
line, as described in step 7.
Figure 3 An example of static IP address configuration.
- If all looks okay in the configuration screens, check out what address your computer is actually using. Choose Start, Programs, Accessories, Command Prompt for Windows 2000, Windows XP or Windows 2003 Server, or Start, Programs, Command Prompt for earlier versions of Windows.
- From the command prompt, issue the command IPCONFIG /ALL for Windows NT/2000/XP or Windows 2003 Server operating systems (you can use WINIPCFG to find the same information for Windows 95/98 or Windows Me). The response to this command will include a lot of information, so look for the IP address and the subnet mask. All computers on the network should be part of the same network or subnet.
It doesn’t matter if all the cables are connected to the hub or switch and each computer’s network card if you have misconfigured IP addresses or subnet masks. For example, a computer with an IP address of 192.168.0.34is not going to talk to a computer with an address of 172.16.0.23, no matter how long you try, unless you go through a router that has been configured to pass this information. The network adapter card detects the data you try to send back and forth, but because the protocol stack knows that it’s destined for a different network, those packets are ignored and never passed up to the Application level.
Figure 4 shows an example of using a switch/router to connect to the Internet through a cable or DSL modem.
Figure 4 Connect to the Internet using a cable or DSL modem and a router/switch. Note that the IP address for Computer C is not valid on the LAN and can’t pass through the switch/router.
In this example, the Internet service provider (ISP) has assigned an IP address to your connection (2184.108.40.206). This might be a permanent assignment (known as a static IP address) or the ISP might periodically change the IP address. In either case, you have one IP address. Because you have more than one computer, you went to the local computer store and bought a small switch/router designed to work with broadband connections. Note that the switch/router is plugged into the broadband modem using one port (usually known as the WAN port), and stations connecting through the switch/router plug into LAN ports or use wireless connections. To keep track of both connections, the switch/router uses a different address on the port that connects to your LAN. This address is known as the default gateway IP address.
In this example, the IP address is 192.168.0.1. The switch/router uses the address range of 192.168.0.0 through 192.168.0.254to allocate IP addresses to computers on the LAN. In reality, most routers are configured to provide IP addresses to only a fraction of the full range. In this example, we assume that the router is configured to use DHCP to provide IP addresses to ten computers (192.168.0.100–192.168.0.109). Other IP addresses in this range can be used for static IP addresses. In Figure 50.6, computer A has a server-assigned IP address, while computer B has a static (user-assigned) IP address. Note that both addresses are in the same 192.168.0. range as the LAN (default gateway) address used by the router.
Note that Computer C cannot connect to other computers on the network, and cannot connect to the Internet either. It has a static IP address range in the 172.16.0.0–172.16.0.254 range, which is not the same range of IP addresses used by other computers.
Because the router has two addresses (a public and a LAN IP address), it is able to determine what traffic is local and what traffic is bound to or from the Internet. When computer A (192.168.0.100) on your network wants to send or receive data to or from the Internet, the switch/router knows that the IP address of the Internet server (2220.127.116.11) is different from the LAN address (the 192.168.0.x address space). Thus, Computer A knows that it must send the data packet to the default gateway, which is the switch/router (192.168.0.1). When the switch/router receives the data packet, it substitutes its own valid Internet address (218.104.22.168) in the packet header and sends it to the Internet through the broadband modem. When a response is received back from the Internet connection, the switch/router removes the 222.214.171.124 address from the packet header and puts Computer A’s address (192.168.0.100) in the header so that it can be delivered to Computer A. Traffic generated by or destined for Computer B works the same way, except that its address (192.168.0.34) is used.
The important thing to keep in mind here is that addresses used inside the network are not valid on the Internet. The switch/router must use sleight of hand to act as a "man in the middle" for you so that, although you have multiple computers on your LAN, the switch/router makes the cable or DSL modem think you have only one. The switch/router keeps track of which computer on the LAN sends out requests and makes sure that packets are routed back to the correct computer.
When Computer A wants to talk to Computer B, it compares the address of Computer B (192.168.0.34) with its own address. Because the address falls in the same network address space, it doesn’t send the packet to the default gateway. Instead, it just broadcasts a packet on the LAN knowing that Computer B will see the packet and pick it up.
So far, everything is working as it’s supposed to. However, let’s suppose you just brought a computer from work to your home office (Computer C) and plugged it into your network. At work, the computer had been configured with a static address of 172.16.0.23. When you try to send or receive data from Computer C, nothing happens because of the following:
- Computer C has an IP address that does not match the addresses on the LAN, so the other computers just ignore the packets that Computer C sends out.
- Computer C was configured at work to use a different default gateway address, so it can’t even get a packet to go through the router/switch.
The point is that if your switch/router allows for DHCP and you set up each computer to use DHCP, things should work just as you expect. If you try to mix and match computers with different subnets on the same LAN, you’re going to have trouble. If you need to use static IP addresses, make sure you never use an address that could also be assigned by the DHCP server in the router. If two devices have the same IP address, neither one will work.
Try using the ping command from another computer to determine whether it can bounce packets off another address on your network. If not, you probably have unplugged the computer from the network (either at the network card end or at the switch/router or hub).