Network IP & DHCP

Introduction

Some of the items most confusing to systems administrators adding the Internet to their existing network environments are IP address assignment, subnet masking, and Domain Name Service. In trying to make this easier for the beginner, I've created some tools and made some pointers to assist you if needed.

Table of Contents

Generate Forward and Inverse DNS files (interactive)
IN.US Domain Application (interactive)
Domain Name Service Tips and Pointers
Subnet Masks
Dynamic IP Address Assignment Goodies
BOOTP Discussion and BOOTP software
DHCP Discussion and DHCP software


Ameritech Access Indiana Tools

Congratulations, you're now connected to Ameritech's Access Indiana Network. Now, you must choose whether you are going to provide your own Domain Name Service (DNS) or have us run primary DNS for you. Either way, you must register both your domain name, and your inverse domain (your inverse domain is really registering your Class C IP addresses).

To facilitate this, we've created a couple of tools for your use. If you will be running your own primary DNS (highly recommended), use our on-line DNS files generator. This will create generic files for your forward and reverse domains. You can then save these files, customize them to fit your domain and test your configuration. You may also read up on testing your configuration for more tips and pointers.

Once you've tested your DNS, then submit your domain name registration and inverse domain registration to hostmaster@accessindy.com.

If you prefer, we can run primary DNS for you. Once again, you will need to submit your domain name registration and your inverse domain registration to hostmaster@accessindy.com so we can enable this on our systems. If we are running primary DNS for you, any time you add hosts to your network and assign real names, you will have to send an email request to hostmaster@accessindy.com advising us of the hostname and IP address (i.e. www.yourschool.k12.in.us is assigned IP address 192.168.1.2).

Make Forward and Reverse DNS files

Make sample forward and reverse domain name files. They will include a generic name for each ip in your network. Whey you add real names, simply update these templates!

Submit your IN.US domain registration

Fill out your US domain template on-line with us. We'll then check it and send it to the appropriate authorities. It may take up to 15 working days to get your domain on the 'Net, but we'll advise you when it is active.

Domain Name Service Goodies

Introduction to Domain Name Service
Setting up DNS
Diagnosing DNS
DNS Configuration Files (discussion and examples).
DNS Server Software for UNIX, NT, Windows, and Macintosh
ISC BIND Home Page
Domain Name Service Guide from the University of Southern Maine.

Subnet Masks

Although subnet masking may seem like greek to you, it is really fairly simple (if you understand how computers really work, on the binary level!) A subnet mask simply determines the number of bits (out of a 32 bit IP address) that designate the network portion of an IP address. Applying a subnet mask to an IP address allows you to identify the network and node parts of the address.  Performing a bitwise logical AND operation between the IP address and the subnet mask results in the Network Address or Number. 
For example, using our test IP address and the default Class B subnet mask, we get:
10001100.10110011.11110000.11001000      140.179.240.200   Class B IP Address
11111111.11111111.00000000.00000000      255.255.000.000   Default Class B Subnet Mask
--------------------------------------------------------
10001100.10110011.00000000.00000000      140.179.000.000   Network Address

Default subnet masks:

  • Class A - 255.0.0.0 - 11111111.00000000.00000000.00000000
  • Class B - 255.255.0.0 - 11111111.11111111.00000000.00000000
  • Class C - 255.255.255.0 - 11111111.11111111.11111111.00000000
You may also notice that when your ISP gives you a class C network address they may document it as 199.88.77.0/24, the /24 indicates the number of bits corresponding to the subnetwork mask, i.e. 255.255.255.0 when you convert it to digital. Take a look at the following links for more information:

Class C Subnet Masking Tables

Dynamic IP Address Assignments

There are many ways to manage your IP address assignment. In the good old days, the underworked network administrator simply manually configured each workstation with its unique IP address, and also configured its default gateway, Domain Name Servers, subnet masks, etc. With BOOTP and DHCP, the overworked network administrator gains the advantage of managing IP address assignments from the safety of their own familiar server. BOOTP and DHCP also facilitate managing IP addresses in a public computer area where you wish to deter the creative mind from making up their own IP address (i.e. picking the IP address of your default gateway may bring your whole IP network down!) Below are some resources which may help.

BOOTP

The predecessor to BOOTP was RARP. When given a MAC-layer address (the unique hardware identifier assigned by the manufacturer of Ethernet and Token Ring NICs) RARP returns the IP address assigned to a node.

RARP, however, is not routeable and doesn't necessarily provide all the information a network client needs to complete its configuration.

