TPC/IP and DNS - Open Library Society, Inc.

Download Report

Transcript TPC/IP and DNS - Open Library Society, Inc.

LIS508 lecture 11:
TCP/IP, DNS
Thomas Krichel
2002-12-02
Structure
•
•
•
•
Refresher on IP
TCP
the TCP/IP model
DNS
IP address
• 32 bit address, usually written as a
sequence of four decimal numbers
between 0 and 255.
• Contains a network part and a host part
– dependent on the network mask
– depending on the class of the network
• All traffic that is not on the local network is
sent to a gateway
finding the IP address
• A host is on the Internet when it has an IP
address that others can reach. Usually
that implies knowing
– IP address of the machine
– network mask
– IP address of the gateway
• There can be written into a file on the
machine. This is usually referred to as a
static address.
static and dynamic addresses
• Static IP addresses have problems
– waste a lot of address space on machines
that are switched off
– have to be rewritten when device moves
• dynamic addressing has become more
common
• the most widely used protocol is the
dynamic host configuration protocol
dhcp
• When connected to a network a client software
on a host machine sends out a request on the
LAN it is attached to.
• A dhcp server will answer and lease an IP
address to the host, sending it the network mask
and the gateway address as well.
• Internet providers work like that to save address
space.
• Problem: some services require IP addresses to
be stable. They can not be run in such a setting.
routing
• using IP, all datagrams travel individually.
• they may travel through many networks in
order to get to their destination
• networks are interconnected through
routers who make the decision where to
send the packet to next.
• Such decision are based on routing
protocols such as OSPF or BGP etc. This
is a very complicated piece of engineering.
Routing packet from home to wotan
traceroute to wotan.liu.edu (148.4.2.231), 30 hops max, 38 byte packets
1 10.42.32.1 (10.42.32.1) 6.320 ms 7.262 ms
2 pos2-0-nycmnyl-ubr1.nyc.rr.com (24.29.98.157) 6.253 ms 6.686 ms
3 pos0-0-nycmnyl-rtr1.nyc.rr.com (24.29.98.153) 7.428 ms 6.599 ms
4 pos2-0-nycmnyrdc-rtr1.nyc.rr.com (24.29.98.17) 9.790 ms 17.420 ms
5 pop2-nye-P0-2.atdn.net (66.185.137.209) 22.821 ms 8.953 ms
6 level3.atdn.net (66.185.137.218) 8.021 ms 7.212 ms
7 gigabitethernet2-1.core1.NewYork1.Level3.net (64.159.17.69) 20.369ms
8.690ms
8 mny1-cr10.bbnplanet.net (209.244.160.142) 14.698 ms 11.004 ms
9 p1-0.nycmny1-nbr2.bbnplanet.net (4.24.8.169) 9.628 ms 8.604 ms
10 p1-0.nycmny1-cr2.bbnplanet.net (4.24.7.6) 9.434 ms 7.482 ms
11 s1-0.liunv.bbnplanet.net (4.24.153.106) 82.531 ms 74.760 ms
12 148.4.3.66 (148.4.3.66) 57.008 ms 46.573 ms
13 wotan (148.4.2.231) 47.840 ms 36.411 ms
frame / packet / segment
• The Ethernet frame on the LAN contains the IP
packet.
• A gateway between two networks takes the
packet out of the Ethernet frame of one network,
and “wraps” it in a frame used on another
network.
• Inside the IP packet, there is a TCP segment.
The TCP segment tells the destination machine
what to do with the data.
transmission control protocol
• provides a reliable service of communication
– stream orientation: bytes come out from the sender,
arrive in the same order at the receiver
– packet buffering: fast arrived data is stored at the
destination until it can be processed
– full duplex: communication in two ways.
• if a packet has gone astray, TCP retransmit it.
• uses port numbers as addresses to tell the host
what to do with arriving packets.
applications and ports
• TCP uses port numbers to detect which
application protocol to send the data to.
• Some ports are well-known
– 80 for http
– 23 for smtp
-- 20 for ssh
-- 53 for dns
• firewalls can block traffic for specific ports
on specific machines and therefore allow
or prevent services.
summary : TCP/IP “model”
• Application layer
– http, smtp, ftp, dns, ntp
• Transport layer
– tcp, udp
• Network layer
– IP
• Host-to-host layer
– LAN and WAN protocols
Critique of tcp/ip
• Not a model but a protocol stack
• No proper distinction between
– Service
– Protocol
– Interface
• Ad hoc set of application protocols
Application layer
• This is the top level of the network,
applications that run on it.
• In fact, the Domain Name System
occupies a special role because most
other application layer protocols relay on
it.
• Off the top of my head, only peer-to-peer
communication systems don’t really use
DNS
Host names
• A host name associates a human-friendly name
with an IP address.
• Example: arcano.openlib.org = 148.4.16.229
• Finding an IP for a name is called a name
lookup. The reverse is a reverse lookup.
• Names are a sequence of labels, separated by
dot.
• Names may contain letters, numbers and
hyphens. They may not start with a hyphen.
• Names solve from right to left, contrary to
addresses, that resolve from left to right.
purpose
• Allows to keep constant name for
– changing machines
– changing the location of the machine.
• Makes it easier for humans to remember
access points to services.
• Establish brand names and have an
economic value
History of DNS
• In the 70s, one single file HOSTS.TXT was
maintained at SRI-NIC, downloaded frequently
by all hosts on the Internet.
• Problems
– traffic and load
– name collisions
– Consistency
• 1984, Paul Mockapetris releases RFC822 and
RFC883 that describe the Domain Name
System DNS.
• Names are words separated by dots.
DNS and domains
• DNS is
– distributed database
– client server architecture
• Name servers have information about names.
– general purpose
• Allows a lot of different properties to be associated
with names
– hierarchical structure
• Top component of name is to the right.
– independent of physical structure
Berkeley Internet Name Domain
• BIND is an implementation of the Domain
Name System (DNS) protocols and
provides an openly redistributable
reference implementation of the major
components of the Domain name system,
including
– a Domain Name System server (named)
– a Domain Name System resolver library
– tools for verifying the proper operation of the
DNS server
Top level domains
• For the US, delimited by function: .com, .net,
.org, .int, .biz, .info etc.
• For other countries, use name of the country, .to,
.su, .ru.
• Below that you can register names, such as
myprof.com
• And then, you can create your own names like
krichel.myprof.com, daluca.myprof.com, and
associate properties with them.
To register names
• There is a market of name registrars around.
• You have to check that the name is not already
taken, e.g. “whois openlib.org”
–
–
–
–
–
–
Domain Name: OPENLIB.ORG
Registrar: NETWORK SOLUTIONS, INC.
Whois Server: whois.networksolutions.com
Referral URL: http://www.networksolutions.com
Name Server: UTSERV.MCC.AC.UK
Name Server: FAFNER.OPENLIB.ORG
• Many registrars will run a server for you, I run
my own.
openlib.org. IN SOA wotan.liu.edu. tkrichel.wotan.liu.edu. (
2001111300
; Serial
10800
; Refresh after 3 hours
3600
; Retry after 1 hour
640800
; Expire after 1 week
86400
; Minimum ttl of 1 day
)
openlib.org.
IN
NS
wotan.liu.edu.
; primary server, the one which holds the authoritative info
(this file)
openlib.org.
IN
NS
utserv.mcc.ac.uk.
; secondary servers, At least one is necssesary.
openlib.org.
IN
A
131.227.9.154
mail.openlib.org. IN
CNAME wotan.liu.edu.
openlib.org.
IN
MX
1
mail.openlib.org.
trabbi.openlib.org. IN
TXT
"hello world"
http://openlib.org/home/krichel
Thank you for your attention!