Setting up TCP/IP

In virtually all cases, I now recommend the exclusive use of the TCP/IP protocol. It is almost universally useable for all operating systems -- about the only major one that cannot support TCP/IP is Novell Netware before version 5. It is especially important to have TCP/IP when attempting to connect to Linux and other Unix boxes, and be able to use Samba on those machines to get Windows connectivity. Samba only works with the TCP/IP protocol.

There are only three exceptions to my admonition --

  • If you are connecting to a pre-5 Netware server you need IPX/SPX.
  • If you are connecting ONLY to Microsoft machines on a small network without a router and have no plans to change either, then you may use NetBeui.
  • If you need for some particular application a protocol other than TCP/IP.
  • Nonetheless, TCP/IP presents the user with several obligations --

  • To understand the concept of subnet masking or at least know of some combinations of IP addresses and subnet masks that work.
  • To use only IP addresses that are reserved for internal networks.
  • (For Unix systems) To use appropriate domain names that do not conflict with the internet.
  • The Internet Assigned Names Authority has set specific addresses aside for local area networks not connrcted to the Internet at large. Use them! The most common range is:
    192.168.X.Y with a subnet mask of 255.255.255.0
    X can be any number from 0 to 255 inclusive, and Y must be within the range of 1 to 254 inclusive. Typically the numbers 1 or 254 are reserved for gateways or routers, so in practical terms use 2 through 253. Most smaller networks use 0 or 1 for X.

    DON'T use DHCP or automatic addressing for home networks. It requires the maintenance of a DHCP server that must be up at all times. It's not worth it unless you want to set one up to learn how it operates. I find it easier to use statically assigned IP addresses, and maintain a table for the numbers. One good system is to decide on numbers for the computers from 2 to 15, and then decide on which code gets assigned to what operating system and multiply that number by 16 and add the computer number to that. As an example, you decide that Windows gets a number one and Linux gets a number 2. Computer number 2 running windows would have an IP address of 192.168.0.18, and computer 3 running Linux would have an IP address of 192.168.0.35. It is important to avoid having duplicate IP addresses on a network, and this system will help you avoid duplication.