Most IP clients need additional information such as the subnetwork mask, gateway address, and addresses of Domain Name Service (DNS) servers. BOOTP not only provides this information but is also routeable. Bothe RARP and BOOTP require manual preconfiguration. Network administrators are required to preassign IP addresses and enter them in a table. Still both RARP and BOOTP help eliminate the need for manual configuration at each PC.

A Unix-based BOOTP server from CMU is available via anonymous FTP to lancaster.andrew.cmu.edu in the pub directory as bootpd.version.tar.
There are reportedly many PC-based BOOTP servers:
  • Novell: Hellsoft (free!), via anonymous FTP to panda.circa.ufl.edu in /sys/pub/novell/ip/bootp
  • Novell Lan WorkGroup
  • NCSA LPD server also does BOOTP: anonymous FTP to tacky.cs.olemiss.edu in the pub/lpd/ncsa directory.
  • Distinct BOOTP, works over WINSOCK, contact: tech@distinct.com
  • Tandem BOOTP, works over WINSOCK, contact: stu@tandem.com
  • KA9Q, helix.nih.gov:/networking/bootp.zip

DHCP (Dynamic Host Configuration Protocol)

DHCP Frequently Asked Questions
The Best Solution
The IETF (Internet Engineering Task Force) established the Dynamic Host Configuration Working Group (DHCWG) to develop more flexible IP administration and configuration tools. The subsequent series of RFCs resulted in DHCP.

Although DHCP is relatively new (DHCP products have been available for around two years) and BOOTP has a larger installed base, DHCP is becomming the protocol of choice. Several implementations are available free on the Internet, and commercial versions can be obtained from numerous vendors.

DHCP's main advantage is that it lets administrators assign IP addresses to new nodes on the fly. DHCP servers can support three methods of address assignment: manual, automatic, and dynamic.

Manual is the functional equivalent to BOOTP, where an administrator must preconfigure IP addresses in a table of MAC addresses. With automatic address assignment, the DHCP server allocates addresses from a pool of available addresses that is specified by the network administrator. Once allocated, the IP address is permanently associated with a MAC address until manual intervention.

The last method is dynamic, whre the DHCP server allocates from a pool of addresses for a specified length of time, called the lease period. At the end of the period, the IP address is returned to the server's pool. This method best suites portable computers and public computer labs.

Techie DHCP Discussion- The DHCP client-initialization process is simple. When a workstation boots, it submits a DHCPDISCOVER request containing its MAC address and possibly other information, such as a lease preference or previous address assignment. The DHCP server then searches its table for an assignment for that workstation. If it finds one, it replies with a DHCPOFFFER containing the address, a lease period, and other configuration information, such as subnet mask and default gateway.

