"DHCPv6 communication"의 두 판 사이의 차이

(새 문서: DHCPv6 통신은 DHCPv4와 많은 유사점을 가지고 있지만 통신 주체에따라 메시지가 세분화되어 있습니다.<br> 특히 DHCPv6 클라이언트는 브로드캐...)
 
 
(같은 사용자의 중간 판 3개는 보이지 않습니다)
1번째 줄: 1번째 줄:
 
DHCPv6 통신은 DHCPv4와 많은 유사점을 가지고 있지만 통신 주체에따라 메시지가 세분화되어 있습니다.<br>
 
DHCPv6 통신은 DHCPv4와 많은 유사점을 가지고 있지만 통신 주체에따라 메시지가 세분화되어 있습니다.<br>
특히 DHCPv6 클라이언트는 브로드캐스트(Broadcast)가 아닌 멀티캐스트(Multicast)를 이용한 ICMPv6를 통해 주소를 요청/할당 받습니다.<br>
 
  
[[File:dhcp6_commu.jpg|400px|thumb|DHCPv6<br>Rick Graziani, IPv6 Fundamentals, ciscocompress, Figure 9-1, 2013]]
 
[[File:dhcp6_commu.jpg|400px|thumb|DHCPv6 Relay Agent Communication<br>Rick Graziani, IPv6 Fundamentals, ciscocompress, Figure 9-4, 2013]]
 
L4 프로토콜은 DHCPv4와 마찬가지로 UDP(User Datagram Protocol)을 이용하며 클라이언트와 서버는 각각 547, 546 포트를 사용합니다.<br>
 
Stateful와 stateless DHCPv6 통신에 대한 자세한 사항은 [[Stateful vs stateless DHCPv6|"Stateful vs stateless DHCPv6"]]을 참고하세요.<br>
 
 
DHCPv6 통신시 사용되는 메시지 종류는 다음과 같습니다.
 
 
{| class="wikitable"
 
{| class="wikitable"
|+ DHCPv6 Messages
 
|-
 
 
! DHCPv6 !! DHCPv4 !! 설명
 
! DHCPv6 !! DHCPv4 !! 설명
 
|-
 
|-
19번째 줄: 10번째 줄:
 
| Request || Request || 클라이언트가 Advertise를 수신 한 후 특정 서버에 주소를 요청 할 때 전송되는 메시지 입니다.
 
| Request || Request || 클라이언트가 Advertise를 수신 한 후 특정 서버에 주소를 요청 할 때 전송되는 메시지 입니다.
 
|-
 
|-
| Reply || Ack/Nak || 서버가 클라이언트에 전송하는 메시지로 request, solicit([[DHCPv6 Rapid commit option|Rapid commit option]]), information-request, confirm, release 또는 decline에 대한 응답입니다.
+
| Confirm || Request || DHCPv4의 INIT-REBOOT<ref>https://tools.ietf.org/html/rfc2131#page-34</ref>과 유사한 메시지로서 클라이언트가 자신에게 할당되었던 IPv6 주소가 여전히 유효한지를 확인 할 때 전송하는 메시지 입니다.
 +
|-
 +
| Renew || Request || 클리이언트가 할당된 IPv6 주소를 더 사용하고자 할 때 서버에 전송하는 메시지로서 기본시간/2에 발생합니다.<br>
 +
서버로부터 응답이 정상으로 수신되면 클라이언트의 [[DHCPV6 기본시간 및 유효시간|lifetime]]은 증가합니다.
 +
|-
 +
| Rebind || Request || 클리이언트가 할당된 IPv6 주소를 더 사용하고자 할 때 서버에 전송하는 메시지로서 Renew에 대한 응답을 수신되지 못하면 메시지로서 (0.875*기본시간)/2에 발생합니다.
 +
|-
 +
| Reply || Ack/Nak || 서버가 클라이언트에 전송하는 메시지로 request, solicit([[DHCPv6 Rapid commit option|Rapid commit option]]), information-request, confirm, release 또는 decline에 대한 응답입니다.<br>
 +
DHCPv4와 달리 DHCPv6는 release 및 decline에 대해서도 응답이 발생합니다.<br>
 +
또한 Reply 메시지와 같이 전송되는 Status Code<ref>https://tools.ietf.org/html/rfc8415#page-26</ref><ref>https://www.iana.org/assignments/dhcpv6-parameters/dhcpv6-parameters.xhtml</ref>에 따라 클라이언트는 성공인지 실패인지를 판단합니다.
 +
|-
 +
| Release || Release || 클라이언트가 할당 된 주소를 더 이상 사용하지 않는 경우 서버에 전송하는 메시지입니다.
 +
|-
 +
| Decline || Decline || 클라이언트가 할당 받은 IPv6 주소가 이미 사용중인 주소로 판단될 경우 서버에 전송하는 메시지이며 서버는 이 메시지를 받으면 응답하게 되고 클라이언트는 다른 주소를 요청 할 수 있습니다.
 +
|-
 +
| Reconfigure || - || 서버는 설정이 변경되거나 기타 목적으로 클라이언트에 이 메시지를 전송 할 수 있으며 클라이언트는 이 메시지를 수신하면 Renew 혹은 Information-Request를 전송해 변경된 정보를 수신 받을 수 있습니다.<br>
 +
그러나 일부 운영체제(Windows 10 등)에서 이 옵션에 대해서는 지원하지 않습니다.
 +
|-
 +
| Information-Request || Inform || 클라이언트가 IPv6 주소 이외에 DHCPv6 옵션을 갱신할때 전송하는 메시지 입니다.
 +
|-
 +
| Relay-Forw || - || relay-agent가 클라이언트로부터 발생한 DHCPv6 메지시를 서버에 전송할 때 사용하는 메시지입니다.
 +
|-
 +
| Relay-Repl || - || 서버가 Relay-Forw에 대한 응답으로 relay-agent에 전송하는 메시지 입니다.
 +
|-
 
|}
 
|}
  
