목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

스테이트풀 대 스테이트리스 DHCPv6

네트워크 다이어그램

DHCPv6 대 DHCPv4 메시지 유형

스테이트리스 DHCPv6 릴레이

구성

패킷 흐름

다음을 확인합니다.

디버깅

Wireshark 스냅샷

상태 저장 DHCPv6

구성

패킷 흐름

다음을 확인합니다.

디버깅

Wireshark 스냅샷

문제 해결

DHCP 릴레이 출력

릴리스 주소

디버깅

관련 정보

관련 Cisco 지원 커뮤니티 토론

소개

이 문서에서는 Cisco ASA(Adaptive Security Appliance)를 DHCPv6 릴레이 에이전트로 구성하는 방법에 대해 설명하고 몇 가지 기본적인 트러블슈팅도 다룹니다.ASA Code Version 9.0 이상에서 ASA는

사전 요구 사항

요구 사항

다음 주제에 대한 지식을 보유하고 있으면 유용합니다.

- IPv6 기본 개념

- IPv6 주소 지정 메커니즘

- DHCPv6 패킷 흐름

- DHCP 릴레이 개념

사용되는 구성 요소

이 문서의 정보는 ASA 5500 버전 9.1.2을 기반으로 합니다.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.

스테이트풀 대 스테이트리스 DHCPv6

IPv6에서 서로 다른 주소 할당 방법을 이해하면 DHCPv6 릴레이 기능이 ASA에서 어떻게 작동하는지 이해하는 데 도움이 됩니다.SLAAC(Stateless Address Autoconfiguration) 및 DHCPv6에 대한 소개는 SLAAC 및 DHCP를 사용하여 IPv6에서 동적 주소 할당을 참조하십시오.

네트워크 다이어그램

이 샘플 컨피그레이션에서는 ASA를 DHCPv6 릴레이 에이전트로 구성하는 방법에 대해 설명합니다.이 구성에서 CLIENT는 IPv6 클라이언트가 연결된 인터페이스입니다. SERVER는 DHCPv6 서버 2001:db8:200:2/64에 연결할 수 있는 인터페이스입니다.

DHCPv6 대 DHCPv4 메시지 유형

스테이트리스 DHCPv6 릴레이

구성

다음은 ASA의 스테이트리스 DHCPv6 릴레이 컨피그레이션에 대한 기본 컨피그레이션입니다.

interface GigabitEthernet0/1

nameif CLIENT

security-level 100

ipv6 address 2001:db8:100::1/64

ipv6 enable

ipv6 nd other-config-flag

!

interface GigabitEthernet0/0

nameif SERVER

security-level 0

ipv6 address 2001:db8:200:1/64

ipv6 enable

!

ipv6 dhcprelay server 2001:db8:200:2 inside

ipv6 dhcprelay enable outside

패킷 흐름

스테이트리스 DHCPv6를 사용하는 경우, 다음은 클라이언트의 패킷 흐름입니다.

ASA는 이러한 패킷을 인터셉트하여 DHCP 릴레이 형식으로 래핑합니다.

다음을 확인합니다.

디버깅

debug ipv6 dhcprelay 및 debug ipv6 dhcp를 활성화하면 관련 출력이 화면에 인쇄됩니다.이 출력은 작업 시나리오에서 가져옵니다.

IPv6 DHCP: Received INFORMATION-REQUEST from fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP: detailed packet contents

src fe80::c671:feff:fe93:b51a (CLIENT)

dst ff02::1:2

type INFORMATION-REQUEST(11), xid 1588088

option ELAPSED-TIME(8), len 2

elapsed-time 0

option CLIENTID(1), len 10

00030001c471fe93b516

option ORO(6), len 6

DNS-SERVERS,DOMAIN-LIST,UNKNOWN

IPv6 DHCP_RELAY: Relaying INFORMATION-REQUEST from fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP_RELAY: Creating relay binding for fe80::c671:feff:fe93:b51a at interface CLIENT

IPv6 DHCP_RELAY:   to 2001:db8:200::2 via 2001:db8:200::2 using SERVER

