Transcript Document
Internet Protocols
• IPv4 (Internet Protocol)
—IP Address
—IP header
—Subnetting
—Routing
• ICMP (Internet Control Message Protocol)
• IPv6
IP (Internet Protocol)
• IP位於網際網路層,(OSI第三層)
• 主要提供多個互連網路間之路由/繞送(Routing)
功能。
• 協定特性:Connectionless、Unreliable
• 為能提供有效路由功能,制定了IP定址機制。
• 每一TCP/IP網路上之主機均有一32-bit IP位址。
— 140.131.76.1
• RFC 791
—www.rfc-editor.org
IPv4 Address Space:
http://www.iana.org/assignments/ipv4-address-space
Connectionless
Internetworking
• Unreliable
—Not guaranteed delivery
—Not guaranteed order of delivery
• Packets can take different routes
—Reliability is responsibility of next layer up
(e.g. TCP)
Stateless
健忘的
IP Address
• 長度:4 Octets (32-Bit)
• 每一IP 位址包括兩個部份
163.22.20.17
—網路位址 (Network Address)
—主機位址 (Host Address)
Host
Network
• 有時一網路會再分割為多個子網路,此時主機位
址又再細分為子網路(Subnet)及主機(Host)兩個
部份。
Network
Subnet
Host
Figure 8.5
IPv4 Address Formats
0 ~ 127
128 ~ 191
192 ~ 223
224 ~ 239
240 ~
E
D
C
A
B
IP Addresses - Class A
• 32 bit global internet address
• Network part and host part
• Class A
—Start with binary 0
—All 0 reserved (0.0.0.0)
—01111111 (127) reserved for loopback
—Range 1.x.x.x to 126.x.x.x
—All allocated
IP Addresses - Class B
•
•
•
•
•
Start 10
Range 128.x.x.x to 191.x.x.x
Second Octet also included in network address
214 = 16,384 class B addresses
All allocated
IP Addresses - Class C
• Start 110
• Range 192.x.x.x to 223.x.x.x
• Second and third octet also part of network
address
• 221 = 2,097,152 addresses
• Nearly all allocated
—See IPv6
Addressing Modes
• Unicast
— 163.22.20.16
• Multicast (Class D)
— 224.0.0.9
— http://www.iana.org/assignments/multicast-addresses
• Broadcast
— 255.255.255.255
— 163.22.20.255
RIP
Routing Information Protocol
IP 位址分類
Special IP Addresses
• All-0 host suffix Network Address
— 163.22.20.16/24 163.22.20.0/24
— 163.22.20.137/25 163.22.20.?/25
— 163.22.20.137: 163.22.20.10001001
— 163.22.20.128/25
163.22.20.10000000
• All-0s This computer
— 0.0.0.0
• All-0s network This network.
— 163.22.20.7/24 0.0.0.7 (Host 7 on this network)
• All-1 host suffix All hosts on the destination net
(directed broadcast)
163.22.20.16/24 163.22.20.255
• All-1s All hosts on this net (limited broadcast)
— 255.255.255.255
Subnet number cannot be all 1
• 127.*.*.* Loopback through IP layer
— 127.0.0.1
Private IP Addresses
• Any organization can use these inside their network
• Can’t go on the internet. [RFC 1918]
—10.0.0.0 - 10.255.255.255 (10/8 prefix)
—172.16.0.0 - 172.31.255.255 (172.16/12 prefix)
—192.168.0.0 - 192.168.255.255 (192.168/16 prefix)
• Network Address Translation (NAT)
— Basic NAT (one-to-one NAT)
— NAT(NAPT, Network Address Port Translation)
1
16
256
Subnets and Subnet Masks
• Allow arbitrary complexity of internetworked LANs within
organization
• Insulate overall internet from growth of network
numbers and routing complexity
• Site looks to rest of internet like single network
• Each LAN assigned subnet number
• Host portion of address partitioned into subnet number
and host number
• Local routers route within subnetted network
• Subnet mask indicates which bits are subnet number
and which are host number
網路遮罩(Net Mask, Subnet Mask)
• 網路遮罩,將一IP位址中之代表網路及子網路位
址之位元設為1,其餘設為0即為網路遮罩。
—Class A 255.0.0.0
—Class B 255.255.0.0
—Class C 255.255.255.0
• 網路遮罩與IP位址利用邏輯AND便可得到網路位
址。
Examples of Subnetworking
00100000
00111001
01000000
192.168.17.x
01100000
Question
•
•
一個原為Class C之IP網路,均分成多個子網路
遮罩為255.255.255.224的子網路後,將減少
____ 個可配置的主機位址。(96研)
Hints:
—
—
—
—
Class C: 255.255.255.0
224: 11100000
host all 0’s: Network ID
host all 1’s: Broadcast address
• Host: 10.10.4.26
• Subnet mask: 255.255.255.0
• Default Gateway: 10.10.4.254
• Send a packet destined to 10.10.4.35
— 10.10.4.35 AND 255.255.255.0 ?= 10.10.4.26 AND
255.255.255.0 Yes, the same subnet
— Send to 10.10.4.35 directly
• Send a packet destined to 10.10.6.3
— 10.10.6.3 AND 255.255.255.0 ?= 10.10.4.26 AND 255.255.255.0
No, the different subnets
— Send to default gateway (10.10.4.254)
IPv4 Header
Header Fields (1)
• Version
—Currently 4
• IHL (Internet header length)
—In 32 bit words
—Including options
• DS/ECN (or Type of service)
• Total length
—Of datagram, in octets
DS: Differentiated Service
ECN: Explicit Congestion Notification
Header Fields (2)
• Identification
—Sequence number
—Used with addresses and user protocol to identify
datagram uniquely
• Flags
—More bit
0 DF MF
• Indicates that this is not the last fragment
—Don’t fragment
• Fragmentation offset
• Position of fragment of user data in original datagram
• In multiples of 64 bits (8 octets)
Fragmentation and
Re-assembly
• Different packet sizes
• When to re-assemble
—At destination
• Results in packets getting smaller as data traverses internet
—Intermediate re-assembly
• Need large buffers at routers
• Buffers may fill with fragments
• All fragments must go through same router
– Inhibits dynamic routing
Figure 8.2
Fragmentation Example
Header Fields (3)
• Time to live
• Protocol
—Next higher layer to receive data field at destination
• Header checksum
—Reverified and recomputed at each router
—16 bit ones complement sum of all 16 bit words in
header
—Set to zero during calculation
Datagram Lifetime
• Datagrams could loop indefinitely
• Datagram marked with lifetime
—Time To Live field in IP
—Hop count
• Decrement time to live on passing through a each router
—Time count
• Need to know how long since last router
• Once lifetime expires (TTL = 0)
—Router discards the datagram
—Router sends ICMP Time Exceeded to the source.
Traceroute
RFC 1393
• To provide a trace of the path the packet took to reach
the destination.
• Operates by first sending out a packet with a Time To
Live (TTL) of 1. The first hop then sends back an ICMP
error message indicating that the packet could not be
forwarded because the TTL expired.
• The packet is then resent with a TTL of 2, and the
second hop returns the TTL expired. This process
continues until the destination is reached.
• Record the source of each ICMP TTL exceeded message
http://www.visualroute.com/
tracert
C:\>tracert www.google.com
Tracing route to www.l.google.com [72.14.235.104]
over a maximum of 30 hops:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<1
<1
<1
<1
23
2
*
6
28
31
*
62
63
62
63
65
77
64
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
Trace complete.
<1
<1
<1
<1
1
3
*
6
28
30
*
63
63
64
64
63
73
73
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
<1
<1
<1
<1
1
3
5
6
28
29
*
62
63
62
63
69
70
64
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
ms
gateway.puli34-10-10.ncnu.edu.tw [10.10.34.254]
ip253.puli01.ncnu.edu.tw [163.22.1.253]
ip090.puli18-10-10.ncnu.edu.tw [10.10.18.90]
ip094.puli18.ncnu.edu.tw [163.22.18.94]
ip098.puli255-64-203.ncnu.edu.tw [203.64.255.98]
140.128.251.38
bb-MOE-CHT.TANet.edu.tw [192.83.196.111]
202.169.174.58
202.169.174.45
202.40.161.1
Request timed out.
218.100.16.24
216.239.43.68
66.249.95.198
72.14.232.162
72.14.232.221
72.14.232.217
tw-in-f104.google.com [72.14.235.104]
VisualRoute
http://www.visualroute.com/
Protocol
• Protocol: 8 bits
—Identifies contents of data field
—1 = ICMP
—6 = TCP
—17 =UDP
IP
Header
Data Field
ICMP, TCP, or UDP Message
http://www.iana.org/assignments/protocol-numbers
Header Fields (4, 5, 6)
• Source address
• Destination address
• Options
—Security
—Source routing (Strict, Loose)
—Route recording
—Stream identification
—Timestamp
• Padding
—To fill to multiple of 32 bits long
Data Field
• Carries user data from next layer up
• Integer multiple of 8 bits long (octet)
• Max length of datagram (header plus data)
65,535 octets
Routing
• End systems and routers maintain routing tables
— Indicate next router to which datagram should be sent
— Static
• May contain alternative routes
— Dynamic
• Flexible response to congestion and errors
• Source routing
— Source specifies route as sequential list of routers to be followed
— Security
— Priority
• Route recording
Internet Protocol Operation
*A B
Router X makes a decision:
1. B is in one of the networks to
which X is attached. send
2. B is in a remote network.
Additional routers must be
traversed. routing
3. X does not know the
destination address.
Error message
Routers and the IP Addressing Principle
• Routers have two or more addresses. One for
each interface.
Routing Table
IF ((Mask[i] & Destination Addr) = = Destination[i])
Forward to NextHop[i]
C:\> route print
Routing Table
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
NextInterface
Hop
Router
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
2
172.30.33.0
255.255.255.0 (/24)
0
1
Local
3
192.168.6.0
255.255.255.0 (/24)
12
2
G
Routers Base Routing Decisions on Their Routing Tables.
Each Row Represents a Route to a Network or Subnet
For Each Arriving Packet,
The Packet’s Destination IP Address
Is Matched Against the
Destination Network or Subnet Field in Every Row
Routing Table
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
NextInterface
Hop
Router
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
2
172.30.33.0
255.255.255.0 (/24)
0
1
Local
3
192.168.6.0
255.255.255.0 (/24)
12
2
G
Each Row Represents a Route to a Network or Subnet.
All packets to that network or subnet are governed by that one row.
So there is one rule for a range of IP addresses.
This reduces the number of rows that must be considered.
Routing Table
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
NextInterface
Hop
Router
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
2
172.30.33.0
255.255.255.0 (/24)
0
1
Local
3
192.168.6.0
255.255.255.0 (/24)
12
2
G
Row 1
If Destination IP Address = 172. 30.33.6
Mask = 255.255. 0.0
Result = 172. 30. 0.0
Destination Network or Subnet = 128.171. 0.0
No match!
Routing Table
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
NextInterface
Hop
Router
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
2
172.30.33.0
255.255.255.0 (/24)
0
1
Local
3
192.168.6.0
255.255.255.0 (/24)
12
2
G
Row 1
If Destination IP Address = 172. 30. 33.6
Mask = 255.255.255.0
Result = 172. 30. 33.0
Destination Network or Subnet = 172. 30. 33.0
This row is a match!
Routing Table
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
NextInterface
Hop
Router
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
2
172.30.33.0
255.255.255.0 (/24)
0
1
Local
3
192.168.6.0
255.255.255.0 (/24)
12
2
G
Row 3
If Destination IP Address = 172. 30. 33.6
Mask =
Result =
Destination Network or Subnet =
Is this row is a match?
Routing
• For Each Incoming IP Packet
—Destination IP address is matched against every row
in the routing table.
—If the routing table has 10,000 rows, 10,000
comparisons will be made for each packet.
—There can be multiple matching rows for a
destination IP address, corresponding to multiple
alternative routes.
—After all matches are found, the best match
must be selected.
only one row matches
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
3
192.168.0.0
255.255.0.0 (/16)
12
NextInterface
Hop
Router
2
• If only one row matches, it will be selected as
the best row match.
—Destination IP address = 192.168.6.7
G
Default Route
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
15
0.0.0.0
0.0.0.0 (/0)
5
NextInterface
Hop
Router
3
• The default row always matches
—Mask 0.0.0.0 applied to anything results in 0.0.0.0.
—This always matches the Network/Subnet value
0.0.0.0.
—The router specified for this row (H) is the default
router.
H
Multiple Matches - 1
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
NextInterface
Hop
Router
1
128.171.0.0
255.255.0.0 (/16)
47
2
G
7
127.171.17.0
255.255.255.0 (/24)
55
3
H
• If there are multiple matches, the row with the
longest length of match is selected
—This is Row 7 for 128.171.17.56 (24 bit match)
—Row 1’s length of match is only 16 bits
—Longer matches often are routes to a particular
subnet within a network
Multiple Matches - 2
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
NextInterface
Hop
Router
5
172.29.8.0
255.255.255.0 (/24)
34
1
F
8
172.29.8.0
255.255.255.0 (/24)
20
3
H
• If there are multiple rows with the same lengths
of match, the metric column compares
alternative routes.
—If the metric is cost, the smallest metric wins (20)
—If the metric is speed, the largest metric wins (34)
The Situation
• The router first evaluated the IP destination
address of the arriving packet against all rows
and noted the matching rows.
• The router then selected the best-match row.
• Now, the router examines the interface and
next-hop router fields in the best-match row to
determine what to do with the packet.
Interface and Next-Hop Router
Router
Forwarding
Packet
Router A
Possible
Next-Hop
Router
Packet to Router B
on Interface 5
Router B
IP Subnet on
Interface (Port 5)
Packet must be sent to
a particular host or
router on the subnet
out a particular
interface (port).
Router C
Possible
Destination
Host
Possible
Next-Hop
Router
Interface and Next-Hop Router
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
5
172.29.8.0
255.255.255.0 (/24)
34
NextInterface
Hop
Router
1
F
• The Interface specifies the “out” port on the
router.
—A subnet is attached to this interface.
• NHR column specifies a specific NHR on that
subnet.
—For Row 5, send packet to NHR F on the subnet out
Interface 1.
Next-Hop: Local
Row
Destination
Network or
Subnet
Mask (/Prefix)*
Metric
(Cost)
2
172.30.33.0
255.255.255.0 (/24)
0
NextInterface
Hop
Router
1
Local
• If Next-Hop Router Field says Local,
—Then the destination host in on the subnet attached to
the interface (1).
—Instead of sending the packet to a next-hop router on
the subnet, the router will send the packet to its
destination address.
IP Forwarding Process
Address Resolution Protocol
• RFC 826
• To map network addresses to the hardware
addresses used by a data link protocol
• To translate IP addresses to Ethernet MAC
addresses
• Use data-link broadcast
• ARP Request, ARP Reply
ARP Announcement
Gratuitous ARP
ARP Spoofing (ARP Poisoning)
• Send fake, or 'spoofed', ARP messages to an
Ethernet LAN.
• Generally, to associate the attacker's MAC
address with the IP address of another node
(such as the default gateway).
• Passive sniffing, Man-in-the-middle attack,
Denial-of-service attack
• http://www.oxid.it/downloads/apr-intro.swf
ARP Cache
Default cache time-outs: Two-minute (unused entries)
Ten-minute (used entries)
arp
arp
arp
arp
-a
-d 10.10.34.235
-d *
–s 157.55.85.212
C:\>arp -a
Interface: 10.10.34.169
Internet Address
10.10.34.231
10.10.34.234
10.10.34.235
10.10.34.254
00-aa-00-62-c6-09
--- 0x2
Physical Address
00-12-cf-28-cd-20
00-12-cf-29-c6-80
00-12-cf-28-1e-20
00-08-e3-dd-b3-1f
Type
dynamic
dynamic
dynamic
dynamic
C:\>arp -s 10.10.34.235 00-12-cf-28-1e-20
C:\>arp –a
Interface: 10.10.34.169
Internet Address
10.10.34.235
10.10.34.254
--- 0x2
Physical Address
00-12-cf-28-1e-20
00-08-e3-dd-b3-1f
Type
static
dynamic
ICMP
• Internet Control Message Protocol (RFC 792)
• Transfer of (control) messages from routers and
hosts to hosts
• Feedback about problems
—e.g. time to live expired
• Encapsulated in IP datagram
—Not reliable
ICMP Message Formats
ICMP Type
8/0
3
4
5
11
12
13 / 14
17 / 18
Echo Request / Echo Reply
Destination Unreachable
Source Quench
Redirect
Time Exceeded
Parameter Problem
Timestamp Request / Timestamp Reply
Address Mask Request / Address Mask Reply
Ping
• Most basic tool for internet management
• Based on ICMP ECHO_REQUEST message
• Available on all TCP/IP stacks
• Useful for measuring
• Connectivity
• Packet Loss
• Round Trip Time
• Can do auto-discovery of TCP/IP equipped stations on
single segment
ping
Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] destination-list
Options:
-t
-a
-n count
-l size
-f
-i TTL
-v TOS
-r count
-s count
-j host-list
-k host-list
-w timeout
Ping the specified host until stopped.
To see statistics and continue - type Control-Break;
To stop - type Control-C.
Resolve addresses to hostnames.
Number of echo requests to send.
Send buffer size.
Set Don't Fragment flag in packet.
Time To Live.
Type Of Service.
Record route for count hops.
Timestamp for count hops.
Loose source route along host-list.
Strict source route along host-list.
Timeout in milliseconds to wait for each reply.
Example
C:\>ping -n 10 -l 256 www.im.ncnu.edu.tw
Pinging euler.im.ncnu.edu.tw [163.22.20.16] with 256 bytes of data:
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
from
from
from
from
from
from
from
from
from
from
163.22.20.16:
163.22.20.16:
163.22.20.16:
163.22.20.16:
163.22.20.16:
163.22.20.16:
163.22.20.16:
163.22.20.16:
163.22.20.16:
163.22.20.16:
bytes=256
bytes=256
bytes=256
bytes=256
bytes=256
bytes=256
bytes=256
bytes=256
bytes=256
bytes=256
time=1ms
time=1ms
time=1ms
time=1ms
time=1ms
time=1ms
time=1ms
time=1ms
time=1ms
time=1ms
TTL=253
TTL=253
TTL=253
TTL=253
TTL=253
TTL=253
TTL=253
TTL=253
TTL=253
TTL=253
Ping statistics for 163.22.20.16:
Packets: Sent = 10, Received = 10, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 1ms, Average = 1ms
DHCP
(Dynamic Host Configuration Protocol)
DHCP allows IP addresses to be allocated on a temporary
basis (a lease).
When the lease for an IP address expires, the address can
be reused by a different node.
This is useful in environments supporting mobile users who
connect to the network with a laptop from many different
places.
This helps alleviate the problem of limited IP addresses and
simplifies TCP/IP client configurations.
動態主機組態協定(DHCP)
• Dynamic Host Configuration Protocol
• 自動設定電腦的
—
—
—
—
IP位址(163.22.20.223)
子網路遮罩(255.255.255.0)
預設通訊閘(163.22.20.254)
領域名稱伺服器(163.22.2.1)
—…
• winipcfg (Win 98/Me)
• ipconfig /all (Win 2000/XP)
1
2
3
控制台 網路和網際網路連線
ipconfig
ipconfig
ipconfig /all
ipconfig /release
ipconfig /renew
C:\>ipconfig
Windows IP Configuration
Ethernet adapter 區域連線:
Connection-specific
IP Address. . . . .
Subnet Mask . . . .
Default Gateway . .
DNS
. .
. .
. .
Suffix
. . . .
. . . .
. . . .
.
.
.
.
:
:
:
:
ncnu.edu.tw
10.10.34.169
255.255.255.0
10.10.34.254
領域名稱系統(DNS)
• 提供主機名稱與IP位址之轉換
www.im.ncnu.edu.tw
163.22.20.16
• 由DNS伺服器提供
• RR-DNS (Round Robin DNS)
— www.yahoo.com: (8台伺服器)
— 66.218.71.90, 66.218.71.80, 66.218.71.95, …
• DDNS (Dynamic DNS)
— 主機名稱
浮動IP位址
ipconfig /displaydns
ipconfig /flushdns
nslookup
C:\>nslookup
Default Server: academic.ncnu.edu.tw
Address: 163.22.2.1
> www.cnn.com
Server: academic.ncnu.edu.tw
Address: 163.22.2.1
Non-authoritative answer:
Name:
www.cnn.com
Addresses: 64.236.29.120, 64.236.91.21, 64.236.16.20, 64.236.16.52
64.236.16.84, 64.236.24.12, 64.236.24.20, 64.236.24.28
> 163.22.20.16
Server: academic.ncnu.edu.tw
Address: 163.22.2.1
Name:
euler.im.ncnu.edu.tw
Address: 163.22.20.16
Aliases: 16.20.22.163.in-addr.arpa
>
全球資訊網(WWW)
TANet
www.abc.com
Source
Switch/Router
DHCP Server
DNS Server
Proxy Server/Filter
TANet / HiNet / ISPs
Destination
HiNet
(5)
(3)
(1)
(4)
NCNU
Web Filter
Campus
Network
(2)
Proxy
Servers
DHCP
Server
DNS
Server
Router
Switch
電子郵件 (E-Mail)
• 用戶端 Outlook / Outlook Express
• SMTP伺服器 – 送信
—無需密碼,用戶需在規定的網路內送信
—Open Relay / Spam Mail
• POP伺服器– 收信
—需密碼,沒有限制網路
• 常見問題
—用戶沒在規定的網路內送信
—信箱爆滿(Quota)
電子郵件 (E-Mail) – 送
HiNet
TANet
(6)
pop.ntu.edu.tw
Sender
Switch/Router
DHCP Server
DNS Server
SMTP Server/Virus Scan
POP Server
TANet / ISPs
Receiver
POP
Server
NCNU
(3) Campus
(1)
Network
(2)
(5)
Virus
Scan
SMTP
Servers
Router
Switch
DHCP
Server
DNS
Server
(4)
電子郵件 (E-Mail) – 收
smtp.ntu.edu.tw
Sender
TANet / ISPs
Switch/Router
SMTP Server/Virus Scan
POP Server
Receiver*
DHCP Server
DNS Server
HiNet
TANet
(1)
(5)
(3)
(4)
POP
Server
NCNU
Campus
Network
(2)
Virus
Scan
SMTP
Servers
Router
Switch
DHCP
Server
DNS
Server
IPv6 - Version Number
• IP v 1-3 defined and replaced
• IP v4 - current version
• IP v5 - streams protocol
—Connection oriented internet layer protocol
• IP v6 - replacement for IP v4
—During development it was called IPng
• Next Generation
Why Change IP?
• Address space exhaustion
—Two level addressing (network and host) wastes
space
—Network addresses used even if not connected to
Internet
—Growth of networks and the Internet
—Extended use of TCP/IP
—Single address per host
• Requirements for new types of service
IPv6 RFCs
• 1752 - Recommendations for the IP Next
Generation Protocol
• 2460 - Overall specification
• 3513 - addressing structure
• others (find them)
• www.rfc-editor.org
• http://www.ietf.org/html.charters/ipv6-charter.html
IPv6 Enhancements (1)
• Expanded address space
—128 bit
• Improved option mechanism
—Separate optional headers between IPv6 header and
transport layer header
—Most are not examined by intermediate routes
• Improved speed and simplified router processing
• Easier to extend options
• Address autoconfiguration
—Dynamic assignment of addresses
IPv6 Enhancements (2)
• Increased addressing flexibility
—Anycast - delivered to one of a set of nodes
—Improved scalability of multicast addresses
• Support for resource allocation
—Replaces type of service
—Labeling of packets to particular traffic flow
—Allows special handling
—e.g. real time video
Figure 8.9
IPv6 Header
IPv6 Header Fields (1)
• Version
—6
• Traffic Class (DS/ECN)
—Classes or priorities of packet
—Still under development
—See RFC 2460
• Flow Label
—Used by hosts requesting special handling
IPv6 Header Fields (2)
• Payload length
—Includes all extension headers plus user data
• Next Header
—Identifies type of header
• Extension or next layer up
— IPv4’s Protocol
• Hop Limit
— IPv4’s TTL
IPv6 Packet with Extension
Headers
Extension Headers
• Hop-by-Hop Options
—Require processing at each router
• Routing
—Similar to v4 source routing
•
•
•
•
Fragment
Authentication
Encapsulating security payload
Destination options
—For destination node
IPv6 Addresses
• 128 bits long
• Assigned to interface
• Single interface may have multiple unicast
addresses
• Three types of address
Types of IPv6 Addresses
• Unicast
—Single interface
• Anycast
—Set of interfaces (typically different nodes)
—Delivered to any one interface
—the “nearest”
• Multicast
—Set of interfaces
—Delivered to all interfaces identified
Text Representation of IPv6
RFC 3513
Addresses
• x:x:x:x:x:x:x:x
• hexadecimal values of the eight 16-bit pieces
of the address.
—FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
—1080:0:0:0:8:800:200C:417A
IPv6 Address Representation (2)
• The use of "::" indicates multiple groups of 16-bits
of zeros.
• Unicast address
—1080:0:0:0:8:800:200C:417A
—1080::8:800:200C:417A
• Multicast address
—FF01:0:0:0:0:0:0:101
FF01::101
• Loopback address
::1
—0:0:0:0:0:0:0:1
• unspecified addresses (Absence of address)
—0:0:0:0:0:0:0:0
::
IPv6 Address Representation (3)
• IPv4 and IPv6 mixed address
—x:x:x:x:x:x:d.d.d.d
—x: IPv6, d: IPv4
—Eg.
• 0:0:0:0:0:FFFF:129.144.52.38
• ::13.1.68.3
• ::FFFF:129.144.52.38
Address Type Identification
Address type
Binary prefix
IPv6 notation
Unspecified
00...0 (128 bits)
::/128
Loopback
00...1 (128 bits)
::1/128
Multicast
1111 1111
FF00::/8
Link-local unicast
1111 1110 10 FE80::/10
Site-local unicast
1111 1110 11 FEC0::/10
Global unicast
(everything else)