What Is IP Routing?
What Is IP Routing?
What Is IP Routing?
More information:
Metaswitch provides a range of high function, portable IP routing software products
IP Routing is an umbrella term for the set of protocols that determine the path that data follows in
order to travel across multiple networks from its source to its destination. Data is routed from its
source to its destination through a series of routers, and across multiple networks. The IP Routing
protocols enable routers to build up a forwarding table that correlates final destinations with next
hop addresses.
These protocols include:
• BGP (Border Gateway Protocol)
• IS-IS (Intermediate System - Intermediate System)
• OSPF (Open Shortest Path First)
• RIP (Routing Information Protocol)
When an IP packet is to be forwarded, a router uses its forwarding table to determine the next hop
for the packet's destination (based on the destination IP address in the IP packet header), and
forwards the packet appropriately. The next router then repeats this process using its own
forwarding table, and so on until the packet reaches its destination. At each stage, the IP address in
the packet header is sufficient information to determine the next hop; no additional protocol headers
are required.
The Internet, for the purpose of routing, is divided into Autonomous Systems (ASs). An AS is a
group of routers that are under the control of a single administration and exchange routing
information using a common routing protocol. For example, a corporate intranet or an ISP network
can usually be regarded as an individual AS. The Internet can be visualized as a partial mesh of
ASs. An AS can be classified as one of the following three types.
• A Stub AS has a single connection to one other AS. Any data sent to, or received from, a
destination outside the AS must travel over that connection. A small campus network is an
example of a stub AS.
• A Transit AS has multiple connections to one or more ASs, which permits data that is not
destined for a node within that AS to travel through it. An ISP network is an example of a
transit AS.
• A Multihomed AS also has multiple connections to one or more ASs, but it does not permit
data received over one of these connections to be forwarded out of the AS again. In other
words, it does not provide a transit service to other ASs. A Multihomed AS is similar to a
Stub AS, except that the ingress and egress points for data traveling to or from the AS can be
chosen from one of a number of connections, depending on which connection offers the
shortest route to the eventual destination. A large enterprise network would normally be a
multihomed AS.
An Interior Gateway Protocol (IGP) calculates routes within a single AS. The IGP enables nodes
on different networks within an AS to send data to one another. The IGP also enables data to be
forwarded across an AS from ingress to egress, when the AS is providing transit services.
Routes are distributed between ASs by an Exterior Gateway Protocol (EGP). The EGP enables
routers within an AS to choose the best point of egress from the AS for the data they are trying to
route.
The EGP and the IGPs running within each AS cooperate to route data across the Internet. The EGP
determines the ASs that data must cross in order to reach its destination, and the IGP determines the
path within each AS that data must follow to get from the point of ingress (or the point of origin) to
the point of egress (or the final destination).
The diagram below illustrates the different types of AS in a network. OSPF, IS-IS and RIP are IGPs
used within the individual ASs; BGP is the EGP used between ASs.
The Dynamic Host Configuration Protocol (DHCP) is a computer networking protocol used by
hosts (DHCP clients) to retrieve IP address assignments and other configuration information.
DHCP uses a client-server architecture. The client sends a broadcast request for configuration
information. The DHCP server receives the request and responds with configuration information
from its configuration database.
In the absence of DHCP, all hosts on a network must be manually configured individually - a time-
consuming and often error-prone undertaking.
DHCP is popular with ISP's because it allows a host to obtain a temporary IP address.
Contents
• [hide]1
Historie
s
• 2
Technic
al
overvie
w
• 3
Technic
al
details
• 3
.
1
D
H
C
P
d
i
s
c
o
v
e
r
y
• 3
.
2
D
H
C
P
o
f
f
e
r
• 3
.
3
[edit] Histories
RFC 1531 initially defined DHCP as a standard-track protocol in October 1993, succeeding the
Bootstrap Protocol (BOOTP). The next update, RFC 2131 released in 1997 is the current DHCP
definition for Internet Protocol version 4 (IPv4) networks. The extensions of DHCP for IPv6
(DHCPv6) were published as RFC 3315.
Before BOOTP and DHCP, there was another protocol used to discover a host's network address.
The protocol was RARP (Reverse Address Resolution Protocol) RFC 906, published June 1984.
RARP, BOOTP, and DHCP provide a way to request a network layer address for a host.
[edit] Options
An option exists to identify the vendor and functionality of a DHCP client. The information is a
variable-length string of characters or octets which has a meaning specified by the vendor of the
DHCP client. One method that a DHCP client can utilize to communicate to the server that it is
using a certain type of hardware or firmware is to set a value in its DHCP requests called the
Vendor Class Identifier (VCI) (Option 60). This method allows a DHCP server to differentiate
between the two kinds of client machines and process the requests from the two types of modems
appropriately. Some types of set-top boxes also set the VCI (Option 60) to inform the DHCP server
about the hardware type and functionality of the device. The value that this option is set to give the
DHCP server a hint about any required extra information that this client needs in a DHCP response.
[edit] Reliability
A standard for implementing fault-tolerant DHCP servers has been discussed by the Internet
Engineering Task Force,[2] but the draft standard has expired. The draft standard proposed
redundant servers, one primary and one backup. The backup server tracks the IP address allocations
made by the primary and takes over if the primary fails.
[edit] Security
This section contains close paraphrasing of one or more non-free copyrighted sources.
Ideas in this article should be expressed in an original manner. See the talk page for details.
(March 2009)
The basic DHCP protocol became a standard before network security became a significant issue: it
includes no security features, and is potentially vulnerable to two types of attacks:[3]
• Unauthorized DHCP Servers: as you cannot specify the server you want, an unauthorized
server can respond to client requests, sending client network configuration values that are
beneficial to the attacker. As an example, a hacker can hijack the DHCP process to
configure clients to use a malicious DNS server or router (see also DNS cache poisoning).
• Unauthorized DHCP Clients: By masquerading as a legitimate client, an unauthorized client
can gain access to network configuration and an IP address on a network it should otherwise
not be allowed to use. Also, by flooding the DHCP server with requests for IP addresses, it
is possible for an attacker to exhaust the pool of available IP addresses, disrupting normal
network activity (a denial of service attack).
To combat these threats RFC 3118 ("Authentication for DHCP Messages") introduced
authentication information into DHCP messages, allowing clients and servers to reject information
from invalid sources. Although support for this protocol is widespread, a large number of clients
and servers still do not fully support authentication, thus forcing servers to support clients that do
not support this feature. As a result, other security measures are usually implemented around the
DHCP server (such as IPsec) to ensure that only authenticated clients and servers are granted access
to the network.
Addresses should be dynamically linked to a secure DNS server, to allow troubleshooting by name
rather than by a potentially unknown address.[citation needed] Effective DHCP-DNS linkage
requires having a file of either MAC addresses or local names that will be sent to DNS that
uniquely identifies physical hosts, IP addresses, and other parameters such as the default gateway,
subnet mask, and IP addresses of DNS servers from a DHCP server. The DHCP server ensures that
all IP addresses are unique, i.e., no IP address is assigned to a second client while the first client's
assignment is valid (its lease has not expired). Thus IP address pool management is done by the
server and not by a network administrator.
The Loopback Interface
The very first interface to be activated is the loopback interface:
# ifconfig lo 127.0.0.1
Occasionally, you will also see the dummy hostname localhost being used instead of the IP-address.
ifconfig will look up the name in the hosts file where an entry should declare it as the hostname for
127.0.0.1:
# Sample /etc/hosts entry for localhost
localhost 127.0.0.1
To view the configuration of an interface, you invoke ifconfig giving it the interface name as
argument:
$ ifconfig lo
lo Link encap Local Loopback
inet addr 127.0.0.1 Bcast [NONE SET] Mask 255.0.0.0
UP BROADCAST LOOPBACK RUNNING MTU 2000 Metric 1
RX packets 0 errors 0 dropped 0 overrun 0
TX packets 0 errors 0 dropped 0 overrun 0
As you can see, the loopback interface has been assigned a netmask of 255.0.0.0, since 127.0.0.1 is
a class-A address. As you can see, the interface doesn't have a broadcast address set, which isn't
normally very useful for the loopback anyway. However, if you run the rwhod daemon on your
host, you may have to set the loopback device's broadcast address in order for rwho to function
properly. Setting the broadcast is explained in section ``All about ifconfig'' below.
Now, you can almost start playing with your mini-``network.'' What is still missing is an entry in
the routing table that tells IP that it may use this interface as route to destination 127.0.0.1. This is
accomplished by typing
# route add 127.0.0.1