IPv6 DHCP: Sending RELAY-FORWARD to 2001:db8:200::2 on SERVER

IPv6 DHCP: detailed packet contents

src 2001:db8:200::1

dst 2001:db8:200::2 (SERVER)

type RELAY-FORWARD(12), hop 0

link 2001:db8:100::1

peer fe80::c671:feff:fe93:b51a

option RELAY-MSG(9), len 34

type INFORMATION-REQUEST(11), xid 1588088

option ELAPSED-TIME(8), len 2

elapsed-time 0

option CLIENTID(1), len 10

00030001c471fe93b516

option ORO(6), len 6

DNS-SERVERS,DOMAIN-LIST,UNKNOWN

option INTERFACE-ID(18), len 4

0x00000015

IPv6 DHCP: Received RELAY-REPLY from 2001:db8:200::2 on SERVER

IPv6 DHCP: detailed packet contents

src 2001:db8:200::2 (SERVER)

dst 2001:db8:200::1

type RELAY-REPLY(13), hop 0

link 2001:db8:100::1

peer fe80::c671:feff:fe93:b51a

option RELAY-MSG(9), len 67

type REPLY(7), xid 1588088

option SERVERID(2), len 10

00030001002414a33c94

option CLIENTID(1), len 10

00030001c471fe93b516

option DNS-SERVERS(23), len 16

2001:db8:1000::1

option DOMAIN-LIST(24), len 11

cisco.com

option INTERFACE-ID(18), len 4

0x00000015

IPv6 DHCP_RELAY: Relaying RELAY-REPLY from 2001:db8:200::2 on SERVER

IPv6 DHCP_RELAY:   relayed msg: REPLY

IPv6 DHCP_RELAY:   to fe80::c671:feff:fe93:b51a

IPv6 DHCP: Sending REPLY to fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP: detailed packet contents

src fe80::219:7ff:fe24:2e44

dst fe80::c671:feff:fe93:b51a (CLIENT)

type REPLY(7), xid 1588088

option SERVERID(2), len 10

00030001002414a33c94

option CLIENTID(1), len 10

00030001c471fe93b516

option DNS-SERVERS(23), len 16

2001:db8:1000::1

option DOMAIN-LIST(24), len 11

cisco.com

INFORMATION-REQUEST 요청 패킷에서 클라이언트는 DNS-Server 및 Domain만 요청합니다. 이는 클라이언트가 스테이트리스 DHCPv6에 대해 구성되기 때문에 필요합니다.

Wireshark 스냅샷

DHCP 클라이언트 요청

ASA에서 릴레이된 DHCP 요청

서버에서 DHCP 회신

클라이언트에 전달된 회신

상태 저장 DHCPv6

구성

다음은 ASA에서 상태 기반 DHCPv6 릴레이 컨피그레이션의 기본 컨피그레이션입니다.

interface GigabitEthernet0/1

nameif CLIENT

security-level 100

ipv6 address 2001:db8:100::1/64

ipv6 enable

!

interface GigabitEthernet0/0

nameif SERVER

security-level 0

ipv6 address 2001:db8:200:1/64

ipv6 enable

!

ipv6 dhcprelay server 2001:db8:200:2 inside

ipv6 dhcprelay enable outside

패킷 흐름

스테이트풀 DHCPv6에서는 클라이언트의 패킷 흐름을 다음과 같이 나타냅니다.

ASA는 이러한 패킷을 인터셉트하여 DHCP 릴레이 형식으로 래핑합니다.

다음을 확인합니다.

디버깅

IPv6 DHCP: Received SOLICIT from fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP: detailed packet contents

src fe80::c671:feff:fe93:b51a (CLIENT)

dst ff02::1:2

type SOLICIT(1), xid 2490681

option ELAPSED-TIME(8), len 2

elapsed-time 0

option CLIENTID(1), len 10

00030001c471fe93b516

option ORO(6), len 4

DNS-SERVERS,DOMAIN-LIST

option IA-NA(3), len 12

IAID 0x00040001, T1 0, T2 0