If no assignment is found, the server responds with an available address. The client then slects the address and replies with a DHCPREQUEST. The server commits the address registration and responds with a DHCPACK. If the server cannot acknowledge the request, it issues a DHCPNAK, and the client begins again.

  • What freeware DHCP servers are available?

    (This is not necessarily a complete list)

    
    950415 Bootp server:
     Bootp 2.4.3 (not DHCP, but with the "DHCP patches" mentioned
     below, can handle DHCP requests)
     ftp://ftp.mc.com/pub/bootp-2.4.3.tar.Z
    950425 Bootp server version 2.4.3 with "samba" DHCP patches
     (does manual allocation of IP addresses)
     http://www.sghms.ac.uk/~mpreston/bootp_dhcp.tar.Z
     (within http://www.sghms.ac.uk/~mpreston/tools.htm")
    950706 "samba" DHCP patches for bootp server:
     (does manual allocation of IP addresses)
     ftp://nimbus.anu.edu.au:/pub/tridge/samba/contributed/DHCP.patch
     (note: I've heard that the patched server will crash if it receives
      one particular optional packet, the DHCP Release packet)
    950711 Patched bootp server supporting DHCP-based "automatic" allocation:
     (gives addresses dynamically, but never takes them away)
     ftp://ftp.ntplx.net/pub/networking/bootp/bootp-DD2.4.3.tar.gz
    951219 BOOTP server and patches for DHCP
     ftp://africa.geomic.uni-oldenburg.de/pub/people/joey/dhcp/bootpd/
    960112 OS/2 port of BOOTP server with patches for manual DHCP support
     ftp://ftp.leo.org/pub/comp/os/os2/tcpip/systools/bootpd-243-dhcp.zip
    960130 Rose-Hulman Institute of Technology "Mondo-DB" LAN administration
     project: modified DHCP server planned
     http://www.rose-hulman.edu/~allard/Mondo-DB/index.html
    950630 WIDE Project:
     Akihiro Tominaga (tomy@sfc.wide.ad.jp)
     WIDE Project
     Keio Univ.
     Japan
     ftp://sh.wide.ad.jp/WIDE/free-ware/dhcp/dhcp-1.2.1.tar.gz
     Check Archie for dhcp-1.2.1 because lots of sites distribute it.
     Beta version:
     ftp://sh.wide.ad.jp/WIDE/free-ware/dhcp/dhcp-1.3beta.tar.gz
    960308 Internet Software Consortium DHCP/BOOTP Server (ISC dhcpd beta 0)
     ftp://www.isc.org/pub/dhcp/DHCPD-BETA-0.tar.gz
     ftp://www.isc.org/pub/dhcp/DHCPD-BETA-0.tar.gz
     http://www.isc.org/isc
    960312 Carnegie Mellon University DHCP/BOOTP server (SunOS, dhcp-3.3.7)
     ftp://ftp.net.cmu.edu/pub/dhcp/dhcp-3.3.7.tar.gz
    960430 Internet Software Consortium DHCP/BOOTP Server (ISC dhcpd beta 1)
     ftp://ftp.fugue.com/pub/DHCPD-BETA-1.tar.gz"
    
    

  • What commercial DHCP servers are available?

    (This is not necessarily a complete list)

    
    950425 Silicon Graphics
    951010 Wollongong: included in next release of PathWay for OpenVMS which is in
           beta
    951010 TGV: DHCP/BOOTP server will be included in Multinet for VMS v3.5.
           http://www.tgv.com/
    951121 TGV(800-848-3440): MultiNet 3.5 for OpenVMS includes DHCP server.
           mailto:sales@tgv.com
           http://www.tgv.com/
    951207 IBM: DHCP server included in AIX 4.1.4 server packages.
           Also includes custom DNS server that is "DHCP knowledgeable".
           http://www.ibmlink.ibm.com/(search for DHCP in SalesManual)
    951219 Puzzle Systems: WEBserv (NLM(s) that do DHCP, BOOTP, HTTP, and FTP)
           mailto:info@puzzle.com
           http://www.puzzle.com/
    951220 Process Software: server for OpenVMS included in TCPware for OpenVMS
           http://www.process.com/
    960110 Quadritek Systems, Inc. (DHCP server included in next release)
           http://www.qtek.com/qsi-qip.html
    960130 Network TeleSystems: Shadow (PC-based)
           http://www.ntsi.com/nts_shadow.html
    960130 Digital: RoamAbout Mobile IP Client/Server Network Software V2.0
           http://www.digital.com/info/Customer-Update/940620001.txt.html
    960312 Nevod Inc. Proxy IP/DHCP Server (PIP) Beta-1.0
           http://www.nevod.com/pip/index.html
    960327 Xedia: IP/Assist 1.0 feature for their switches includes DHCP service.
           http://www.xedia.com
    960419 Hewlett-Packard: HP-UX 10.10 includes a bootp server with DHCP
           extensions.
    960420 Competitive Automation's JOIN (415-321-4006): SunOS4.x, Solaris2.x,
           Digital Unix 3.2, 4.x, HP-UX 9 & 10 DHCP/BOOTP servers.
           http://www.join.com/
    960514 Novell: NetWare/IP 2.2 includes a DHCP/BOOTP server.
           ftp://ftp.novell.com/updates/unixconn/nwip22/nips22.exe
           http://netware.novell.com/discover/nwip/index.htm
    960514 IBM: DHCP/BOOTP server included in Warp Server 3.0 (OS/2).
    960514 SunSoft: Solstice SolarNet PC-Admin 1.5 includes a DHCP/BOOTP server.
           http://www.sun.com/solstice/Networking-products/PC-Admin.html
    960514 Microsoft: DHCP server included in WIndows NT Server 3.51
           http://www.microsoft.com/NTServer/
           http://www.microsoft.com/BackOffice/techbriefs/tech1000.htm
           ftp://ftp.microsoft.com/bussys/winnt/winnt-docs/papers/tcpipimp.doc
    960514 ON Technology: IPTrack 1.0 is a Novell Server-based DHCP/BOOTP server (NLM)
           http://www.on.com/on/onprods/iptrack.html/
    960514 FTP Software: OnNet Server 2.0 (Services OnNet Product)
           http://www.ftp.com/mkt_info/services.html
    960531 Cisco: server in development.
           http://www.cisco.com
    960620 Farallon: a DHCP server is built into its Netopia Internet Router
           http://www.farallon.com
    
    

    Labels: network.