Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

DHCP 가입자를 위한 RADIUS CoA 대안으로서의 RADIUS 재인증

RFC 5176, RADIUS(원격 인증 전화 접속 사용자 서비스에 대한 동적 권한 부여 확장)에 지정된 RADIUS CoA(Change of Authorization) 메시지는 클라이언트 서비스를 활성화 또는 비활성화하고 클라이언트를 로그아웃하지 않고 특정 클라이언트 세션 특성을 변경하는 데 사용되므로 가입자가 중단되는 것을 방지할 수 있습니다. 어떤 경우에는 중단 없이 클라이언트 세션 서비스 및 특성을 변경하는 방법으로 가입자 재인증을 사용하는 것이 바람직할 수 있습니다.

예를 들어, 다음과 같은 고객 구축 모드는 모두 세션 수명 동안 속성을 변경해야 합니다.

  • 가정용 가입자 - 가정용 가입자는 온라인 서비스 선택 또는 프로바이더에 직접 전화를 걸어 세션 수명 동안 서비스 계획을 변경할 수 있습니다. 서비스 계획의 변경은 DHCP 클라이언트 에이전트 원격 ID의 값을 변경하여 DHCP 로컬 서버로 전파됩니다. 에이전트 원격 ID는 DHCPv4 클라이언트의 경우 옵션 82, 하위 옵션 2에서, DHCPv6 클라이언트의 경우 옵션 37에서 전달됩니다.

    재인증이 구성되면 서비스 계획의 변경이 감지되어 재인증이 트리거됩니다. 새 서비스 계획과 변경된 속성은 RADIUS 서버에서 반환되고 가입자에 대해 구현됩니다.

  • 비즈니스 가입자 - 비즈니스 가입자는 주어진 세션 중에 속성(특히 프레임 경로)을 변경해야 하는 경우가 많습니다. 원하는 속성 변경은 서비스 계획의 변경으로 시작되지 않습니다.

    재인증이 구성된 경우, 리스 갱신 협상이 재인증을 트리거합니다. 속성 또는 서비스의 모든 변경 사항은 RADIUS 서버의 액세스-수락 메시지에 제공되며 가입자에 대해 구현됩니다.

재인증을 사용하는 것에 대한 두 가지 대안은 모두 재인증으로 가능한 것보다 훨씬 더 많은 세션 특성을 변경할 수 있습니다. CoA는 가입자를 방해하지 않고 특성 변경을 요청합니다. 가입자를 로그아웃했다가 다시 로그인하면 더 많은 세션 특성이 변경될 수 있지만 분명히 방해가 됩니다.

재인증의 이점

  • CoA 요청을 사용하지 않고 가입자 세션 속성 및 서비스 계획을 업데이트 또는 수정합니다.

  • 빈번한 가입자 변경 사항으로 인한 서비스 활성화를 간소화합니다.

  • 듀얼 스택, 단일 세션 구성에서 제품군당 재인증을 활성화합니다.

  • CLI 구성 또는 RADIUS VSA를 통해 재인증을 제어합니다.

기능

재인증은 DHCPv4 및 DHCPv6 모두에 대해 지원됩니다. DHCP 로컬 서버가 DHCP 클라이언트로부터 갱신, 재바인딩, 검색 또는 요청 메시지를 수신할 때 트리거될 수 있습니다. 검색 및 요청 메시지는 Junos OS 릴리스 18.1R1부터 재인증을 지원합니다. 검색 및 요청 메시지에 대한 지원은 바인딩된 클라이언트가 있는 CPE가 재부팅되고 클라이언트가 해당 메시지 중 하나를 전송하여 세션을 다시 가져오면 재인증을 통해 인증이 가입자에 대해 수행된 모든 업데이트를 가져올 수 있음을 의미합니다.