IPv6 DHCP_RELAY: Relaying SOLICIT from fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP_RELAY: Creating relay binding for fe80::c671:feff:fe93:b51a at interface CLIENT

IPv6 DHCP_RELAY:   to 2001:db8:200::2 via 2001:db8:200::2 using SERVER

IPv6 DHCP: Sending RELAY-FORWARD to 2001:db8:200::2 on SERVER

IPv6 DHCP: detailed packet contents

src 2001:db8:200::1

dst 2001:db8:200::2 (SERVER)

type RELAY-FORWARD(12), hop 0

link 2001:db8:100::1

peer fe80::c671:feff:fe93:b51a

option RELAY-MSG(9), len 48

type SOLICIT(1), xid 2490681

option ELAPSED-TIME(8), len 2

elapsed-time 0

option CLIENTID(1), len 10

00030001c471fe93b516

option ORO(6), len 4

DNS-SERVERS,DOMAIN-LIST

option IA-NA(3), len 12

IAID 0x00040001, T1 0, T2 0

option INTERFACE-ID(18), len 4

0x00000015

IPv6 DHCP: Received RELAY-REPLY from 2001:db8:200::2 on SERVER

IPv6 DHCP: detailed packet contents

src 2001:db8:200::2 (SERVER)

dst 2001:db8:200::1

type RELAY-REPLY(13), hop 0

link 2001:db8:100::1

peer fe80::c671:feff:fe93:b51a

option RELAY-MSG(9), len 111

type ADVERTISE(2), xid 2490681

option SERVERID(2), len 10

00030001002414a33c94

option CLIENTID(1), len 10

00030001c471fe93b516

option IA-NA(3), len 40

IAID 0x00040001, T1 43200, T2 69120

option IAADDR(5), len 24

IPv6 address 2001:db8:300:0:48ae:5f5d:8290:e926

preferred INFINITY, valid INFINITY

option DNS-SERVERS(23), len 16

2001:db8:1000::1

option DOMAIN-LIST(24), len 11

cisco.com

option INTERFACE-ID(18), len 4

0x00000015

IPv6 DHCP_RELAY: Relaying RELAY-REPLY from 2001:db8:200::2 on SERVER

IPv6 DHCP_RELAY:   relayed msg: ADVERTISE

IPv6 DHCP_RELAY:   to fe80::c671:feff:fe93:b51a

IPv6 DHCP: Sending ADVERTISE to fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP: detailed packet contents

src fe80::219:7ff:fe24:2e44

dst fe80::c671:feff:fe93:b51a (CLIENT)

type ADVERTISE(2), xid 2490681

option SERVERID(2), len 10

00030001002414a33c94

option CLIENTID(1), len 10

00030001c471fe93b516

option IA-NA(3), len 40

IAID 0x00040001, T1 43200, T2 69120

option IAADDR(5), len 24

IPv6 address 2001:db8:300:0:48ae:5f5d:8290:e926

preferred INFINITY, valid INFINITY

option DNS-SERVERS(23), len 16

2001:db8:1000::1

option DOMAIN-LIST(24), len 11

cisco.com

IPv6 DHCP: Received REQUEST from fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP: detailed packet contents

src fe80::c671:feff:fe93:b51a (CLIENT)

dst ff02::1:2

type REQUEST(3), xid 2492842

option ELAPSED-TIME(8), len 2

elapsed-time 0

option CLIENTID(1), len 10

00030001c471fe93b516

option ORO(6), len 4

DNS-SERVERS,DOMAIN-LIST

option SERVERID(2), len 10

00030001002414a33c94

option IA-NA(3), len 40

IAID 0x00040001, T1 0, T2 0

option IAADDR(5), len 24

IPv6 address 2001:db8:300:0:48ae:5f5d:8290:e926

preferred INFINITY, valid INFINITY

IPv6 DHCP_RELAY: Relaying REQUEST from fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP_RELAY:   to 2001:db8:200::2 via 2001:db8:200::2 using SERVER

IPv6 DHCP: Sending RELAY-FORWARD to 2001:db8:200::2 on SERVER