https://www.cisco.com/c/en/us/support/docs/ip/ip-version-6-ipv6/213272-troubleshoot-ipv6-dynamic-address-assign.html
+
{| class="wikitable"
 +
| align="center" | [[File:dhcp6_commu.jpg|420px|DHCPv6<br>Rick Graziani, IPv6 Fundamentals, ciscocompress, Figure 9-1, 2013]]<br>DHCPv6 || align="center" |
 +
[[File:dhcp6_relay.jpg|420px|DHCPv6 Relay Agent Communication<br>Rick Graziani, IPv6 Fundamentals, ciscocompress, Figure 9-4, 2013]]<br>DHCPv6 Relay Agent Communication
 +
|-
 +
|}

2021년 4월 19일 (월) 09:17 기준 최신판

DHCPv6 통신은 DHCPv4와 많은 유사점을 가지고 있지만 통신 주체에따라 메시지가 세분화되어 있습니다.

DHCPv6 DHCPv4 설명
Solicit Discover 클라이언트가 서버를 찾기위해 전송하는 메시지이며 FF02::1:2(All-DHCP-Relay-Agents-and-Servers) 멀티캐스트 주소를 이용합니다.
Advertise Offer 서버가 DHCPv6 서비스를 할 수 있다고 Soclit에 대한 응답으로 클라이언트에 전송합니다.
Request Request 클라이언트가 Advertise를 수신 한 후 특정 서버에 주소를 요청 할 때 전송되는 메시지 입니다.
Confirm Request DHCPv4의 INIT-REBOOT[1]과 유사한 메시지로서 클라이언트가 자신에게 할당되었던 IPv6 주소가 여전히 유효한지를 확인 할 때 전송하는 메시지 입니다.
Renew Request 클리이언트가 할당된 IPv6 주소를 더 사용하고자 할 때 서버에 전송하는 메시지로서 기본시간/2에 발생합니다.

서버로부터 응답이 정상으로 수신되면 클라이언트의 lifetime은 증가합니다.

Rebind Request 클리이언트가 할당된 IPv6 주소를 더 사용하고자 할 때 서버에 전송하는 메시지로서 Renew에 대한 응답을 수신되지 못하면 메시지로서 (0.875*기본시간)/2에 발생합니다.
Reply Ack/Nak 서버가 클라이언트에 전송하는 메시지로 request, solicit(Rapid commit option), information-request, confirm, release 또는 decline에 대한 응답입니다.

DHCPv4와 달리 DHCPv6는 release 및 decline에 대해서도 응답이 발생합니다.
또한 Reply 메시지와 같이 전송되는 Status Code[2][3]에 따라 클라이언트는 성공인지 실패인지를 판단합니다.

Release Release 클라이언트가 할당 된 주소를 더 이상 사용하지 않는 경우 서버에 전송하는 메시지입니다.
Decline Decline 클라이언트가 할당 받은 IPv6 주소가 이미 사용중인 주소로 판단될 경우 서버에 전송하는 메시지이며 서버는 이 메시지를 받으면 응답하게 되고 클라이언트는 다른 주소를 요청 할 수 있습니다.
Reconfigure - 서버는 설정이 변경되거나 기타 목적으로 클라이언트에 이 메시지를 전송 할 수 있으며 클라이언트는 이 메시지를 수신하면 Renew 혹은 Information-Request를 전송해 변경된 정보를 수신 받을 수 있습니다.

그러나 일부 운영체제(Windows 10 등)에서 이 옵션에 대해서는 지원하지 않습니다.

Information-Request Inform 클라이언트가 IPv6 주소 이외에 DHCPv6 옵션을 갱신할때 전송하는 메시지 입니다.
Relay-Forw - relay-agent가 클라이언트로부터 발생한 DHCPv6 메지시를 서버에 전송할 때 사용하는 메시지입니다.
Relay-Repl - 서버가 Relay-Forw에 대한 응답으로 relay-agent에 전송하는 메시지 입니다.
DHCPv6 Rick Graziani, IPv6 Fundamentals, ciscocompress, Figure 9-1, 2013
DHCPv6

DHCPv6 Relay Agent Communication Rick Graziani, IPv6 Fundamentals, ciscocompress, Figure 9-4, 2013
DHCPv6 Relay Agent Communication