Network Standards Part2

Embed Size (px)

Citation preview

  • 8/8/2019 Network Standards Part2

    1/51

    Network Standards

    Here we need to side step a little. We need to first talk about what goes into

    making a standard. Without standards, it makes communication betweencomputers of different type very difficult. Just like you have bus standards like

    ISA and PCI so hardware can communicate with the CPU, you need some kind of

    standard.

    In the Internet community, standards are both suggested and establishedthrough Request for Comments or RFCs. To some extent this is the "law". If one

    product claims to comply with a particular RFC, you know that any otherapplication that does so should be able to communicate with it. However, RFCs

    include other things such as lists of previous RFCs and basic introductions tothings like TCP.

    Becoming a standard is a three step process. Usually, the first few paragraphs ofan RFC will tell you to what stage it applies. Assuming of course, that the RFC is

    part of a standards proposal. At the first stage, the standard is proposed.Organizations then decide to implement the proposed standard. It requires three

    separate implementations before the proposal becomes a standard. (Finally, itbecomes a standard. This is an oversimplication of the process, since there willalso be a lot of discussion about the proposed standard.)

    If you need information about a specific network standard, the first place to look

    is the most current RFC index, which is also published as an RFC. Not only doesthis list all the RFCs, but will also tell you if one RFC has been replaced and bywhich one.

    Originally I had planned to include a list of the more commonly used and

    significant RFCs. I eventually realized that this was an unending task. When Istarted this, there were just over 1800 RFCs. The last time I checked beforewrapping up this book, there are well over 2000. Instead I will simply tell youwhere to get them.

    The first place is from the "central repository." These are obtainable using ftpfrom ftp.ds.internic.net. There is an rfc directory, which contains the RFCs inASCII as well as many in postscript format. If you know what RFC you want, thiscan be obtained by sending an email message to [email protected]. Listeach RFC you want in the format:

    document-by-name rfcXXXX

    where XXXX is the number of the RFC. You can obtain the index by including theentry:

    document-by-name rfc-index

    In addition, the RFCS are available from archives all over the Internet. However,

    rather than tying up the Internet bandwidth with a lot of copy of files you may

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=bushttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=ISAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=PCIhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=TCPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=ASCIIhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=bushttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=ISAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=PCIhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=TCPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=ASCIIhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFC
  • 8/8/2019 Network Standards Part2

    2/51

    not need. Check out www.cdrom.com or mail [email protected]. This is forWalnut Creek CD-ROM and the sell a CD packed with thousands of documents

    related to the Internet, including the RFCs. Another site with pretty much thesame kind of offering is InfoMagic. They can be reached at www.infomagic.comor [email protected].

    For Linux systems running TCP/IP one of the most important standards dealswith Ethernet. The encapsulation (packaging) ofIP datagrams is defined forEthernet in RFC 894. Developed in 1982 by Digital Equipment Corporation (DEC),Intel and Xerox Ethernet (spelled with a capital) is a standard, rather than aphysical entity. Several years later, the 802 Committee of the Institute ofElectrical and Electronic Engineers (IEEE or I-triple E), published standards of itsown that differed in many ways from the original Ethernet standard. Collectively,these are referred to as the 802 IEEE standards. The 802.3 standard coversnetworks similar to Ethernet. The IEEE 802 encapsulation was defined in RFC1042. Both of these use an access method called Carrier Sense Multiple Accesswith Collision Detection or CSMA/CD.

    Both of these framing types (RFC 894 and RFC 1042) use a 48-bit addressingscheme. These are generally referred to as the MAC or hardware address. Thesix bytes of both the destination and source machine are included in the headerof both framing types. however, the remainder of the frame is different. As wetalked about earlier, this layer is responsible for sending and receiving the IPdatagrams. It is also responsible for sending and receiving other kinds of packetsas well. These are packets from the Address Resolution Protocol (ARP) and theReverse Address Resolution Protocol (RARP). We'll talk about both later on.

    Subnet Masks

    Subnet masks are 32-bit values that allow the recipient ofIP packets todistinguish the network ID portion of the IPaddress from the host ID. Like an IPaddress, the value of a subnetmask is frequently represented in dotted decimalnotation. Subnet masks are determined by assigning 1's to bits that belong tothe network ID and 0's to the bits that belong to the host ID. Once the bits arein place, the 32-bit value is converted to dotted decimal notation, as shown inthe table below.

    Addressclass

    Bits for subnet mask Subnet mask

    Class A11111111 00000000 0000000000000000 255.0.0.0

    Class B11111111 11111111 0000000000000000

    255.255.0.0

    Class C11111111 11111111 1111111100000000

    255.255.255.0

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=CD-ROMhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=Ethernethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=encapsulationhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=Ethernethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=encapsulationhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=headerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IP%20addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IP%20addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=maskhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=CD-ROMhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=Ethernethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=encapsulationhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=Ethernethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=encapsulationhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=RFChttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=headerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IP%20addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IP%20addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=maskhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnet
  • 8/8/2019 Network Standards Part2

    3/51

    Table - Default Subnet Masks for Standard IP Address Classes

    The result allows TCP/IP to determine the host and network IDs of the local

    computer. For example, when the IPaddress is 102.54.94.97 and the subnetmask is 255.255.0.0, the network ID is 102.54 and the host ID is 94.97.

    Keep in mind that all of this with the subnet masks is the principle and notnecessarily the practice. If you (meaning your company) has been assigned a

    Class B address, then the the first two octets are assigned to you. You couldthen breakdown the class B net into Class C nets. If we take a look at Table 0\1,

    we see that there are 65,534 possible nodes in that network. That is really toomany to manage.

    However, if we considered each of the third octets to represent a sub-net of ourclass B network, they would all have 254 possible nodes per sub-net. This is

    basically what a class C net is anyway. We can then assign each sub-net to adepartment or building and then assign one person to manage each of the class

    C sub-nets, which is a little easier to do.

    To keep the different class C subnet from interfering with each other, we give

    each sub-net a Class Csubnet-mask, although the first octet is in the range for aClass B network. That way machines on this subnet are only concerned with

    packets for the subnet. We can also break down the sub-nets physically so thatthere is a gateway or router between the subnets. That way the physical network

    is not overburdened with traffic from 65,534 machines.

    Let's look at an example. Assume your company uses the Class B address

    172.16.0.0. The different departments within the company are assigned a classC address that might look like this: 172.16.144.0. Although the first octet (172)

    says that this is a class B address, it is really the subnet-mask that makes thatdetermination. In this case, our subnetmask would be: 255.255.255.0.Therefore, any packet that is destined for an address other than one starting172.16.144.0 is not on this network.

    It is the responsibility ofIP to ensure that each packet ends up going to the rightmachine. This is accomplished, in part, by assigned a unique address to eachmachine. This address is referred to as the Internet address or IPaddress. Eachnetwork gets a set of these IP addresses that are within a specific range. Ingeneral, packets that are destined for an IPaddress within that range will staywithin the local network. Only when a packet is destined for somewhere outsideof the local network is it "allowed" to pass.

    In other words, IP is responsible for the delivery of the packet. It functionssimilar to the post office, whereby you have both a sending and receivingaddress. Often times you have many more letters than a single mail bag canhandle. The mail carrier (or someone else at the post office) will break down thenumber of letters into sets small enough to fit in a bag. This is what IP does.

    Since there are many people using the line all at once, IP will break down theTCP packets into units of a specific size. Although often referred to also a

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=maskhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=carrierhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=subnethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=maskhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=carrierhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IP
  • 8/8/2019 Network Standards Part2

    4/51

    packets, the more correct terminology is to refer to IP packets as datagrams.Just like bags of mail need to go from one post office to the next to reach their

    final destination, IP datagrams must often go through different machines toreach their final destination.

    Saying that IP routing can be accomplished completely in software isn't entirely

    accurate. Although, no physical router is needed, IP can't send a packet tosomeplace where there is no physical connection. This is normally accomplishedby an additional network card. With two (or more) network cards a singlemachine can be connected to multiple networks. The IP layer on that onemachine can then be used to route IP packets between the two networks.

    Once configured (how that's done, we'll talk about later), IP maintains a table ofrouting information, called (logically) a routing table. Every time the IP layerreceives a packet, it checks the destination address

    Routing and IP Gateways

    I mentioned previously that IP is an unreliable, connection-less protocol. That is,it contains no provision to ensure that the packet arrives correctly at the

    destination, nor is there anything that guarantees that when packets do arrivethey arrive in the correct order. Although IP is responsible to ensure that the

    packets get to the right machine, it has essentially no understanding of thephysical connection between the two machines. IP will happily run on machines

    that are connected with something as simple as a telephone wire, to somethingas complex as satellites. IP depends on some other means to "physically" carry itacross the network.

    What this means is that the system administrator (or network administrator) is

    responsible for laying the "map" that is used to define which network address gowith what sets of machine and what IP addresses are assigned to individualmachines.

    One important job that IP does is routing. That is, getting the packet to the right

    machine. If the source and destination machines are directly connected, that ison the same network, then routing is easy. Essentially there isn't any. IP seesthis fact and simply hands the packets off to the data link layer. Otherwise, IPhas to figure out how and where to send it.

    Usually the 'how' is over a router. A router is some piece of hardware that actslike an air traffic controller send one packet off one way and others off a different

    way. Often routers are separate pieces of equipment that can be configured invery detailed ways. The disadvantage to this is that with power comes price. Theability to configure a router in many different ways usually means a high pricetag. Fortunately, many operating systems, including Linux allow IP to serve asrouter-software. Thereby avoiding the cost ofrouter hardware.

    In comparison to the router is the concept of a gateway. Like a router, agateway has knowledge of other networks and how to reach them. In general,we can think of a router as a special piece of hardware that does the work for us.

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=protocolhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=administratorhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=protocolhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=administratorhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=router
  • 8/8/2019 Network Standards Part2

    5/51

    In fact, there are companies that sell equipment called routers. A gateway ismore of a concept, in that is the means by which you go from one network to

    another. Today, the distinction between a router and a gateway is blurred.Originally, a gateway was a machine that converted from one protocol toanother. However, in common usage today, routers can server as gateways,gateways can serve as routers.

    The path the packet takes from one machine to the next is called a route.Although each machine can maintain static routes for specific destinations, thedefault gateway is usually used to find remote destinations. (The defaultgateway is needed only for computers that are part of an internetwork.) If youhave a gateway connected to several other networks, there will (probably) beroute definitions for each of those other networks.

    Let's look at this process as if we were sending a letter, as we did a little whileago. Each letter we send has an envelope which contains a message. On theenvelope we write the source and destination addresses. When we mail the letterit gets to the post office and the person sorting the mail checks the destinationzip code. If it's the same as the local zip code, the envelope is sent to one of thecarriers for delivery. If the zip code is different, then it is sent to some otherlocation. Perhaps all non-local mail is sent to the same place.

    If you live across the country from me, the letter probably doesn't go directlyfrom my local post office to yours. (assuming I don't live in San Francisco andyou don't live in New York) The same applies to IP packets. My letter first goesto my local post office, if it is destined for a local address it is processed there. Ifnot, it is sent along to a larger post office. If I sent a letter from Santa Cruz,California destined for Annsville, Pennsylvania, it will probably go first to SanFrancisco and then to New York (or Philadelphia) before it gets sent to Annsville.

    Again, the same applies to IP packets. If I were communicating with a networkon the other side of the country, my machine needs to know how to get to theother one. This is the concept of a "gateway". A gateway is the first step in thepath, or "route" to the remote machine. Just as there are a couple of post officesbetween Santa Cruz and Annsville, there can be multiple gateways betweencomputers.

    Since San Francisco is the closest "major" city to Santa Cruz, it is possible thatall mail bound for points beyond must first go through there. What if I lived inFresno, which is about halfway between San Francisco and Los Angeles? If I senta letter to Annsville, it could go through Los Angeles or it could go through San

    Francisco. To make things easy, it might always get sent through San Franciscoit not destined for a local address.

    What if the letter is bound for Los Angeles? It seems silly to go through SanFrancisco first when it is bound for LA. At the post office in Fresno, they mighthave a special procedure that says all remote mail goes through San Francisco,except for those with a zip code in a special range.

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=protocolhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=protocolhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=address
  • 8/8/2019 Network Standards Part2

    6/51

  • 8/8/2019 Network Standards Part2

    7/51

    certain machines within your network to go beyond the local net to the outside.In this case, these machine can have a default (or static) route default, while the

    others have none. However, users can add routes themselves, using the routecommand.

    As we talked about earlier, TCP connections are not the only ones that are

    managed by inetd. Basically all network connections are. This can be understoodif we go back to the telephone operator analogy. If the operator (inetd) is alsothe receptionist, we can then think ofTCP connections as incoming telephonecalls and UDP packets as incoming letters. Like incoming phones calls, thereceptionist is responsible to route the incoming mail to the right person. (This isa valid analogy, because like regular mail, there is nothing to guarantee thedelivery of the message in the letter, although with TCP connections you can askyour partner to resend the message.) Like TCP connections, UDP daemons are"listening" on specific ports. Also like TCP connections, these well-known portsare listed in /etc/services.

    One common UDP connection is the routing daemon: routed. Routed supplies (asyou might have guessed) routing information in the form of routing packets. Ifyour system is serving as a router, then routed periodically sends copies of itsrouting tables to other machines.

    One key difference is that routed is not actually started by inetd. Instead, it isnormally started through one of the scripts under /etc/rc.d as the system is

    booting. This actually calls the script /etc/sysconfig/network-scripts/ifcfg-

    routes.

    When it starts, routed makes the assumption that it will forward packetsbetween all interfaces on the system. This only includes those that are "up" and

    does not include the loopback driver. (The loopback driver is a special TCP/IPinterface that simply loops the packets back to the local machine. Hence thename.) Routed then transmits a REQUEST packet on each of these interfacesand waits for a RESPONSE packet for any other hosts. Potentially there are othermachines on the network that are also sending REQUESTS packets, so routed

    can also respond to them.

    The response routed gives is based on information it has in it's routing tables.This contains information about known routes, including how far away thedestination machine is in turns ofhops or intermediary machines. When routed

    receives a RESPONSE packet, it uses the information contained in that packet toupdate it's own routing tables. Look at the routed man-page for more

    information.

    Routes are added to and removed from the system using the route command.

    The general syntax is:

    route command destination gateway metric

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=TCPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=TCPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=UDPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=UDPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=man-pagehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=TCPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=TCPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=UDPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=UDPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routerhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=man-pagehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gateway
  • 8/8/2019 Network Standards Part2

    8/51

    The two commands used are add and delete. The destination is the IPaddress ofthe machine or network you want to reach. You can also use tokens for the

    network name by including entries in the /etc/networks file. This is an ASCII filecontaining two columns. The first is the name of the network and the secondcolumn is the network address. You can then use that name in the routecommand.

    The gateway is the IPaddress of the interface to which the packets need to beaddressed. Keep in mind that the system must already know how to get to thegateway for this to work.

    The metric is a value that normally indicates the number of intermediate

    machines (hops). The system uses this value in determining the shortest routeto a particular machine.

    For example, let's assume we have an entry in /etc/networks like this:

    siemau 132.147

    Let's also assume that the machine I need to use to access this route has an IPaddress of 199.142.147.1. I could then run the route command like this:

    route add siemau199.142.147.1 0

    This says that any packet destined for the siemaunetwork (as defined in

    /etc/networks) should go to the IPaddress 199.142.174.1 with a metric of 0.Normally, 0 is used when the IP address you specify is directly connected to your

    machine.

    If you have a single machine that serves as your gateway to the rest of theworld, you can specify default instead of a specific address or network as yourdestination. In the example above, if we wanted to use the same machine for all

    networks instead of just siemau, the command would look like this:

    route add default 199.142.147.1 0

    As you move about the network, dynamic entries are created by the routingprotocol that you use. (Most commonly routed) The routing protocolcommunicates with it's counterpart on other machines and adds entries to therouting tables automatically.

    When it starts, routed looks for the file /etc/gateways, which contains a list ofgateways. (What else?) The general format for this file is:

    name gateway metric type

    The first field specifies whether the gateway is to a specific machine or network.The name field is the name of the destination host or network. This can either bean IPaddress or a token. If using a token, then the hostname must be located in

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=ASCIIhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=ManPage&sec=8&page=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IP%20addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=ManPage&sec=8&page=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=protocolhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=tokenhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=ASCIIhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=ManPage&sec=8&page=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=packethttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IP%20addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=ManPage&sec=8&page=routehttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=protocolhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hosthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=token
  • 8/8/2019 Network Standards Part2

    9/51

    /etc/hosts or can be determined through DNS. If through DNS, routed must be

    started after named. If a network, the name must be in /etc/networks.

    The gateway field is the name or address of the gateway that is to be used. Themetric is the same as for routes and indicates the number ofhops. The type can

    be either passive, active or external. A passive gateway is one that is notexpected to exchange routing information. Active gateways will exchangeinformation and usually have routed running on them. External gateways areones that are managed by another system, but alternate routes should not beinstalled.

    DNS - Finding Other Machines

    If you have TCP/IP installed, by default, your machine is set up to use the/etc/hosts file. This is a list ofIP addresses and the matching name of the

    machines. When you try to connect to another machine, you can do it either withthe IPaddress or the name. If you use the name, the system will look in the

    /etc/hosts file and make the translation from name to IP address. The only realdrawback with this scheme is that every time a machine is added or removedfrom the network, you have to change the /etc/hosts file on all the affectedmachines.

    Those you of that have had to administer large networks know that updatingevery /etc/hosts file like this can be a real pain. There is always at least one thatyou forget or you mis-type the name or address and have to go back and changeit on every machine. Fortunately, there is hope.

    Provided with Linux is a hostname/IP address database called the BerkeleyInternet Name Domain (BIND) service. Instead of updated every machine in the

    network, there is a Domain Name System (DNS) server that maintains thedatabase and provides the client machines with information about bothaddresses and names. If machines are added or removed, there is only onemachine that needs to get changed. This is the Name Server. (Note: Somedocumentation translates DNS as Domain Name Server. Other references (mostimportantly the RCFs) call it the Domain Name System. I have seen somereferences call it Domain Name Service. Since we know what it is, I'll just call itDNS.)

    So, when do you use DNS over the /etc/hosts file? Well, it's up to you. The firstquestion I would ask is "Are you connecting to the Internet?" If the answer is"yes", "maybe" or "someday" then definitely set up DNS. DNS functions

    somewhat like directory assistance from the phone company. If your localdirectory assistance doesn't have the number, you can contact one in the areayou are looking. If your name server doesn't have the answer, it will queryothername servers for that information. (assuming you told it to do so.)

    If you are never going to go into the Internet, then the answer is up to you. Ifyou only have two machines in your network, the trouble setting up DNS is notworth it. On the other hand, if you have a dozen or more machines, then settingit up makes life easier in the long run.

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hopshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=Domain%20Name%20Systemhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=clienthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=hopshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=Domain%20Name%20Systemhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=clienthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNS
  • 8/8/2019 Network Standards Part2

    10/51

    There are several key concepts that need to be discussed before we dive intoDNS. The first is DNS, like so many other aspects of TCP/IP, is client-server

    oriented. We have the name server containing the IP addresses and nameswhich serves information to the clients. Next, we need to think about DNSoperating in an environment similar to a directory tree. All machines that fallunder DNS can be thought of as files in this directory tree structure. These

    machines are often referred to as nodes. Like directories and file names, there isa hierarchy of names with the tree. This is often referred to as the domain namespace.

    A branch of the DNS tree is referred to as a domain. A domain is simply acollection of computers that are managed by a single organization. Thisorganization can be a company, university or even a government agency. Theorganization has a name that it is know by to the outside world. In conjunctionwith the domains of the individual organizations, there are things called top-level

    domains. These are broken down by the function of the domains under it. Theoriginal top level domains are:

    COM - CommercialEDU - EducationalGOV - GovernmentNET - NetworkMIL - MilitaryORG - Non-profit organizations

    Each domain will fall within one of these top-level domains. For example, there isthe domainprenhall(for Prentice Hall), which falls under the commercial top-level domain. It is thus designated asprenhall.com. The domain assigned to theWhite House is whitehouse.gov. The domain assigned to the University ofCalifornia at Santa Cruz is ucsc.edu. (Note that the dot is used to separate theindividual components in the machine's domain and name)

    Keep in mind that these domains are used primarily within the US. While aforeign subsidiary mightbelong to one of these top-level domains, for the mostpart, the top level domain within most non-US countries is the country code. Forexample the geographical domain Germany is indicated by the domainabbreviations de (for Deutschland). These are examples, however. I do knowsome German companies within the com domain. There are also geographicdomains within the US, such as ca.us for California as compared to just .ca forfor Canada. This is often for very small domains or non-organizations, such asindividuals.

    In many places, they will use a combination of the upper-level domains that areused in the US and their own country code. For example, the domain name of anInternet provider in Singapore is singnet.com.sg. (Where sg is the country codefor Singapore.)

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=environmenthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=environmenthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domain
  • 8/8/2019 Network Standards Part2

    11/51

    Image - Internet domains (interactive)

    Within each domain, there maybe sub-domains. However, there doesn't have tobe. You usually find sub-domains in larger domains in an effort to break downthe administration into smaller units. For example, if you had a set of machinesthat was for use by Or, if your company had a sub-domain for sales it might besales.yourdomain.com.

    Keep in mind that these are just the domain names, not the machine, or nodename. Within a domain there can be (in principle) any number of machines. Amachine sitting on the desk in the oval office might be called boss1. It's fullname, including domain would be boss1.pres.whitehouse.gov. A machine in your

    sales department called darkstar would then be darkstar.sales.yourdomain.com.

    Up to now, I have only seen a machine name with five components: the machinename, two sub-domains, the company domain and then the top-level domain.On the other hand, if there was no sales sub-domain, and everything was underthe yourdomain.com domain, the machine's name would be:darkstar.yourdomain.com.

    You may often see the fully-qualified domain name (FQDN) of a machine listedlike this:

    darkstar.yourdomain.com.

    Including the trailing dot(.). That dot indicates the root domain. This has noname other that root domain or .(read "dot"). Very similar to the way the rootdirectory has no name other than root or /. In some cases this dot is optional.However, there are cases where is it required and we'll get to those in thesection on configuring DNS.

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNS
  • 8/8/2019 Network Standards Part2

    12/51

    Like files, it is possible that two machines have the same name. The only criteriafor files is that their full path be unique. The same applies to machines. For

    example, there might be a machine darkstar at the whitehouse. (Maybe Georgeis a closet Dead Head) It's FQDN would be darkstar.whitehouse.gov. This isobviously not the same machine as darkstar.yourdomain.com any more than1033 Main Street in Santa Cruz is the same as 1033 Main Street in Annsville.

    Even something like darkstar.support.yourdomain.com is different fromdarkstar.sales.yourdomain.com.

    A zone is a grouping of machines that may, or may not, be the same as adomain. This is the set of machines over which a particular name server hasauthority and maintains the data. In our example above, there might be a zonefor support, even ifthere was no sub-domain. On the other hand, there might bea team.support.yourdomain.com domain, but the zone is still yourdomain.com.Therefore, zones can be sub-ordinate or superior to domains. Basically, zonesare used to make the job of managing the name server easier. Therefore, whatconstitutes a zone depends on your specific circumstances.

    In DNS, there are a couple different types of servers. A primary server is themaster server for one or more DNS zones. Each server maintains the databasefiles, and is considered the authority for this zone. It may also periodicallytransfer data to a secondary server, if one exists for that zone.

    DNS functions are carried out by the Internet domainname server, named.When it starts, named reads it's configuration file to determine what zones it isresponsible for and in which files the data is stored. By default, the configurationfile /etc/named.conf. However, named can be started with the -b option tospecify an alternate configuration file. Normally, named is started from a scriptin /etc/rc.d.

    For example, the primary server for the yourdomain.com domain needs to knowabout the machines within the support.yourdomain.comdomain. It could serveras a secondary server to the support.yourdomain.com domain, whereby it wouldmaintain all the records for the machines within that sub-domain. If, on theother hand, it servers as a stub server, the primary for the yourdomain.comneed only know how to get to the primary for the support.yourdomain.com sub-domain. Note here, that it is possible for a server to be primary in one zone andsecondary in another.

    By moving responsibility to the sub-zone, the administrator of the parent zone,does not need to concern him or herself with changing the configurations files

    when a machine is added or removed within the sub-zone. As long as theaddress of sub-zone primary server remains matches the stub server entry all iswell.

    A secondary server takes over for the primary, should the primary go down or beotherwise inaccessible. A secondary server maintains copies of the databasefiles, and "refreshes" them at predetermined intervals. If it cannot reach theprimary to refresh it's files, it will keep trying at (again) predetermined intervals.

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=full%20pathhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=FQDNhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=administratorhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=full%20pathhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=FQDNhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=administratorhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=address
  • 8/8/2019 Network Standards Part2

    13/51

    If after another predetermined time, the secondary still cannot reach theprimary, the secondary considers it's data invalid and flushes it.

    Caching-only servers saves data in a cache file only until that data expires. Theexpiration time is based on a field within the data that is received from another

    server. This is called the time-to-live. Time-to-live is a regularly occurring

    concept within DNS.

    A slave server can be a primary, secondary, or caching-only server. If it cannotsatisfy the query locally, it will pass, or forward, the request to a fixed list of

    forwarders (forwarding server), rather than interacting directly with the primaryname servers of other zones. These request are recursive, which means that the

    forwarder must answer either with the requested information or saying it doesn'tknow. The requesting machine then asks the next server, then the next and thenthe next until it finally runs out of servers to check or gets an answer. Slaveservers never attempt to contact servers other than the forwarders.

    The concept of recursive request is in contrast to iterative requests. Here thequeried server either gives an answer or tells the requesting machine where it

    should look next. For example, darkstar asks, iguana, the primary server forsupport.yourdomain.com for some information. In a recursive query, iguanaasks, boomer, the primary server for yourdomain.com and passes theinformation back to darkstar. In a iterative query, iguana tells darkstar aboutboomer, and darkstar then goes asks boomer. This process of asking nameservers for information, whether recursive or iterative is called resolution.

    Keep in mind that there is client software running on the server. When anapplication needs information, the client DNS server asks the server for theinformation, despite the fact that the server is running on the same machine.

    Applications don't access the server directly.

    There is also the concept of a root server. These are severs located at the top ofthe domain tree and maintain information about the top-level zone. Root serversare positioned at the top, or root, of the DNS hierarchy, and maintain data abouteach of the top-level zones.

    Configuring the Domain Name System DNS

    In the first part of this section, I discussed DNS as being a means of centrally

    administering the file necessary for node name to IP-address translation.Although the relationship of the files is pretty straight-forward, they are rather

    intimidating to the uninitiated. (Myself included)

    So, what do the DNS configuration files look like? Well, since the first file that

    named looks at is /etc/named.conf, that seems like a good place to start. Let'sassume we wanted to set up a primary name server. We might have a file thatlooks like this:

    ; Boot file for Primary Master Name Server;

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=forwarderhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=clienthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=applicationhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=forwarderhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=clienthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=applicationhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20server
  • 8/8/2019 Network Standards Part2

    14/51

    ;; type domain source file or host;

    directory /etc/named.dprimary siemau.com siemau.forwardprimary 147.142.199.in-addr.arpa siemau.revprimary 0.0.127.in-addr.arpa named.localcache . root.cache

    Lines beginning with a semi-colon are considered comments and blank lines are

    ignored. The first line with configuration information is:

    directory /etc/named.d

    This tells namedthat if no path is specified, it should look for the otherconfiguration files in the specified directory. In this case, /etc/named.d. Sincethe named.boot file is read when named starts up, you could change it toanything you want.

    The first primary line says that we are the primary name server for the domainsiemau.com This says that the information to resolve forward requests are foundin the file siemau.forward. Okay, so what are forward requests. Well, "forwardrequests" is my term. I use it for two reasons. First, the file containing theinformation, often ends with .forward. Second, I think the primary function of aname server is to translate names to IP addresses. Therefore, this is goingforward. Translating IP addresses to names is going in reverse.

    Note that you will often see that the forward mapping file is referred to asnamed.hosts or domain_name.host and the reverse mapping as named.rev or

    domain_name.rev. I like to call one .forward and one .rev so I know by lookingat them what their function is. It doesn't matter what you call them as long asthere are pointed to in named.boot.

    In order to be the primary server we must say that we are the primary. This isaccomplished through the Start of Authority (SOA) record, which says we are thestart of authority for the given domain. That is, when trying to find the answer toa query, the buck stops here. We have all the right answers when it comes tothis domain. The SOA record is required and might look like this:

    siemau.com. IN SOA siemau.siemau.com. jimmo.siemau.com. (8675309 ; Serial10800 ; Refresh800 ; Retry3600000 ; Expire259200 ) ; Minimum

    The fields in the first line are: domain, data class, type of record, primary nameserver, responsible individual. The data class will always be IN for Internet.Often you will see root or postmaster as the person responsible for this domain.

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domain
  • 8/8/2019 Network Standards Part2

    15/51

    Here, I picked myself. Note that the format is jimmo.siemau.com and [email protected] as one might expect.

    The Serial number is a way for secondary servers to keep track of the validity oftheir information. If the secondary has a serial number that is lower than the

    serial number on the primary, it knows that the information is outdated. It will

    then pull over an updated copy.

    The Refresh is how often (in seconds) the secondary servers should check theprimary for updated information. In every implementation I have ever seen, this

    value is set to 10800 seconds, or three hours. You can change it if your siterequires it.

    The Retry is how often (in seconds) the secondary server should retry to contactthe primary. This value of 3600 seconds (one hour) is also something I have

    seen in almost every case. Again, change it as you need it.

    The Expire time is how long the secondary will try before it gives up and declaresthe data it has as invalid. This is based on the attitude that no data is better thanold data. Here we have 1000 hours or almost 42 days.

    The Minimum is the value that other resource records should use as their time-to-live, if no other value is defined for them. The time-to-live is how long a given

    piece of information is considered valid.

    At the end of each of these records you see a semi-colon. This is used in DNSdatabase files as the start of a comment. Any text from the semi-colon to theend of the line is considered part of the comment. You will also see that many

    lines have semi-colons as their first character. In these cases, the whole line is a

    comment.

    Note also there is a dot after each .com entry. This indicates the end of thename. Remember I mentioned that the trailing dot indicates the root domain? In

    these cases here, this dot is required. If you leave it off, the system will assumethat it should tack on the domain name onto the end. Therefore, you might end

    up with the domain name twice. This behavior can actually come in handy andwe'll get to it shortly.

    The SOA record is just one resource record that you find in DNS database files.There are several others that we will get through during the course of this

    discussion. Resource records have general format:

    name {ttl} data-class record-type record-specific-data

    The name is simply something we are looking for. For example, we might have amachine name and we are looking for the IPaddress. We have the machine

    name, this is our value. On the far right is the record-specific-data or the IPaddress. The TTL value is the time-to-live. This is an optional value since wealready defined a minimum in the SOA record. We could have also defined a ttl

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=texthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=texthttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=DNShttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=IPhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOA
  • 8/8/2019 Network Standards Part2

    16/51

    value for this SOA record, if we had wanted. The data-class can be one ofseveral values. However, only the IN for Internet class is commonly used,

    therefore that is the only one we'll use here. The record-type tells us what kindof resource record we have. For example, SOA is one record type.

    After the SOA record there is usually an entry saying which machines are name

    servers, such as:

    siemau.com. IN NS siemau.siemau.com.

    The value we have is siemau.com. For this record type, this value is the domain

    name. The domain is the same for the SOA record, as we are defining thismachine to be the name server as well. The data-class, again, is IN for Internet.Since we are defining which machine is the name server, the record type is NS,for name server. Lastly, we get the FQDN of the machine (siemau.siemau.com.).Note that in both cases we had the dot at the end of each name.

    One thing that I should point out here is that a good choice for which machine isthe name server is one that is on multiple networks, that is one that serves asgateway. This is a good choice since it already has to know about multiplenetworks to be the gateway. It is said to be well connected. This saves managingone machine as the gateway and the other as the name server.

    Next, we have the name to address mappings. Let's assume for simplicity's sakethat I only have two other machines in my network. The entries for all mymachines might look like this:

    siemau.siemau.de. IN A 192.168.42.1vesta.siemau.de. IN A 192.168.42.2jmohr.siemau.de. IN A 192.168.42.3

    The general format is:

    machine-name data-type record-type IP-address

    Note that despite the fact that siemau is our name server, we still need toinclude it here. Otherwise there would be no way to translate it's name to an

    address. The new piece of information here is the A record-type. This simplysays that this specific record is making the translation from machine name to IP-

    address. Each entry is referred to as an address record, or address resourcerecord. Note again the trailing dot (.).

    We also need a mapping for the node "localhost". This is a special name for thelocal machine and is accessed using a special driver called the "loopback driver".

    Rather than accessing the card, the loopback driver knows that this is the localmachine and does not need to go out to the network card. Certain function on

    the system take advantage of the capabilities of this driver.

    localhost IN A 127.0.0.1

    http://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=FQDNhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=networkhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=classhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=domainhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=SOAhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=FQDNhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=gatewayhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=name%20serverhttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=addresshttp://www.linux-tutorial.info/modules.php?name=MContent&obj=glossary&term=network
  • 8/8/2019 Network Standards Part2

    17/51

    One thing I need to point out is the dot (.) at the end of each FQDN. This saysthat the name stops here. Remember that the dot is use to indicate the root

    domain. By putting the dot here, this says that we have reached the rootdomain, so we won't go any further.

    Leaving the dot off can be a mistake or intention. In these examples it would be

    a mistake. In fact, in the time I was doing tech support, leaving off the dot was(perhaps) the most common mistake made when configuring the name server.However, we can leave it off intentionally in certain circumstance and have it becorrect. We can use abbreviations (shorten forms) to indicate the machine name.For example, we could have written the first entry like this:

    siemau IN A 192.168.42.1

    Because we already defined what the domain name is in the named.boot file, thesystem knows what to append. Therefore, we can try to contact either siemau orsiemau.siemau.de and the name server will translate that correctly to192.168.42.1.

    We now need to make the translations from IPaddress to name. As I mentionedbefore, there are "reverse" translations. The data for these translations is in t