재인증 동작은 다음과 같이 결정됩니다.

  • 이 문은 reauthenticate lease-renewal 지원되는 4개의 메시지 중 하나라도 수신될 때 재인증이 트리거되도록 지정합니다.

  • 이 문은 reauthenticate remote-id-mismatch 수신된 메시지에 DHCP 클라이언트의 에이전트 원격 ID 값의 변경이 포함된 경우에만 재인증이 트리거되도록 지정합니다. 속성 값에는 가입자 서비스 계획의 이름이 포함되므로, 값이 변경되면 가입자에 대한 서비스가 변경됨을 의미합니다.

  • 주니퍼 네트웍스 reauthentication-on-renew VSA(26-206)는 로그인 시 가입자에 대한 RADIUS 서버의 액세스-수락 메시지에 값 1과 함께 반환되면 4개의 메시지 중 하나를 수신할 때 재인증을 트리거합니다. 값이 0이면 재인증이 비활성화됩니다. VSA 값은 수신될 때마다 세션 데이터베이스에 저장됩니다. 이 VSA가 재인증을 활성화한 후에는 재인증을 시도할 때마다 확인됩니다. 값이 0으로 변경된 경우, 즉 후속 액세스 수락이 값 0으로 VSA를 반환한 경우, 해당 가입자에 대한 재인증 프로세스가 중지됩니다.

    CLI 구성(reauthenticate 문) 및 갱신 시 재인증 동작은 부가적입니다. VSA를 통한 재인증 비활성화는 문이 reauthenticate 구성되지 않은 경우에만 효과가 있습니다. 문이 reauthenticate 두 옵션 중 하나로 구성되면 VSA 값 0을 재정의합니다. CLI 구성이 없는 경우, VSA는 자체적으로 재인증을 활성화할 수 있습니다.

재인증 프로세스는 원래 인증 프로세스와 거의 동일합니다. 재인증이 트리거되면 로컬 서버의 jdhcpd 프로세스가 인증 요청을 authd에 제출하고, authd는 차례로 액세스 요청 메시지를 RADIUS 서버에 제출하여 두 번째 인증을 요청합니다.

참고:

또는 이외의 none모든 인증 순서 radius 에 대해서는 재인증 요청이 실패합니다. 인증된 프로세스는 이러한 요청에 대해 부정적인 승인(NAK)을 반환합니다.

이 액세스 요청에는 원래 액세스 수락 메시지에서 반환된 RADIUS 상태 및 클래스 속성이 포함됩니다. 이러한 속성을 통해 RADIUS 서버는 로그인(인증) 요청과 재인증 요청을 구별할 수 있습니다.

RADIUS 서버는 가입자에 대한 새 속성으로 인증된 것에 대한 액세스-수락 메시지를 반환합니다. authd 프로세스는 jdhcpd에 대한 변경 사항이 포함된 확인(ACK)을 전송하며, jdhcpd는 변경된 특성을 가진 DHCP 클라이언트에 DHCP 오퍼를 보냅니다. 그림 1과 같이 DHCP 협상은 평소와 같이 계속되며, 가입자 세션은 새로운 속성 값으로 계속됩니다. 재인증에 서비스 계획의 변경이 포함되는 경우, RADIUS 서버는 그림 2와 같이 요청을 수락하면 다른 변경된 속성과 함께 새 계획을 반환합니다. 서비스 계획을 변경하는 과정에서 DHCP 클라이언트를 호스팅하는 CPE가 재부팅되면, 서비스 중단 없이 새 계획으로 재인증이 지원됩니다.

RADIUS 서버가 재인증 요청을 거부하거나 시간 초과하면 authd는 nak를 jdhcpd에 전송하여 포함된 오류 코드를 검토합니다. 오류 코드가 시간 초과를 나타내는 경우, jdhcpd는 DHCP 클라이언트에 ACK를 보내고 가입자 세션은 원래 속성 및 서비스로 유지됩니다. 다른 오류 코드의 경우, jdhcpd는 DHCPv4 NAK 또는 DHCPv6 REPLY(수명 값이 0으로 설정됨)를 논리적 NAK로 전송하고, 가입자 로그아웃을 시작하며, 세션 데이터베이스에서 가입자를 삭제합니다.

표 1 은 동일한 가입자에 대해 다른 요청 유형이 이미 진행 중일 때 인증된 요청이 요청을 처리하는 방법을 설명합니다.

표 1: 여러 요청 유형 처리

요청 진행 중

동일한 가입자에 대해 수신된 추가 요청

작업

재인증

코A

authd는 NAK로 CoA에 응답합니다.

코A

재인증

authd는 CoA가 처리될 때까지 재인증 요청을 대기열에 넣은 다음 재인증 요청을 처리합니다.

재인증

연결 해제

authd는 NAK로 연결 끊기에 응답합니다.

연결 해제

재인증

authd는 NAK로 재인증 요청에 응답하고 가입자 로그아웃을 계속합니다.

모범 사례:

네트워크 패밀리는 재인증의 일부로 종료되거나 다시 시작되지 않기 때문에 가입자 보안 정책 미러링과 관련하여 가입자 콘텐츠가 재평가되지 않습니다. 재인증 처리 중에 변경될 수 있는 속성을 미러링하는 가입자 보안 정책의 트리거로 사용하지 마십시오.