IPv6 DHCP: detailed packet contents

src 2001:db8:200::1

dst 2001:db8:200::2 (SERVER)

type RELAY-FORWARD(12), hop 0

link 2001:db8:100::1

peer fe80::c671:feff:fe93:b51a

option RELAY-MSG(9), len 90

type REQUEST(3), xid 2492842

option ELAPSED-TIME(8), len 2

elapsed-time 0

option CLIENTID(1), len 10

00030001c471fe93b516

option ORO(6), len 4

DNS-SERVERS,DOMAIN-LIST

option SERVERID(2), len 10

00030001002414a33c94

option IA-NA(3), len 40

IAID 0x00040001, T1 0, T2 0

option IAADDR(5), len 24

IPv6 address 2001:db8:300:0:48ae:5f5d:8290:e926

preferred INFINITY, valid INFINITY

option INTERFACE-ID(18), len 4

0x00000015

IPv6 DHCP: Received RELAY-REPLY from 2001:db8:200::2 on SERVER

IPv6 DHCP: detailed packet contents

src 2001:db8:200::2 (SERVER)

dst 2001:db8:200::1

type RELAY-REPLY(13), hop 0

link 2001:db8:100::1

peer fe80::c671:feff:fe93:b51a

option RELAY-MSG(9), len 111

type REPLY(7), xid 2492842

option SERVERID(2), len 10

00030001002414a33c94

option CLIENTID(1), len 10

00030001c471fe93b516

option IA-NA(3), len 40

IAID 0x00040001, T1 43200, T2 69120

option IAADDR(5), len 24

IPv6 address 2001:db8:300:0:48ae:5f5d:8290:e926

preferred INFINITY, valid INFINITY

option DNS-SERVERS(23), len 16

2001:db8:1000::1

option DOMAIN-LIST(24), len 11

cisco.com

option INTERFACE-ID(18), len 4

0x00000015

IPv6 DHCP_RELAY: Relaying RELAY-REPLY from 2001:db8:200::2 on SERVER

IPv6 DHCP_RELAY:   relayed msg: REPLY

IPv6 DHCP_RELAY:   to fe80::c671:feff:fe93:b51a

IPv6 DHCP: Sending REPLY to fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP: detailed packet contents

src fe80::219:7ff:fe24:2e44

dst fe80::c671:feff:fe93:b51a (CLIENT)

type REPLY(7), xid 2492842

option SERVERID(2), len 10

00030001002414a33c94

option CLIENTID(1), len 10

00030001c471fe93b516

option IA-NA(3), len 40

IAID 0x00040001, T1 43200, T2 69120

option IAADDR(5), len 24

IPv6 address 2001:db8:300:0:48ae:5f5d:8290:e926

preferred INFINITY, valid INFINITY

option DNS-SERVERS(23), len 16

2001:db8:1000::1

option DOMAIN-LIST(24), len 11

cisco.com

Wireshark 스냅샷

간청(1)

DHCPv6 클라이언트는 DHCPv6 서버를 찾기 위해 간청 메시지를 보냅니다.

ASA는 간청 메시지를 릴레이합니다.

광고(2)

서버는 클라이언트에서 받은 간청(Solicit) 메시지에 대한 응답으로 DHCP 서비스에 사용할 수 있음을 나타내기 위해 Advertise(알림) 메시지를 보냅니다.

요청(3)

클라이언트는 특정 서버에서 IP 주소 또는 위임된 접두사를 포함하는 컨피그레이션 매개변수를 요청하기 위해 요청 메시지를 전송합니다.

회신(7)

서버는 클라이언트에서 받은 간청, 요청, 갱신 또는 재바인딩 메시지에 대한 응답으로 할당된 주소 및 컨피그레이션 매개변수를 포함하는 회신 메시지를 전송합니다.서버는 정보 요청 메시지에 대한 응답으로 컨피그레이션 매개변수를 포함하는 회신 메시지를 전송합니다.서버는 클라이언트에 할당된 주소가 클라이언트가 연결된 링크에 적합한지 여부를 확인 또는 거부 하는 확인 메시지에 대한 응답 메시지를 보냅니다.서버가 릴리스 또는 거부 메시지의 수신을 확인하기 위해 회신 메시지를 보냅니다.

