Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
KRnet 2002 2
IPv6 Tutorial Schedule
7월 24일 수요일 (T5), 10:00~18:00 10:00~11:30 IPv6 개요 및 동향
13:00~14:30 IPv6 기본규격 및 주소체계
14:45~16:15 IPv6 제어 프로토콜
16:30~18:00 자동네트워킹 및 Mobile 보안기술
7월 25일 목요일(T8), 9:30~18:00 09:30~11:30 IPv6 전환메커니즘 및 구조 (신명기)
13:00~14:30 IPv6 응용 전환기술 (신명기)
14:45~16:15 IPv6 망 구축 개요 및 요구사항 (이승윤)
16:30~18:00 IPv6 망 구축 방법 및 시스템 구축기술 (이승윤)
KRnet 2002 3
IPv6 제어프로토콜 개요
KRnet 2002 4
개요
ICMPv6는 신뢰할 수 없는 망(IPv6)을 위해 만들어졌으며, 그로 인해 발생하는 오류 정보를 제공하기 위해 사용됨.
새로운 서비스에 대한 확장성을 지님
메시지 형식
TypeType
CodeCode
ChecksumChecksum
UnusedUnused
Message BodyMessage Body
TypeType
CodeCode
ChecksumChecksum
UnusedUnused
Message BodyMessage Body
KRnet 2002 5
ICMPv4와 비교
ICMPv4 vs. ICMPv6
IPv4
TCP/UDP
IGMPICMPv4
Application
RARPARPEthernet
IPv4
TCP/UDP
IGMPICMPv4
Application
RARPARPEthernet
IPv6
TCP/UDP
ICMPv6ICMPv6
Application
Ethernet
ND
Inv ARPARP
MLDv1
NI …
ICMPv6
ND
Inv ARPARPARP
MLDv1
NINI ……
ICMPv6
KRnet 2002 6
ICMPv6 메시지
…255
……
Mobile Prefix Advertisement153
Mobile Prefix Solicitation 152
Prefix Delegationxxx
Prefix RequestxxxAutomatic
PD protocol
Home Agent Address Discovery Reply151
Home Agent Address Discovery Request150
Mobile IPv6
……
…127
Name lookup
NDP
MLD
Basic informational
Basic error messages
Name Information Reply140
Name Information Query 139
Redirect137
Neighbor Advertisement (NA)136
Neighbor Solicitation (NS)135
Router Advertisement (RA)134
Router Solicitation (RS)133
Group Membership Termination132
Group Membership Report131
Group Membership Query130
Echo Reply129
Echo Request128
Information
messages
Parameter Problem Error4
Time Exceeded Error3
Packet Too Big Error2
Destination Unreachable Error1
Error
messages
…255
……
Mobile Prefix Advertisement153
Mobile Prefix Solicitation 152
Prefix Delegationxxx
Prefix RequestxxxAutomatic
PD protocol
Home Agent Address Discovery Reply151
Home Agent Address Discovery Request150
Mobile IPv6
……
…127
Name lookup
NDP
MLD
Basic informational
Basic error messages
Name Information Reply140
Name Information Query 139
Redirect137
Neighbor Advertisement (NA)136
Neighbor Solicitation (NS)135
Router Advertisement (RA)134
Router Solicitation (RS)133
Group Membership Termination132
Group Membership Report131
Group Membership Query130
Echo Reply129
Echo Request128
Information
messages
Parameter Problem Error4
Time Exceeded Error3
Packet Too Big Error2
Destination Unreachable Error1
Error
messages
KRnet 2002 7
Path MTU Discovery for IPv6 (RFC1981)
- ICMPv6 에러 메시지 사용 예 -
KRnet 2002 8
개요
Path MTU ?
Path MTU Discovery
A standard mechanism for a node to discover the PMTU of an arbitrary path
IPv6 nodes are not required to implement PMTU Discovery
Minimal IPv6 implementation
IPv6 minimum link MTU : 1280 octets
KRnet 2002 9
동작 메커니즘
PMTU Discovery Protocol
Method 1 :
Several iterations of the packet-sent/Packet-Too-Big-message-received cycle
Initial PMTU = the (known) MTU of the first hop in the path
Method 2
PMTU = the IPv6 minimum link MTU(1280 octets)
KRnet 2002 10
프로토콜 형식
ICMPv6 Error Messages: Packet Too Big IPv6 Field
Destination address : invoking packet의 Source 주소 필드 복사
ICMPv6 Field
Operation outgoing link의 MTU보다 큰 패킷으로 인해 forward 될 수 없는 패킷이 존재할
때 라우터에 의해 발생됨
Path MTU Discovery 과정에서 사용됨
Type=2Type=2
Code=0Code=0
ChecksumChecksum
MTUMTU
As much of invoking packet
as will fit without the ICMPv6 packet
exceeding the minimum IPv6 MTU [IPv6]
As much of invoking packet
as will fit without the ICMPv6 packet
exceeding the minimum IPv6 MTU [IPv6]
Type=2Type=2
Code=0Code=0
ChecksumChecksum
MTUMTU
As much of invoking packet
as will fit without the ICMPv6 packet
exceeding the minimum IPv6 MTU [IPv6]
As much of invoking packet
as will fit without the ICMPv6 packet
exceeding the minimum IPv6 MTU [IPv6]
MTU : Next-hop Link의 MTU
KRnet 2002 11
Multicast Listener Discovery
(RFC2710)
KRnet 2002 12
MLD : 개요
Purpose of MLD used by an IPv6 router to discover the presence of multicast
listeners on its directly attached links,
and discover specifically which multicast addresses are of interest to those neighboring nodes
Derived from IGMPv2(IPv4)
One important difference to note is that MLD uses ICMPv6 (IP Protocol 58) message types,rather than IGMP (IP Protocol 2) message types.
KRnet 2002 13
MLD Message
MLD message type
subset of the set of ICMPv6 messages
sent with a link-local IPv6 Source Address, an IPv6 Hop Limit of 1, and an IPv6 Router Alert option in a Hop-by-Hop Options header.
Group Membership Query, Response, Termination
Type=130,1,2 Code Checksum
8 bits 8 bits 8 bits
Maximum Response Delay Reserved
Multicast Address
Type=130,1,2 Code Checksum
8 bits 8 bits 8 bits
Maximum Response Delay Reserved
Multicast Address
KRnet 2002 14
Neighbor Discovery for IPv6
(RFC 2461)
KRnet 2002 15
프로토콜 개요 – 1/2
Neighbor Discovery on the same link
To discover each other's presence
To determine each other's link-layer addresses
To find routers and to maintain reachability information about the paths to active neighbors
기능
Autoconfiguration
Address Resolution
Neighbor Unreachability Detection (NUD)
Route Redirection
KRnet 2002 16
프로토콜 개요 – 2/2
Protocol 메시지 새로운 ICMPv6 메시지를 이용
KRnet 2002 17
Router Solicitation – 1/2
목적 호스트 라우터
신속하게 RA 메시지를 보내줄 것을 요청
활용 주소 자동 설정 (Prefix 정보 획득 및 기타 구성 정보 획득)
Type = 133 Code Checksum
Reserved
Options …
8 bits 8 bits 8 bits
Type = 133 Code Checksum
Reserved
Options …
8 bits 8 bits 8 bits8 bits 8 bits 8 bits
Source link-layer address
KRnet 2002 18
Router Solicitation – 2/2
송신자 주소 필드에 미지정 주소가 포함된 경우Not exist
송신자의 링크계층 주소Source link-layer addressValid Options
All zero'sReserved
ICMPv6 체크섬16-bit checksumChecksum
0Code
RS 메시지의 유형 값133Type
ICMPv6 fields
송신자와 수신자간에 보호연계가 존재하는 경우
YesAuthentication Header
IPv6 Extension Headers
디폴트 값255Hop Limit
링크-로컬 모든 라우터 멀티캐스트 주소(All-Router Multicast)
ff02::2Destination address
송신 인터페이스에 주소가 할당되지 않은 경우::
송신 인터페이스에 할당된 주소An IP addressSource address
IPv6 Basic Header
송신자 주소 필드에 미지정 주소가 포함된 경우Not exist
송신자의 링크계층 주소Source link-layer addressValid Options
All zero'sReserved
ICMPv6 체크섬16-bit checksumChecksum
0Code
RS 메시지의 유형 값133Type
ICMPv6 fields
송신자와 수신자간에 보호연계가 존재하는 경우
YesAuthentication Header
IPv6 Extension Headers
디폴트 값255Hop Limit
링크-로컬 모든 라우터 멀티캐스트 주소(All-Router Multicast)
ff02::2Destination address
송신 인터페이스에 주소가 할당되지 않은 경우::
송신 인터페이스에 할당된 주소An IP addressSource address
IPv6 Basic Header
KRnet 2002 19
Router advertisement – 1/5
목적 호스트의 주소 설정에 필요한 프리픽스 정보 및 기타 정보를 광고
하기 위해 사용되는 메시지
활용: Autoconfiguration에 이용
Prefix 정보 전달- 자동 주소 설정
기타 네트웍 정보 포함- Link MTU, Lifetime 등의 정보를 제공
전송 라우터에서 주기적으로 보내지거나
또는 호스트의 요청(Router Solicitation)이 있을 경우 전송한다.
KRnet 2002 20
Router advertisement – 2/5
RA message
Type = 134 Code Checksum
8 bits 8 bits 16 bits
Cur Hop Limit Reserv Router Lifetime
Options …
Reachable Time
Retrans Timer
MOH
Type = 134 Code Checksum
8 bits 8 bits 16 bits
Cur Hop Limit Reserv Router Lifetime
Options …
Reachable Time
Retrans Timer
MOH
Router lifetime기본 라우터에 대한 Lifetime(초 단위):
최대시간 18.2시간
M: Managed address configuration
O: Other stateful configuration
H: Home Agent
Retrans TimerNS 메시지의 재전송 간격(천분의 1초 단위)
주소 할당 및 NUD(Neighbor Unreachability Detection) 알고리즘에 사용됨
Reachable Time 노드가 도달 가능성 확인(reachability confirmation)신호수신 후 도달 가능하다고 여기는시간(천분의 1초 단위)
NUD에 사용됨
1. Source Link-layer address
2. MTU
3. Prefix information
1. Source Link-layer address
2. MTU
3. Prefix information
KRnet 2002 21
Router advertisement – 3/5 Extended RA
Default Router Preferences and More-Specific Routes draft-ietf-ipv6-router-selection-01.txt
Type = 134 Code Checksum
8 bits 8 bits 16 bits
Cur Hop Limit Router Lifetime
Options …
Reachable Time
Retrans Timer
MOH ResPrf
Type = 134 Code Checksum
8 bits 8 bits 16 bits
Cur Hop Limit Router Lifetime
Options …
Reachable Time
Retrans Timer
MOH ResPrf ResPrf
Default Router Preference• 01 High • 00 Medium (default) • 11 Low • 10 Reserved - MUST NOT be sent
Type Length
8 bits 8 bits 16 bits
Route Lifetime
Prefix
M ResPrfPrefix LengthType Length
8 bits 8 bits 16 bits
Route Lifetime
Prefix
M ResPrfPrefix Length M ResPrfPrefix Length
Route Preference
X. Route Information Option
3. Prefix information
2. MTU
1. Source Link-layer address
X. Route Information Option
3. Prefix information
2. MTU
1. Source Link-layer address
KRnet 2002 22
Router advertisement – 4/5
Message 구성
송신자와 수신자간에 SA가 존재하는 경우YesAuthentication Header
IPv6 Extension Headers
디폴트 값255Hop Limit
링크-로컬 모든 노드 멀티캐스트 주소(All-Nodes Multicast)
ff02::1
RS 메시지의 송신 주소IP address
Destination address
송신 인터페이스에 할당된 링크-로컬 유니캐스트 주소FE80::xxxxSource address
IPV6 Basic Header
송신자와 수신자간에 SA가 존재하는 경우YesAuthentication Header
IPv6 Extension Headers
디폴트 값255Hop Limit
링크-로컬 모든 노드 멀티캐스트 주소(All-Nodes Multicast)
ff02::1
RS 메시지의 송신 주소IP address
Destination address
송신 인터페이스에 할당된 링크-로컬 유니캐스트 주소FE80::xxxxSource address
IPV6 Basic Header
KRnet 2002 23
Router advertisement – 5/5
On-link 또는 자동주소설정에 사용한 프리픽스 정보Prefix Information
링크특성에 따른 링크 전송 데이터 길이MTU
송신자의 링크계층 주소Source link-layer address
Valid Options
NS 메시지의 재전송 시간주기(msec)32-bit unsigned integerRestrans Timer
NUD 검사 후 노드가 유효한 것으로 인정되는 시간(msec)32-bit unsigned integerReachable Time
디폴트 라우터 유무 지시(sec), ‘0’=기본라우터 아님, 18.2시간(최대값)
16-bit unsigned integerRouter Lifetime
예비이며, 현재 IPv6 워킹 그룹에 선호도 정보를 포함하기 위해 확장 중에 있음
5-bitReserved
라우터가 HA(Home agent)역할을 수행1-bit flagH
주소 이외의 정보를 획득하기 위해 상태 보존형 방식 사용1-bit flagO
상태 보존형 자동 주소 설정 방식의 사용 지시1-bit flagM
전송 패킷에 사용될수 있는 디폴트 hop limit 값8-bit unsigned integerCur Hop Limit
수신 노드는 무시0Code
RA 메시지의 유형134Type
ICMPv6 fields
On-link 또는 자동주소설정에 사용한 프리픽스 정보Prefix Information
링크특성에 따른 링크 전송 데이터 길이MTU
송신자의 링크계층 주소Source link-layer address
Valid Options
NS 메시지의 재전송 시간주기(msec)32-bit unsigned integerRestrans Timer
NUD 검사 후 노드가 유효한 것으로 인정되는 시간(msec)32-bit unsigned integerReachable Time
디폴트 라우터 유무 지시(sec), ‘0’=기본라우터 아님, 18.2시간(최대값)
16-bit unsigned integerRouter Lifetime
예비이며, 현재 IPv6 워킹 그룹에 선호도 정보를 포함하기 위해 확장 중에 있음
5-bitReserved
라우터가 HA(Home agent)역할을 수행1-bit flagH
주소 이외의 정보를 획득하기 위해 상태 보존형 방식 사용1-bit flagO
상태 보존형 자동 주소 설정 방식의 사용 지시1-bit flagM
전송 패킷에 사용될수 있는 디폴트 hop limit 값8-bit unsigned integerCur Hop Limit
수신 노드는 무시0Code
RA 메시지의 유형134Type
ICMPv6 fields
KRnet 2002 24
Neighbor solicitation - 1
목적 목표(Target) 주소에 자신의 링크 계층 주소를 제공하면서 동시에
Target 노드의 링크 계층 주소를 요청 하기 위함
활용: DAD(duplicated address detection)
Address resolution
Neighbor Unreachability detection
전송 방식 Multicast: DAD 과정 address resolution이 목적일 때 Unicast: 이웃 노드의 도달 가능성을 체크 하고자 할 때(NUD 과정)
KRnet 2002 25
Neighbor solicitation - 3
Message Format ICMP field
Type = 135 Code Checksum
8 bits 8 bits 8 bits
Options …
Reserved
Target Address
Type = 135 Code Checksum
8 bits 8 bits 8 bits
Options …Options …
Reserved
Target Address
OptionSource Link-layer address: 송신측의 링크 계층 주소
Source 주수가 unspecified address 일때 즉, DAD 과정 일 경우 이 옵션은포함되지 말아야 함(MUST NOT)그 외의 경우
multicast solicitation 경우 옵션 포함(MUST) <- address resolution 과정 unicast solicitation 경우 옵션 포함(SHOULD) <- NUD 과정
Target address요청하는 target의 IP 주소(단 multicast 주소는 안됨)
KRnet 2002 26
Neighbor solicitation - 2
NUD 과정IPv6 address
DAD 과정Solicited-node Multicast
ARP 과정Solicited-node Multicast
Destination address
NUD 과정Link-local IPv6 address
DAD 과정Unspecified address
IPV6 주소 해석 (ARP)과정IPv6 address
Source address
IPv6 Basic Header
NUD 과정IPv6 address
DAD 과정Solicited-node Multicast
ARP 과정Solicited-node Multicast
Destination address
NUD 과정Link-local IPv6 address
DAD 과정Unspecified address
IPV6 주소 해석 (ARP)과정IPv6 address
Source address
IPv6 Basic Header
DAD 과정에서는 포함되지 않음Not exist
송신자의 링크계층 주소Source link-layer addressValid Options
NUD 과정(IPv6 기본 헤더 목적 주소에 포함된 것과동일)
IPv6 address
ARP 과정과 DAD과정Target IPv6 address
Target Address
수신 노드는 무시0Code
NS 메시지의 유형135Type
ICMPv6 fields
송신자와 수신자간에 보호연계가 존재하는 경우YesAuthentication Header
IPv6 Extension Headers
디폴트 값255Hop Limit
DAD 과정에서는 포함되지 않음Not exist
송신자의 링크계층 주소Source link-layer addressValid Options
NUD 과정(IPv6 기본 헤더 목적 주소에 포함된 것과동일)
IPv6 address
ARP 과정과 DAD과정Target IPv6 address
Target Address
수신 노드는 무시0Code
NS 메시지의 유형135Type
ICMPv6 fields
송신자와 수신자간에 보호연계가 존재하는 경우YesAuthentication Header
IPv6 Extension Headers
디폴트 값255Hop Limit
KRnet 2002 27
Neighbor advertisement - 1
목적 Neighbor Solicitation messages의 응답으로서 NA 메시지 전송
활용: DAD(duplicated address detection)
Address resolution
Neighbor Unreachability detection
Unsolicited Neighbor advertisements
KRnet 2002 28
Neighbor advertisement - 2
Message format
Type = 136 Code Checksum
8 bits 8 bits 8 bits
Options …
Reserved
Target Address
R S O
Type = 136 Code Checksum
8 bits 8 bits 8 bits
Options …Options …
Reserved
Target Address
R S O
Target link-layer address
1. 요청 메시지(NS message)의target address
2. 변동된 link-local 주소
R (Router flag)
S (Solicited flag)
O (override flag)
KRnet 2002 29
Neighbor advertisement - 3
유니캐스트 NS 메시지의 경우는 생략가능Not exist
목표노드의 링크계층 주소(멀티캐스트 된 NS메시지)Target link-layer addressValid Options
Unsolicited NA 과정(멀티캐스트주소는 사용 안됨)Changed IPv6 address
주소 해석, DAD 및 NUD 과정 (NS에 포함된 정보)IPv6 addressTarget Address
기존의 캐쉬 엔트리를 갱신1-bitO
Unsolicited NA 과정0
NUD 과정 (NS에 대한 응답 메시지임을 지시)1S
NUD 과정에서 사용되며 라우터임을 지시1R
수신 노드는 무시0Code
NA 메시지의 유형136Type
ICMPv6 fields
송신자와 수신자간에 보호연계가 존재하는 경우YesAuthentication Header
IPv6 Extension Headers
디폴트 값255Hop Limit
DAD 및 Unsolicited NA 과정All-nodes multicast
ARP 및 NUD 과정 (NS의 송신 주소)IPv6 addressDestination address
ARP, DAD, NUD 및 Unsolicited NA 과정
IPv6 addressSource address
IPv6 Basic Header
유니캐스트 NS 메시지의 경우는 생략가능Not exist
목표노드의 링크계층 주소(멀티캐스트 된 NS메시지)Target link-layer addressValid Options
Unsolicited NA 과정(멀티캐스트주소는 사용 안됨)Changed IPv6 address
주소 해석, DAD 및 NUD 과정 (NS에 포함된 정보)IPv6 addressTarget Address
기존의 캐쉬 엔트리를 갱신1-bitO
Unsolicited NA 과정0
NUD 과정 (NS에 대한 응답 메시지임을 지시)1S
NUD 과정에서 사용되며 라우터임을 지시1R
수신 노드는 무시0Code
NA 메시지의 유형136Type
ICMPv6 fields
송신자와 수신자간에 보호연계가 존재하는 경우YesAuthentication Header
IPv6 Extension Headers
디폴트 값255Hop Limit
DAD 및 Unsolicited NA 과정All-nodes multicast
ARP 및 NUD 과정 (NS의 송신 주소)IPv6 addressDestination address
ARP, DAD, NUD 및 Unsolicited NA 과정
IPv6 addressSource address
IPv6 Basic Header
KRnet 2002 30
Redirect - 1
목적 현재 소스에서 목적지 주소까지 가는 경로 중 지금의 라우터를 통해서 가
는 경로 보다, 빠른 라우터를 알려 주는 기능을 수행(첫번째 연결하는 라우터에 한함)
목적지 주소가 같은 링크 내에 존재할 때 라우터를 거치지 않고 직접적으
로 전송할 수 있도록 이를 알리는 기능 수행
메시지 구성
IP fields
Source address: 메시지를 보내는 인터페이스 즉 라우터의 link-local address를 전송함.
Destination address: Packets를 보내는 source address.
ICMP field
Next slide
KRnet 2002 31
Redirect - 2
8 bits 8 bits
Type = 137 Code Checksum
8 bits
Options …
Reserved
Destination Address
Target Address
8 bits 8 bits
Type = 137 Code ChecksumType = 137 Code Checksum
8 bits
Options …Options …
Reserved
Destination AddressDestination Address
Target AddressTarget Address
본래의목적지주소
1. Better first hop or
2. ICMP destination address
Redirect message를전송할때최대한많은 IP packet
를소스노드에돌려보낸다. ( <= 1280 octets)
2. Redirected Header
Target의링크계층주소(If known):
Better first-hop node의링크계층주소
목적지주소의링크계층주소(같은링크에존재할때)
1. Target Link-layer address
Redirect message를전송할때최대한많은 IP packet
를소스노드에돌려보낸다. ( <= 1280 octets)
2. Redirected Header
Target의링크계층주소(If known):
Better first-hop node의링크계층주소
목적지주소의링크계층주소(같은링크에존재할때)
1. Target Link-layer address
KRnet 2002 32
Redirect - 3
On-link 또는 자동주소설정에 사용한 프리픽스 정보Redirect header
송신자의 링크계층 주소Target link-layer addressValid Options
Redirect를 야기한 패킷의 목적 주소에 포함된 주소IPv6 addressDestination address
ICMPv6 목적주소에 대한 더 좋은 첫 번째 홉 주소IPv6 addressTarget Address
수신 노드는 무시0Code
Redirect 메시지의 유형137Type
ICMPv6 fields
송신자와 수신자간에 SA가 존재하는 경우YesAutheniticationHeader
IPv6 Extension Header
디폴트값255Hop Limit
Redirect를 유발시킨 패킷의 송신 주소IP addressDestination address
송신 인터페이스에 할당된 링크-로컬 유니캐스트 주소FE80::xxxxSource address
IPv6 Basic header
On-link 또는 자동주소설정에 사용한 프리픽스 정보Redirect header
송신자의 링크계층 주소Target link-layer addressValid Options
Redirect를 야기한 패킷의 목적 주소에 포함된 주소IPv6 addressDestination address
ICMPv6 목적주소에 대한 더 좋은 첫 번째 홉 주소IPv6 addressTarget Address
수신 노드는 무시0Code
Redirect 메시지의 유형137Type
ICMPv6 fields
송신자와 수신자간에 SA가 존재하는 경우YesAutheniticationHeader
IPv6 Extension Header
디폴트값255Hop Limit
Redirect를 유발시킨 패킷의 송신 주소IP addressDestination address
송신 인터페이스에 할당된 링크-로컬 유니캐스트 주소FE80::xxxxSource address
IPv6 Basic header
KRnet 2002 33
Option Format
Option formats
Neighbor Discovery message include zero and more options
All options are of the form: TLV format
1
2
3
4
5
Source Link-Layer Address
Target Link_Layer Address
Prefix Information
Redirected Header
MTU
….
TypeOption name
1
2
3
4
5
Source Link-Layer Address
Target Link_Layer Address
Prefix Information
Redirected Header
MTU
….
TypeOption name
KRnet 2002 34
Option format – src/dst
Source/Target Link-layer Address
Type 1: Source Link-layer address
2: Target Link-layer address
Length 유형(type)와 length 영역을 포함한 전체 옵션 길이
Link layer address 가변 길이의 링크 계층 주소
Description Source Link–layer address
패킷을 보내는 송신자의 링크 계층 주소를 포함함.
NS 메시지, RA 메시지, RS메시지에 사용됨
Target Link-layer address
Target의 링크 계층 주소를 포함함
NA 메시지, Redirect 패킷에 사용됨
Type = 1 or 2Type = 1 or 2 LengthLength Link-layer AddressLink-layer Address ……Type = 1 or 2Type = 1 or 2 LengthLength Link-layer AddressLink-layer Address ……
KRnet 2002 35
Option format – prefix info
Prefix Information
Type = 3Type = 3
LengthLength
Prefix LengthPrefix Length
LL
AA
RR
Reserv1Reserv1
Valid LifetimeValid Lifetime
Preferred LifetimePreferred Lifetime
Reserved2Reserved2
PrefixPrefix
Type = 3Type = 3
LengthLength
Prefix LengthPrefix Length
LL
AA
RR
Reserv1Reserv1
Type = 3Type = 3
LengthLength
Prefix LengthPrefix Length
LL
AA
RR
Reserv1Reserv1
Valid LifetimeValid Lifetime
Preferred LifetimePreferred Lifetime
Reserved2Reserved2
PrefixPrefix
Valid Lifetime
Prefix가 유효한 시간 길이를 나타낸다. 즉, 이 시간이 경과하면 invalid상태가 되고 더 이상 유효한prefix 정보로서 역할을 못함.
32bit 모두 1인 경우, valid lifetime이 무한대임을뜻한다.
Preferred Lifetime
Prefix 정보가 Preferred lifetime 상태를 유지하는 시간, 시간이 경과하면, deprecated address 상태로 전환됨
L: 1bit on-link 플래그
L=1: 이 프리픽스의 on-link 결정(determination)에사용
L=0: 이 프리픽스에 대한 on-link 또는 off-link 특성에 대해 언급하지 않음
A: 1bit autonomous address-configuration flag
설정되어 있을 경우, ADDRCONF의 설명한 대로, 독립적인 자동 주소 설정에 이 프리픽스를 사용 가능
R: Router Address flag
Prefix 영역에 라우터 자신의 주소를 포함하고 있음을 지시함 (Mobile IPv6)
Prefix value
KRnet 2002 36
Redirected Header
설명
Redirect message에 쓰이며, 리다이렉트 되는 패킷을 전부 또는 일부를 포함한다
ICMP 메시지를 전송할 때 보내지는 IP header 과 data
Option format - redirected
Type = 4Type = 4
LengthLength
ReservedReserved
ReservedReserved
IP Header + dataIP Header + data
Type = 4Type = 4
LengthLength
ReservedReserved
ReservedReserved
IP Header + dataIP Header + data
IP header + data: redirect message가 1280 octets를 넘지 않도록 하기 위해 길이를 줄인 원래 패킷
KRnet 2002 37
Option format - MTU
MTU
MTU: 링크를 위해 요청된 MTU
설명
link MTU를 잘 모르는 경우, 링크의 모든 노드가 같은 MTU를 사용할 수 있도록 하기 위해 RA메시지에 사용됨.
Type = 5Type = 5
LengthLength
ReservedReserved
MTUMTU
Type = 5Type = 5
LengthLength
ReservedReserved
MTUMTU
KRnet 2002 38
Option format – Route Inform
Default Router Preferences and More-Specific Routes in RAs
Richard Draves
draft-ietf-ipngwg-router-selection-00
Type = xxxType = xxx
LengthLength
Prefix LengthPrefix Length
ResvdResvd Prf Resvd
Resvd
Route LifetimeRoute Lifetime
PrefixPrefix
Type = xxxType = xxx
LengthLength
Prefix LengthPrefix Length
ResvdResvd Prf Resvd
Resvd
Route LifetimeRoute Lifetime
PrefixPrefix
KRnet 2002 39
Option format – PD option
IPv6 Router Advertisement Prefix Delegation Option Nathan Lutchansky
draft-lutchann-ipv6-delegate-option-00.txt
Type = xxxType = xxx
LengthLength
Prefix LengthPrefix Length
Reserved1Reserved1
Valid LifetimeValid Lifetime
Preferred LifetimePreferred Lifetime
Reserved2Reserved2
PrefixPrefix
Type = xxxType = xxx
LengthLength
Prefix LengthPrefix Length
Reserved1Reserved1
Valid LifetimeValid Lifetime
Preferred LifetimePreferred Lifetime
Reserved2Reserved2
PrefixPrefix
KRnet 2002 40
프로토콜 기능
Autoconfiguration Link-local 주소 획득: DAD 수행 필요
Site-local and Global 주소 획득: RS/RA 메시지, (DAD 수행??)
Router and Prefix Discovery: RS/RA 메시지, NUD Procedure
Renumbering (RFC 2894)
Host/Site Renumbering
Router Renumbering
Address Resolution NS/NA 메시지
Link Address IPv6 주소: draft-ietf-ion-ipv6-ind-04.txt
Neighbor Unreachability Detection (NUD) NS/NA 메시지
Route Redirection
KRnet 2002 41
Autoconfiguration 개요
목적 자동 주소 설정 및 주소 재지정 (Renumbering) 기능 수행
종류 Stateful Mechanism
Stateless Mechanism
IPv6 Stateless Address Autoconfiguration (RFC2486)
KRnet 2002 42
Autoconfiguration 종류
Stateful Mechanism DHCP 서버로부터 주소를 비롯한 모든 네트워크 정보 또는 일부를
받음
DHCP를 부터 할당받은 주소들은 ‘Uniqueness’를 검증받아야 함 (DAD 과정이 반드시 요구됨)
Stateless Mechanism Router로 부터 주소를 비롯한 모든 네트워크 정보를 받을 수도 있
고, 또는 Router로 부터 일부 주소 정보(ex. Prefix)만 받고 나머지 네트워크 정보들은 DHCP 서버로부터 받을 수도 있음
종류: Linux-local IPv6 주소 설정 (DAD 필요)
Global and Site-local 주소 설정 (DAD 불필요)
KRnet 2002 43
주소 상태천이도
Link-Local 주소 생성과정에서의 주소상태 천이도 예시
Invalid
Tentative
Preferred
Deprecated
새로운 세션을 설정할 수 없는주소
Valid
Link-local 주소 자동생성 생성및 DAD 과정 시작
RA 메시지에 Prefix Option에 포함된Preferred Lifetime 값에 따라 결정
DAD Success (주소 중복 없음)
Preferred Lifetime Expired
Valid Lifetime Expired
Valid Lifetime Preferred Lifetime
KRnet 2002 44
Autoconfiguration 절차 – 1/9
Link-local 주소 획득 Link-local 주소 생성 Tentative address
DAD (Duplicate Address Detection) 과정
Link-local all-nodes multicast 주소(FF02::1)와 solicited-node multicast 주소(FF01::1:FFxx:xxxx)에 가입
Neighbor Solicitation 송신 Neighbor Advertisement 수신 (If duplicate)
Stateful autoconfiguration ??
Booting time: Host Link-local all-nodes multicast address Link-local solicited-node multicast address
FE80::0/10 Interface ID+Tentative Address = FE80::0/10 Interface ID+Tentative Address =
KRnet 2002 45
Autoconfiguration 절차 – 2/9
DAD Procedure (FE80::/10 Link-local 주소 생성 예)
Case 1 (성공적인 Link-local 주소 획득)1.src – :: (unspecified address) 2. No Resonse1.dst – ff02::1:ffdd:eeff (solicited-node multicast address)1.Target – fe80::aabb:ccff:fedd:eeff (EUI-64 형식)1.Option – No
Case 2 (같은 주소가 발견되어 주소 획득에 실패)1.src – :: 2.src – fe80::aabb:ccff:fedd:eeff1.dst – ff02::1:ffdd:eeff 2.dst – ff02::1 (Link-local All-node multicast address)1.Target – fe80::aabb:ccff:fedd:eeff 2.Target – fe80::aabb:ccff:fedd:eeff 1.Option – No 2.Target Link-layer Address – aa:bb:cc:dd:ee:ff
3. Stateful Auto-configuration
KRnet 2002 46
Autoconfiguration 절차 – 3/9
Global and Site-local 주소 획득 호스트: Router Solicitation 메시지 전송
라우터: Router Advertisement 메시지 전송
Router sends RA message as a response of the RS message
Or Router sends RA periodically or on-demand
호스트: Prefix 획득
DAD 절차
수행하지 않음(??)
KRnet 2002 47
Autoconfiguration 절차 – 4/9
Global and Site-local 주소 자동 설정 (호스트 라우터) RS 메시지 전송
자신의링크계층주소를보냄Source link layer address
: 00-90-27-17-FC-0F
Option
All-router multicast addressFF02::2Destination address
Sender’s Link-local AddressFE80::0290:27FF:FE17:FC0FSource address
Router Solicitation: 라우터는 누구니? 정보가 필요해!
자신의링크계층주소를보냄Source link layer address
: 00-90-27-17-FC-0F
Option
All-router multicast addressFF02::2Destination address
Sender’s Link-local AddressFE80::0290:27FF:FE17:FC0FSource address
Router Solicitation: 라우터는 누구니? 정보가 필요해!
KRnet 2002 48
Autoconfiguration 절차 – 5/9
Global and Site-local 주소 자동 설정(cont’) (라우터 호스트 ) RA 메시지 전송
도달가능하다인식하는시간(초단위)3600Reachable Time
라우터로서의역할가능시간(초단위)10000Router Lifetime
Prefix 정보
Link MTU 값1280
3FFE:2000::/64
자신의링크계층주소를보냄AA-BB-CC-DD-EE-FFOption
All-node multicast addressFF02::1Destination addr
Router의 link-local addressFE80::AABB:CCFF:FEDD:EEFFSource address
Router advertisement: 나야 나! 내게는 이런 정보가 있다!
도달가능하다인식하는시간(초단위)3600Reachable Time
라우터로서의역할가능시간(초단위)10000Router Lifetime
Prefix 정보
Link MTU 값1280
3FFE:2000::/64
자신의링크계층주소를보냄AA-BB-CC-DD-EE-FFOption
All-node multicast addressFF02::1Destination addr
Router의 link-local addressFE80::AABB:CCFF:FEDD:EEFFSource address
Router advertisement: 나야 나! 내게는 이런 정보가 있다!
KRnet 2002 49
Autoconfiguration 절차 – 6/9
Host/Site Renumbering
New prefixes and addresses are introduced and old ones are deprecated and removed.
KRnet 2002 50
Autoconfiguration 절차 – 7/9
Router Renumbering (RFC 2894) To allow address prefixes on routers to be configured and
reconfigured using NDP and Autoconfiguration 하나의 사이트 내에서 네트워크 관리자에게 라우터의 prefix 정보들
을 갱신할 수 있도록 해주는 수단이 될 수 있음
새로운 ICMPv6 메시지 형식 정의 (=138)
Prefix Delegation Protocol A mechanism for the automated delegation of an IPv6 network
prefix
Based on link-layer multicast. So Not for NBMA links
절차 라우터가 특정한 크기의 prefix를 요청할 수 있도록 하고
라우터가 상위 라우터에게 자신이 지원할 수 있는 라우팅 프로토콜을 알려줌
Delegating 라우터는 prefix request 메시지에 대해 인증 검사를 한 후에 prefix, desired routing protocol, prefix lifetime 등을 알려줌
KRnet 2002 51
Autoconfiguration 절차 – 8/9
DAD 수행이 요구되는 주소들
Ref No.
Host/Router Address
Type Address
Configuration Address Scope DAD
1
Host’s and router’s address
Unicast
Stateless Link-local MUST
2 Manual Link-local
Global site-local MUST
3 Anycast - - MUST NOT
4 Multicast - - MUST NOT
5 Host’s address Unicast
Stateless Global site-local SHOULD
(MAY)
6 Stateful Global site-local MUST
KRnet 2002 52
Autoconfiguration 절차 – 9/9
Nodes are separated into two categories host, router
In FreeBSD, net.inet6.ip6.forwarding=1 (router)
A host may autoconfigure itself by stateless address autoconfiguration In FreeBSD, net.inet6.ip6.accept_rtadv=1 (accept)
rtsold (host), rtadvd (router)
Is DAD required ? DupAddrDetectTransmits=1(default)
Time interval ? RetransTimer=1,000msec(default)
Etc parameters ManagedFlag, OtherConfigFlag, StoredLifetime
KRnet 2002 53
Address Resolution – 1/2
IPv4의 ARP 기능과 동일
자신의링크계층주소를보
냄00-80-C7-5F-9F-3DSource link layer
address
링크주소를알고자하는목적지주소
3FFE:2XXX:0:0:0:80:C774:DDBCTarget
Solicited node multicast address(target node의..)
FF02:0:0:0:0:1:FF74:DDBCDestination address
Link-local 주소3FFE:2XXX:0:0:0280:C7FF:FE5F:9F3DSource address
Neighbor Solincitation: 이 IP 주인의 Link-layer address가 모야?
자신의링크계층주소를보
냄00-80-C7-5F-9F-3DSource link layer
address
링크주소를알고자하는목적지주소
3FFE:2XXX:0:0:0:80:C774:DDBCTarget
Solicited node multicast address(target node의..)
FF02:0:0:0:0:1:FF74:DDBCDestination address
Link-local 주소3FFE:2XXX:0:0:0280:C7FF:FE5F:9F3DSource address
Neighbor Solincitation: 이 IP 주인의 Link-layer address가 모야?
KRnet 2002 54
Address Resolution – 2/2
자신의링크계층주소를
보냄00-80-C7-74-DD-BCTarget link layer
address
자신의주소를보냄(NS 메시지에서복사함)
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCTarget
3FFE:2XXX:0:0:0280:C7FF:FE5F:9F3DDestination address
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCSource address
Neighbor advertisement: 내 Link-layer address는 이거야!
자신의링크계층주소를
보냄00-80-C7-74-DD-BCTarget link layer
address
자신의주소를보냄(NS 메시지에서복사함)
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCTarget
3FFE:2XXX:0:0:0280:C7FF:FE5F:9F3DDestination address
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCSource address
Neighbor advertisement: 내 Link-layer address는 이거야!
KRnet 2002 55
Unreachability Detection – 1/6
NUD 개요 Node Unreachability 원인
Hardware failure, lack of power, network problem
접근 불가
해당 노드에 문제인 경우 해결 불가, 그 외의 경우에는 다른 경로가 존재 할 수 있음
alternative path
항상 NUD procedure를 사용하여 neighbor에 대한 도달 가능성을 체크 함
NUD 체크 대상
KRnet 2002 56
Unreachability Detection – 2/6
Reachability confirmation
사용 message: NS message, NA message
도달 가능성 체크 방법
1. 상위 계층을 통하여 정보를 얻음 forward progress”(ex, TCP- 전송 메시지에 대한 ACK 수령)
2. NA 메시지를 통하여 정보를 획득
NA 메시지 수신
Solicited flag=1(NS 메시지에 대한 응답임을 나타냄)
Reachability confirmation 즉 송신한 메시지에 대한 응답을 나타내므로 양방향성이 보장되는 것이다.
Solicited flag=0인 NA 메시지 수신(또는 RA 메시지 수신)
수신측에서 볼 때 송신측에서 자신에 오는 경로가 있음을 확인할 수 있으나, 가는 경로는 불분명, Reachability은 forward 경로를 중요시 함으로 도달 가능하다고 할 수 없다.
KRnet 2002 57
Unreachability Detection – 3/6
Reachability confirmation(계속)
<Reachability confirmation> 1.NS 메시지 수신
• Solicited flag =1인 NA 메시지를 받은 경우 -> 양방향 통신 가능, 즉, forward path 존재 • Solicited flag = 0 인 NA 메시지를 받은 경우 -> 노드 A에서 B로 오는 경로는 존재, B에서 A가는 경로는?
2. RA 메시지 수신 -> 노드 A에서 B로 오는 경로는 존재, B에서 A가는 경로는?
KRnet 2002 58
Unreachability Detection – 4/6
Neighbor Unreachability Detection
Neighbor Solicitation /Advertisement
자신의링크계층주소를보냄 (호스트 C)
00-80-C7-5F-9F-3DSource link layer address (option)
S flag is setS, R Flags
접근가능성을검증하고자하는호스트의주소 (A)
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCTarget
호스트 A3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCDestination address
3FFE:2XXX:0:0:0280:C7FF:FE5F:9F3DSource address
Neighbor Solincitation: 이 IP 주인아 살아있냐?
자신의링크계층주소를보냄 (호스트 C)
00-80-C7-5F-9F-3DSource link layer address (option)
S flag is setS, R Flags
접근가능성을검증하고자하는호스트의주소 (A)
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCTarget
호스트 A3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCDestination address
3FFE:2XXX:0:0:0280:C7FF:FE5F:9F3DSource address
Neighbor Solincitation: 이 IP 주인아 살아있냐?
KRnet 2002 59
Unreachability Detection – 5/6
자신의링크계층주소를
보냄00-80-C7-74-DD-BCTarget link layer
address
Bi-directional Reachability
S flag is setS, F flags
자신의주소를보냄(NS 메시지에서복사함)
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCTarget
3FFE:2XXX:0:0:0280:C7FF:FE5F:9F3DDestination address
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCSource address
Neighbor advertisement: 내 Link-layer address는 이거야!
자신의링크계층주소를
보냄00-80-C7-74-DD-BCTarget link layer
address
Bi-directional Reachability
S flag is setS, F flags
자신의주소를보냄(NS 메시지에서복사함)
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCTarget
3FFE:2XXX:0:0:0280:C7FF:FE5F:9F3DDestination address
3FFE:2XXX:0:0:0280:C7FF:FE74:DDBCSource address
Neighbor advertisement: 내 Link-layer address는 이거야!
KRnet 2002 60
Unreachability Detection – 6/6
Neighbor cache 상태
Incomplete
Create the entry
Reachable
Stale
Delay
Probe
Address resolution을 처리중인단계 처리단계
마지막 positive confirmation을수신한 후 ReachalbleTime이 경과한 후의 상태
Delay_FIRST_PROBE_TIME 시간 내에packets를 보낸 상태
Delay 과정에서Delay_FIRST_PROBE_TIME 시간내에 Reachability confirmation를못 받은 경우 PROBE 상태
NA (S bit 설정) 수신
Positive confirmation 수신 후 상태
- NUD Procedure 시작단계
- NA 수신 실패 시 Entry 삭제
도달 가능성
확인
KRnet 2002 61
Route Redirection – 1/2
When a packet must be transmitted to an off-link destination, Choosing the router through which the packet will be routed ….
To represent a better next-hop toward a specific destination
KRnet 2002 62
Route Redirection – 1/2
When a packet must be transmitted to an off-link destination, Choosing the router through which the packet will be routed ….
To represent a better next-hop toward a specific destination
ICMP Redirect Message IP.src: Router A’s IPv6 주소 IP.dst: Host A’s IPv6 주소 Target: Router B’s IPv6 주소 Dst: Host C의 IPv6 주소 Target’s Link Address: Router B’s Link ID
KRnet 2002 63
Route Redirection – 2/2
Redirection 절차 1. Host A – Choose a router from Default router list randomly
2. Host A – packet transmission to Host C via Router A
3. Router A – packet forwarding to Router B
4. Router B – packet delivery to Host C
5. Router A – Redirect message transmission to Host A
6. Host A – packet transmission to Host C via a Router B for all next packets
KRnet 2002 64
Packet Transmission – 1/4
Caches: arrays of records/entries Neighbor Cache
최근 패킷을 전송했던 neighbor의 entry들 (on-link only)
Each Entry: On-link unicast IPv6 주소, 연관된 링크계층 주소, 플래그(neighbor가 라우터인지를 지시), 전송될 패킷들에 대한 포인터, NUD를 위한 상태정보
Destination Cache 최근 패킷을 전송했던 destination의 entry들 (on-link or off-link)
Each Entry: unicast IPv6 주소, Next-Hop를 지시하기 위한 Neighbor Cache의 포인터, Path MTU 값
Redirect 메시지에 의해 Update
Prefix List on-link prefix 마다 하나의 entry
IPv6 주소가 on-link/off-link 인지를 구별, RA 메시지에 의해 생성
Each Entry: prefix, validity
Default Router List Default 라우터로 사용될 수 있는 라우터들의 목록
Each Entry: Neighbor Cache의 포인터, 상태정보
KRnet 2002 65
Packet Transmission – 2/4
Host A 상의 Cache 예시
R1.IPv6 R1.Eth, 1, Reachable, R2.IPv6 R2.Eth, 1, Reachable,
C.IPv6 C.Eth, 0, Reachable,
C.IPv6H.IPv6L.IPv6D.IPv6
Destination Cache
Neighbor Cache
Default Router List
Prefix List
FE80::/80FEC0:0:0:0:0:3::/804800:600:0:C00:3::/80
Packets to send
KRnet 2002 66
Packet Transmission – 3/4
Transmission Algorithm of a Packet (1) 1. Host A는 Host H에게 packet을 전송하고자 한다. 2. Destination Cache를 조사
연관된 라우터의 링크 주소를 획득하면, 전송 연관된 정보 없으면, 다음과정(Next-Hop Determination) 수행
3. Next-Hop Determination Algorithm for Unicast 3.1 A longest prefix match by using prefixes stored in the Prefix List
Match: Destination = on-link state No-Match: Destination = off-link state Destination이 멀티캐스트 주소이면, 항상 on-link로 간주함
3.2 On-Link State Next-Hop Address Destination Address (H의 주소)
3.3 Off-link State 송신자는 Default Router List에서 임의로 라우터 선택 Default Router List가 Empty이면, Destination은 On-link로 간주함
3.4 Destination Cache에 관련 정보 저장
KRnet 2002 67
Packet Transmission – 4/4
Transmission Algorithm of a Packet (2) 4. Examine Neighbor Cache
To determine the link Layer information, mainly the link layer address (Multicast의 경우는 링크 특성에 의존한다)
4.1 Neighbor Cache에 Entry가 존재하지 않는 경우
새로운 entry 생성(State = incomplete)
Address Resolution Procedure 시작하고 전송할 패킷들을 큐잉하기 시작함
획득된 Link-layer 주소를 Neighbor Cache에 저장 (State = Reachable)
큐잉된 패킷 전송
4.2 Neighbor Cache에 entry가 존재하는 경우
Unicast 주소에 대한 NUD Procedure 시작
Unreachable 인 경우, 절차 3으로 (Next-Hop Determination)
KRnet 2002 68
Protocol Constants – 1/3
Router constants:
.5 secondsMAX_RA_DELAY_TIME
3 secondsMIN_DELAY_BETWEEN_RAS
3 transmissionsMAX_FINAL_RTR_ADVERTISEMENTS
3 transmissionsMAX_INITIAL_RTR_ADVERTISEMENTS
16 secondsMAX_INITIAL_RTR_ADVERT_INTERVAL
.5 secondsMAX_RA_DELAY_TIME
3 secondsMIN_DELAY_BETWEEN_RAS
3 transmissionsMAX_FINAL_RTR_ADVERTISEMENTS
3 transmissionsMAX_INITIAL_RTR_ADVERTISEMENTS
16 secondsMAX_INITIAL_RTR_ADVERT_INTERVAL
KRnet 2002 69
Protocol Constants – 2/3
Host constants:
3 transmissionsMAX_RTR_SOLICITATIONS
4 secondsRTR_SOLICITATION_INTERVAL
1 secondsMAX_RTR_SOLICITATION_DELAY
3 transmissionsMAX_RTR_SOLICITATIONS
4 secondsRTR_SOLICITATION_INTERVAL
1 secondsMAX_RTR_SOLICITATION_DELAY
KRnet 2002 70
Protocol Constants – 3/3
Node constants:
1.5MAX_RANDOM_FACTOR
.5MIN_RANDOM_FACTOR
5 secondsDELAY_FIRST_PROBE_TIME
1,000 millisecondsRETRANS_TIMER
30,000 millisecondsREACHABLE_TIME
3 transmissionsMAX_NEIGHBOR_ADVERTISEMENT
1 secondsMAX_ANYCAST_DELAY_TIME
3 transmissionsMAX_UNICAST_SOLICIT
3 transmissionsMAX_MULTICAST_SOLICIT
1.5MAX_RANDOM_FACTOR
.5MIN_RANDOM_FACTOR
5 secondsDELAY_FIRST_PROBE_TIME
1,000 millisecondsRETRANS_TIMER
30,000 millisecondsREACHABLE_TIME
3 transmissionsMAX_NEIGHBOR_ADVERTISEMENT
1 secondsMAX_ANYCAST_DELAY_TIME
3 transmissionsMAX_UNICAST_SOLICIT
3 transmissionsMAX_MULTICAST_SOLICIT
KRnet 2002 71
Automatic Prefix Delegation
Protocol for IPv6
(draft-haberman-ipngwg-auto-prefix-02.txt)
KRnet 2002 72
Objective
The expansion of the IP address space by IPv6
기존의 서브넷
Private address 사용
서브넷 자동네트워킹
NDP & Stateless Autoconfiguration를 사용
서브넷과 상위 네트워크와의 자동네트워킹
추가적으로 Network Prefix가 필요
KRnet 2002 73
What’s PD protocol ?
Automatic Prefix Delegation (PD) Protocol
A mechanism for the automated delegation of an IPv6 network prefix
라우터가 특정한 크기의 prefix를 요청할 수 있도록 하고
라우터가 상위 라우터에게 자신이 지원할 수 있는 라우팅 프로토콜을 알려줌
Delegating 라우터는 prefix request 메시지에 대해 인증 검사를 한 후에, Prefix, desired routing protocol, prefix lifetime 등을 알려줌
Based on link-layer multicast.
So Not for NBMA links
KRnet 2002 74
Terminology
Terminology
Requesting Router, Requestor
The router that is requesting that a prefix be assigned
Delegating Router, Delegator
The router that is responding to the prefix request
Global Address
A unicast address having global scope
KRnet 2002 75
Work Scope
For a singly homed leaf router within a subnet
Assuming that the delegating router shares a network connection with the requesting router
In the future revisions, a more generic approach will be developed and those restrictions will be removed
Support a more generic approach to dynamic prefix delegation
Allow for either Multi-hop messages or a relay function
KRnet 2002 76
Functions of PD
Two new ICMPv6 messages
Prefix Request for a delegation request
Delegator Query (0), Initial Request (1), Renewal Request (2), and Prefix Return (3)
Prefix Delegation for a delegation response and error info.
Prefix Delegator (0), Authentication Required (1), Authorization Failed (2), Prefix Unavailable (3), Prefix Delegated (4), and Prefix Returned (5)
Six Functions
Delegator Query (Requestor)
Initial Request (Requestor)
Authentication and Authorization (Delegator)
Prefix Delegation (Delegator)
Prefix Refresh (Requestor)
Prefix Return (Requestor)
KRnet 2002 77
Messages Formats - 1
General Format
Follow the ICMPv6 Format
Require AH Header
TypeType
CodeCode
ChecksumChecksum
UnusedUnused
Message BodyMessage Body
TypeType
CodeCode
ChecksumChecksum
UnusedUnused
Message BodyMessage Body
KRnet 2002 78
Messages Formats - 2
Prefix Option
Used to relay prefix information
Type = 0x01 : identifies the presence of a subnet prefix
Length : the length of the prefix contained in the option
Prefix Lifetime : the lifetime of the prefix
IPv6 Prefix : used to carry a subnet prefix
Type = 1 Length Reserved
8 bits 8 bits 8 bits
Prefix Lifetime
Prefix
Type = 1 Length Reserved
8 bits 8 bits 8 bits
Prefix Lifetime
Prefix
KRnet 2002 79
Procedures for PD
Requesting Router R1
Delegatable Router R3Delegatable Router R2
Link
(1) Where is the delegating router ? (multicast)
(2) OK! I can
(3) Give me a Prefix and routing protocols
(4) This is the Prefix you want.or You aren’t authenticated user.
(5) I want to use this prefix continuously or to stop this prefix
v6 v6
Requesting Router R1
Delegatable Router R3Delegatable Router R2
Link
(1) Where is the delegating router ? (multicast)
(2) OK! I can
(3) Give me a Prefix and routing protocols
(4) This is the Prefix you want.or You aren’t authenticated user.
(5) I want to use this prefix continuously or to stop this prefix
v6v6 v6v6