클라이언트가 바인딩된 후 재인증으로 인해 DHCPv6 가입자의 IP 또는 IPv6 주소가 변경되면 DHCPv6 서버는 주소 변경 요청을 평가합니다. 서버는 응답 PDU의 ID 연결(IA)에서 클라이언트에 상태 코드를 반환합니다. Junos OS 릴리스 18.4R1부터 DHCPv6 서버가 주소와 관련된 문제를 발견하면 이전에 지원되었던 NoAddrsAvail 및 NoPrefixAvail에 대한 코드 외에 NotOnLink의 상태 코드가 지원됩니다. 이러한 상태 코드는 다음과 같이 정의됩니다.

  • NoAddrsAvail(2) - 서버는 클라이언트 요청에서 IA에 대한 주소를 할당할 수 없습니다. 주소 및 NoAddrsAvail이 없는 IA를 반환합니다.

  • NotOnLink(4) - 서버는 클라이언트 요청의 IA에 있는 하나 이상의 주소에 대한 접두사가 클라이언트에 연결되는 링크에 적합하지 않다고 판단합니다. 이 코드는 재인증 실패(RADIUS 액세스-거부)의 경우에도 사용됩니다.

  • NoPrefixAvail(6) - 서버에는 클라이언트 요청에서 IA에 사용할 수 있는 접두사가 없습니다.

클라이언트가 NotOnLink 상태 코드를 받으면 주소 없이 다른 요청을 보내거나 협상 프로세스를 다시 시작할 수 있습니다. 요청을 보내면 DHCPv6 로컬 서버는 요청을 무시하고 새로운 재협상이 시작될 것으로 기대합니다.

듀얼 스택 가입자

Junos OS 릴리스 18.1R1 이전 릴리스에서는 듀얼 스택 DHCP 가입자가 독립 클라이언트 세션으로 취급됩니다. 각 스택은 독립적으로 갱신되고 새로운 서비스를 획득합니다.

Junos OS 릴리스 18.1R1부터는 듀얼 스택, 단일 세션 가입자에 대해 제품군별 인증 및 재인증이 지원됩니다. 듀얼 스택, 단일 세션 가입자는 일반적으로 1:1 액세스 모델에서 자체 VLAN이 있는 가구입니다. 가구는 세션 데이터베이스에서 단일 세션이 있는 단일 가입자로 표시되지만 DHCPv4 및 DHCPv6의 각 제품군에 대해 하나씩 두 개의 개별 DHCP 바인딩이 있습니다. 따라서 authd는 세션의 각 체계가 로그인하거나 재인증을 시도할 때 별도의 액세스 요청을 보냅니다.

  • 제품군별 인증은 가입자 세션이 DHCP 초기화 상태인 동안 검색 또는 요청 메시지가 수신될 때 발생합니다.

  • 가족별 재인증은 재인증 및 온디맨드 주소 할당이 모두 구성되고 DHCP 바인딩 상태에 있는 동안 가족 세션에 대한 갱신, 재바인딩, 검색 또는 요청 메시지가 수신될 때 발생합니다.

참고:

온디맨드 주소 할당은 로그인할 때 각 패밀리에 대해 주소가 별도로 할당되도록 합니다. 듀얼 스택, 단일 세션 가입자 또는 제품군별 인증에 대해 온디맨드 주소 할당을 구성해야 하며 재인증을 활성화할 수 없습니다. 재인증의 경우, 이는 CLI에서 구성되었든 Reauthenticate-On-Renew VSA(26-206)에서 구성되었든 관계없이 True입니다.

인증과 재인증은 모두 제품군별로 처리됩니다. 프로세스를 트리거하는 첫 번째 패밀리가 다른 (두 번째) 패밀리가 인증 또는 재인증을 트리거하기 전에 처리됩니다. 두 번째 패밀리의 메시지는 첫 번째 패밀리가 바인딩될 때까지 무시됩니다. 그런 다음 두 번째 가족 요청이 처리됩니다.

듀얼 스택 단일 세션 중 하나의 패밀리만 로그인하면 하나의 인증만 처리됩니다. 재인증은 하나의 클라이언트 패밀리에 대해서만 처리됩니다.

인증 프로세스는 DHCPv4 또는 DHCPv6 패밀리에 속하는 것으로 속성을 분류하고 그에 따라 태그를 지정합니다. 인증과 재인증 모두에서 요청을 시작하는 제품군에 따라 authd에는 DHCP-Options VSA(26-55) 또는 DHCPv6-Options VSA(26-65)가 포함됩니다. 구성에 따라 RADIUS 서버는 요청을 시작한 패밀리( 요청 패밀리)에 대한 정보만 반환하거나 두 패밀리에 대한 정보를 반환할 수 있습니다.