문제 해결

DHCPv6 서버와의 연결을 확인합니다.

ciscoasa# show ipv6 neighbor

IPv6 Address                              Age Link-layer Addr State Interface

2001:db8:200::2                             0 0024.14a3.3c98  REACH SERVER

IPv6 주소를 요청할 때 클라이언트에서 패킷을 수신하는지 확인합니다.클라이언트에서 보낸 패킷은 주소 할당 설정(상태 저장 및 상태 비저장)에 따라 달라집니다.

클라이언트가 DHCPv6 프로세스를 시작하면 링크에 IPv6 라우터가 있는지 확인하기 위해 Router Solicit 메시지를 보냅니다.IPv6 라우터가 응답하도록 프롬프트를 표시하기 위해 멀티캐스트 라우터 요청 메시지를 전송합니다.라우터 요청 메시지의 이더넷 헤더에 다음 필드가 표시됩니다.

- Source Address 필드는 IPv6 주소를 요청하는 호스트의 MAC 주소입니다.

- Destination Address 필드는 33-33-00-00-00-02로 설정됩니다.

라우터 요청 메시지의 IPv6 헤더에 이러한 필드가 표시됩니다.

- Source Address 필드는 전송 인터페이스에 할당된 링크-로컬 IPv6 주소 또는 IPv6 미지정 주소(::)로 설정됩니다.

- Destination Address 필드는 link-local scope all-routers 멀티캐스트 주소(FF02::2)로 설정됩니다.

- Hop Limit(홉제한) 필드는 255로 설정됩니다.

응답에서 IPv6 라우터는 원치 않는 라우터 알림 메시지를 보냅니다. 라우터 알림 메시지에는 링크 접두사, MTU(Maximum Transmission Unit) 링크 및 특정 경로를 확인하는 데 필요한 정보가 포함되어 있습니다.

ciscoasa(config)# show capture capin detail

fe80::c671:feff:fe93:b51a.546 > ff02::1:2.547:  [udp sum ok] udp 42

[hlim 255] (len 100)---->Request from client

fe80::219:7ff:fe24:2e44.547 > fe80::c671:feff:fe93:b51a.546:  [udp sum ok]

udp 75 [class 0xe0] (len 133, hlim 255)

ciscoasa(config)# show capture capout detail

2 packets captured

1: 12:06:52.700799       2001:db8:200:1.547 > 2001:db8:200:2.547:  udp 88

[class 0xe0]---->ASA forwards request to DHCPv6 router

2: 12:06:53.289047      2001:db8:200:2.547 > 2001:db8:200:1.547:  udp 121

[class 0xe0]----> Reply from DHCPV6 server.

DHCP 릴레이 출력

ciscoasa# show ipv6 dhcprelay binding

1 in use, 1 most used

Client: fe80::c671:feff:fe93:b51a (CLIENT)

DUID: 00030001c471fe93b516, Timeout in 56 seconds

참고:짧은 기간 후에 ASA에서 바인딩을 삭제합니다.이는 debug ipv6 dhcprelay에서 확인할 수 있습니다.

IPv6 DHCP_RELAY: Deleting binding for fe80::c671:feff:fe93:b51a at interface CLIENT

ciscoasa# show ipv6 dhcprelay statistics

Relay Messages:

SOLICIT                                       2

ADVERTISE                                     2

REQUEST                                       2

CONFIRM                                       0

RENEW                                         0

REBIND                                        0

REPLY                                         9

RELEASE                                       1

DECLINE                                       0

RECONFIGURE                                   0

INFORMATION-REQUEST                           6

RELAY-FORWARD                                 11

RELAY-REPLY                                   11

Relay Errors:

Malformed message:                            0

Block allocation/duplication failure:         0

Hop count limit exceeded:                     0

Forward binding creation failure:             0

Reply binding lookup failure:                 0

No output route:                              0