authd가 액세스 수락 메시지에서 속성을 수신하면 패밀리 태그를 통해 authd가 요청하는 패밀리 또는 다른(요청하지 않는) 패밀리에 해당하는 속성을 결정할 수 있습니다. 요청 패밀리의 속성만 세션 데이터베이스에 기록됩니다.

재인증 요청의 경우, authd는 반환된 특성을 세션 데이터베이스와 비교하여 RADIUS 서버에서 변경이 이루어졌는지 여부를 확인합니다. 다시 말하지만, 요청 패밀리에 해당하는 변경사항만 세션 데이터베이스에 기록되어 이전 값을 겹쳐씁니다.

재인증 중 변경 사항은 다음과 같이 처리됩니다.

  • 속성(주소 이외) - authd는 요청 패밀리에 대해 이러한 속성 중 하나 이상이 변경되었음을 확인하면 세션 데이터베이스에 새 값을 저장합니다. authd는 jdhcpd에 알린 후 새 속성 값과 함께 ACK를 DHCP 클라이언트에 보냅니다.

  • 주소 또는 주소 풀 - authd는 요청 패밀리의 변경을 감지하면 DHCP 로컬 서버에 알리고, DHCP 로컬 서버는 다시 DHCP 클라이언트에 NAK(DHCPv4) 또는 논리적 NAK(DHCPv6)를 보냅니다.

    요청하는 패밀리가 바인딩된 유일한 패밀리인 경우, jdhcpd는 가입자를 정상적으로 로그아웃합니다. 비요청 패밀리도 바인딩된 경우, jdhcpd는 요청 패밀리를 비활성화하지만 비요청 패밀리에 대한 서비스 중단 없이 비요청 패밀리 바인딩은 그대로 유지합니다. 요청 패밀리의 비활성화는 비요청 패밀리에 의한 재인증의 후속 트리거에 영향을 미치지 않습니다.

    비활성화된 패밀리가 이후에 다시 로그인하라는 검색 또는 요청 메시지를 보내면 평소와 같이 재인증을 위해 액세스 요청이 전송되고 액세스 수락에서 받은 새 주소가 가입자에게 적용됩니다.

RADIUS 서버가 액세스-거부 메시지로 인증 또는 재인증 요청에 응답하는 경우 authd는 DHCP 로컬 서버에 알리고, DHCP 로컬 서버는 다시 DHCP 클라이언트에 NAK(DHCPv4) 또는 논리적 NAK(DHCPv6)를 보냅니다. 요청한 가족은 정상적으로 종료됩니다. 패밀리가 비활성화되고 가입자가 로그아웃됩니다. 그런 다음 요청하지 않는 패밀리는 비활성화되고 로그아웃되지만 클라이언트는 종료에 대한 알림을 받지 않습니다.

비요청 패밀리에서 활성 감지가 실행 중인 경우, 클라이언트는 패밀리가 종료될 때 연결 손실을 감지하고 이후 DHCP 로컬 서버에 검색 또는 요청 메시지를 보냅니다. 그러나 활성 감지가 실행되고 있지 않으면 클라이언트는 리바인딩 시간(T2, 옵션 59)이 만료되고 서비스가 손실될 때까지 연결 손실을 감지하지 않습니다. 임대 기간에 따라 시간이 오래 걸릴 수 있습니다.

모범 사례:

두 주소 패밀리에 대한 활성 감지를 구성하여 연결 손실을 감지하는 시간을 줄입니다. 활성 감지 구성에 대한 자세한 내용은 DHCP 활성 감지 개요를 참조하십시오.

패킷 플로우

다음 그림은 DHCP 클라이언트, DHCP 서버 및 RADIUS 서버 간의 가입자 세션의 초기 협상 시퀀스를 설명합니다. 클라이언트의 서비스 계획은 DHCPv4 옵션 82, 하위 옵션 2 또는 DHCPv6 옵션 37에 포함된 원격 ID의 두 번째 하위 문자열에 지정됩니다.

초기 협상

그림 1 은 DHCP 클라이언트, DHCP 서버 및 RADIUS 서버 간의 초기 협상 단계의 시퀀스를 보여줍니다. 그림에서 사용되는 용어는 다음과 같습니다.

CPE—고객 사내 장비(DHCP 클라이언트 또는 가입자로 기능).

OLT—옵티컬 라인 터미네이터—예를 들어, DSL 액세스 멀티플렉서(DSLAM) 또는 기타 어그리게이션 디바이스.

MX 시리즈 디바이스 - DHCP 서버로 작동합니다.

그림 1: 초기 협상 Flowchart of DHCP and RADIUS interactions in a network with MX Series Device, showing steps of DHCP discovery, offer, request, acknowledgment, and RADIUS authentication between CPE, OLT, JDHCPD, Dynamic Profiles, AUTHD, and RADIUS, including IPv4 and IPv6 address assignment, DNS allocation, and service profile instantiation.

서비스 계획 변경

그림 2는 100Mbps 계획에서 1Gbps 계획으로 서비스 계획 변경의 단계 시퀀스를 보여줍니다.

그림 2: 서비스 계획 Sequence diagram of DHCP and authentication interactions in a network setup. Shows CPE initiating DHCP requests, with OLT forwarding them to JDHCPD. JDHCPD manages DHCP and authentication via AUTHD and RADIUS, while Dynamic Profiles handle profile changes.

재인증에 지원되는 RADIUS 속성

표 2 에는 RADIUS 액세스-수락 메시지에서 수신될 때 재인증 중에 처리할 수 있는 RADIUS 표준 속성 및 VSA가 나열되어 있으며, 인증된 상태에서 속성의 변경을 처리하는 방법을 설명합니다. 속성 처리는 CoA 요청 처리와 일치합니다. 재인증 가입자 세션의 특성은 액세스 수락 메시지에서 새 값 또는 새 속성이 수신되는 경우에만 변경됩니다.

표 2: 재인증이 지원하는 RADIUS 속성

속성 번호

속성 이름

처리 결과

8

프레임 IP 주소

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

22

프레임 경로

새 값은 가입자 세션 데이터베이스에 저장됩니다. 이전 데이터가 추가됩니다.

24

상태

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

25

클래스

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

26-4

기본 DNS

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

26-5

보조 DNS

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

26-6

기본 WINS

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

26-7

보조 WINS

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

26-55

DHCP 옵션

가입자의 DHCP 구성에 대한 변경 사항을 처리하기 위해 값이 DHCP 로컬 서버로 전송됩니다.

26-65

서비스 활성화

인증된 프로세스는 VSA의 서비스 목록을 해당 가입자 세션에 대해 이미 활성화된 서비스와 비교합니다.

  • VSA의 목록에 아직 활성화되지 않은 서비스가 포함된 경우 authd는 가입자에 대해 해당 서비스를 활성화합니다.

  • 가입자 세션에 대해 이미 활성화된 서비스가 VSA에 나열되지 않은 경우 authd는 해당 서비스를 비활성화합니다.

예를 들어, 서비스 A와 B가 세션에서 활성화되었지만 VSA에는 서비스 B와 C만 포함되어 있다고 가정해보겠습니다. 서비스 A는 VSA 목록에 없고 비활성화되었습니다. 서비스 C는 목록에 있지만 현재 활성화되지 않으므로 authd는 C를 활성화합니다. 서비스 B는 이미 활성 상태이며 목록에 있으므로 활성 상태로 유지됩니다.

26-161

IPv6-위임 풀 이름

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

26-206

갱신 시 재인증

값이 1(활성화)인 경우, authd는 값이 아직 존재하지 않는 경우 가입자 세션 데이터베이스에 값을 추가합니다.

값이 0(사용 안 함)이고 데이터베이스에 값 1이 이미 있는 경우 authd는 데이터베이스 값을 0으로 설정합니다.

메시지의 값이 누락되거나 유효하지 않고 데이터베이스에 값이 이미 있는 경우 authd는 데이터베이스에서 값을 삭제합니다.

26-207

DHCPv6 옵션

가입자의 DHCP 구성에 대한 변경 사항을 처리하기 위해 DHCPv6 로컬 서버로 값이 전송됩니다.

88

프레임 풀

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

97

프레임 IPv6 접두사

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

100

프레임 IPv6 풀

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

123

Delegated-IPv6-Prefix

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

168

프레임 IPv6 주소

새 값은 가입자 세션 데이터베이스에 저장됩니다. 오래된 데이터를 덮어씁니다.

변경 내역 표

기능 지원은 사용 중인 플랫폼과 릴리스에 따라 결정됩니다. 기능 탐색기를 사용하여 플랫폼에서 기능이 지원되는지 확인합니다.

출시
설명
18.4R1
Junos OS 릴리스 18.4R1부터 DHCPv6 서버가 주소와 관련된 문제를 발견하면 이전에 지원되었던 NoAddrsAvail 및 NoPrefixAvail에 대한 코드 외에 NotOnLink의 상태 코드가 지원됩니다.
18.1R1
검색 및 요청 메시지는 Junos OS 릴리스 18.1R1부터 재인증을 지원합니다.