Conflict relay server route:                  0

Failed to add server input rule:              0

Unit or context is not active:                0

Total Relay Bindings Created:                   8

릴리스 주소

클라이언트는 네트워크에 대해 DHCPv6 할당 주소를 사용한 후 해당 주소를 해제할 수 있습니다.다음 섹션에서는 스테이트풀 DHCPv6의 주소 릴리스와 관련된 디버그 출력을 보여줍니다.

디버깅

IPv6 DHCP: Received RELEASE from fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP: detailed packet contents

src fe80::c671:feff:fe93:b51a (CLIENT)

dst ff02::1:2

type RELEASE(8), xid 3180815

option ELAPSED-TIME(8), len 2

elapsed-time 0

option CLIENTID(1), len 10

00030001c471fe93b516

option SERVERID(2), len 10

00030001002414a33c94

option IA-NA(3), len 40

IAID 0x00040001, T1 0, T2 0

option IAADDR(5), len 24

IPv6 address 2001:db8:300:0:48ae:5f5d:8290:e926

preferred INFINITY, valid INFINITY

IPv6 DHCP_RELAY: Relaying RELEASE from fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP_RELAY: Creating relay binding for fe80::c671:feff:fe93:b51a at interface CLIENT

IPv6 DHCP_RELAY:   to 2001:db8:200::2 via 2001:db8:200::2 using SERVER

IPv6 DHCP: Sending RELAY-FORWARD to 2001:db8:200::2 on SERVER

IPv6 DHCP: detailed packet contents

src 2001:db8:200::1

dst 2001:db8:200::2 (SERVER)

type RELAY-FORWARD(12), hop 0

link 2001:db8:100::1

peer fe80::c671:feff:fe93:b51a

option RELAY-MSG(9), len 82

type RELEASE(8), xid 3180815

option ELAPSED-TIME(8), len 2

elapsed-time 0

option CLIENTID(1), len 10

00030001c471fe93b516

option SERVERID(2), len 10

00030001002414a33c94

option IA-NA(3), len 40

IAID 0x00040001, T1 0, T2 0

option IAADDR(5), len 24

IPv6 address 2001:db8:300:0:48ae:5f5d:8290:e926

preferred INFINITY, valid INFINITY

option INTERFACE-ID(18), len 4

0x00000015

IPv6 DHCP: Received RELAY-REPLY from 2001:db8:200::2 on SERVER

IPv6 DHCP: detailed packet contents

src 2001:db8:200::2 (SERVER)

dst 2001:db8:200::1

type RELAY-REPLY(13), hop 0

link 2001:db8:100::1

peer fe80::c671:feff:fe93:b51a

option RELAY-MSG(9), len 45

type REPLY(7), xid 3180815

option SERVERID(2), len 10

00030001002414a33c94

option CLIENTID(1), len 10

00030001c471fe93b516

option STATUS-CODE(13), len 9

status code SUCCESS(0)

status message: SUCCESS

option INTERFACE-ID(18), len 4

0x00000015

IPv6 DHCP_RELAY: Relaying RELAY-REPLY from 2001:db8:200::2 on SERVER

IPv6 DHCP_RELAY:   relayed msg: REPLY

IPv6 DHCP_RELAY:   to fe80::c671:feff:fe93:b51a

IPv6 DHCP: Sending REPLY to fe80::c671:feff:fe93:b51a on CLIENT

IPv6 DHCP: detailed packet contents

src fe80::219:7ff:fe24:2e44

dst fe80::c671:feff:fe93:b51a (CLIENT)

type REPLY(7), xid 3180815

option SERVERID(2), len 10

00030001002414a33c94

option CLIENTID(1), len 10

00030001c471fe93b516

option STATUS-CODE(13), len 9

status code SUCCESS(0)

status message: SUCCESS

관련 정보

다양한 DHCP 옵션 이해

ASA DHCP 릴레이 컨피그레이션 예

IPv6 트래픽을 전달하도록 ASA 구성

CLI 및 ASDM을 사용한 ASA 패킷 캡처 컨피그레이션 예