RADIUS 서버 IP 풀 구성

RADIUS 서버를 사용하여 IP 주소 풀에서 동적으로 IP 주소를 지정할 수 있습니다.

IP 주소 할당은 권한 부여 프로세스의 일부이며 인증 후에 수행됩니다. 시스템 관리자는 사용자마다 고유한 IP를 지정해야 합니다. 동적으로 사용자에게 IP 주소를 제공하기 위해 RADIUS 서버는 다음 세 가지 옵션을 제공합니다.

  • 프레임된 풀 속성
  • 벤더 고유의 속성 사용
  • RADIUS 서버 측 IP 풀링

프레임된 풀 속성

IP 풀 poolname은 NAS(Network Access Server)에 정의되어 있어야 합니다. RADIUS 서버가 액세스-승인 팩(유형 88 속성)에서 프레임 풀 속성을 전송하려면 NAS가 RFC2869를 준수해야 합니다. 시스템 관리자는 NAS를 구성하고 프레임 풀 속성을 글로벌 ' default.auth 파일이나 RADIUS 서버의 ' user.auth ' 파일에 포함시켜 사용자에 대한 권한 부여 속성을 업데이트해야 합니다. RADIUS 서버의 사전 파일은 다음 속성을 포함합니다.

ATTRIBUTE    Framed-Pool    88       string

NAS가 복수 주소 풀을 사용할 수 없는 경우, NAS는 이 속성을 무시합니다. NAS의 주소 풀은 IP 주소 리스트를 포함합니다. NAS는 지정된 풀에 정의된 IP 주소 중 하나를 동적으로 선택하여 사용자에게 지정합니다.

벤더 고유의 속성

일부 솔루션파트너(ISV)는 프레임된 풀 속성을 사용할 수 없지만, IP 주소 풀을 정의하는 기능을 가지고 있습니다. RADIUS 서버는 VSA(Vendor-Specific Attribute) 모델을 사용하여 이러한 주소 풀을 이용할 수 있습니다. 예를 들어, Cisco NAS는 Cisco-AVPair라는 속성을 제공합니다. RADIUS 서버의 사전 파일은 다음 속성을 포함합니다.

VENDOR     Cisco           9
ATTRIBUTE  Cisco-AVPair    1       string

NAS가 액세스 요청 패킷을 보낼 때 이 속성은 ' Cisco-AVPair=”ip:addr-pool=poolname '과 함께 포함되며, 여기서 풀네임은 NAS에 정의된 주소 풀의 이름입니다. 요청이 인증되고 권한 부여되면, RADIUS 서버가 액세스 승인 패킷에 속성을 리턴합니다. 그러면 NAS는 정의된 풀을 사용하여 IP 주소를 사용자에게 할당할 수 있습니다. 시스템 관리자는 RADIUS 서버의 글로벌 default.auth 파일 또는 user.auth 파일에 VSA 속성을 포함시켜 NAS를 구성하고 사용자의 권한 속성을 업데이트해야 합니다.

Radius 서버 측 IP 풀링

IP 주소 풀에서 IP 주소를 생성하도록 RADIUS 서버를 구성할 수 있습니다. IP 주소는 액세스 승인 패킷의 프레임된 IP 주소 속성에 리턴됩니다.

시스템 관리자는 SMIT 인터페이스를 사용하여 IP 주소 풀을 정의할 수 있습니다. 주소는 /etc/radius/ippool_def 파일에서 유지됩니다. Poolnamesetc/radius/clients 파일에 정의되어 있습니다. 또한 시스템 관리자는 NAS 포트 번호를 구성해야 합니다. RADIUS 서버 디먼은 etc/radius/clients/etc/radius/ippool_def 파일의 정보를 사용하여 데이터 파일을 작성합니다. 디먼이 시작되면, RADIUS 서버가 정지될 때까지 시스템 관리자가 poolnames 또는 IP 주소 범위를 변경하거나 추가할 수 없습니다. RADIUS 서버 디먼이 시작되면 구성 파일(/etc/radius/radius.conf)을 읽고 IP 할당이 사용 가능한 경우(Enable_IP_Pooling=YES), 글로벌 IP 할당 플래그(IP_pool_flag)를 온으로 설정합니다. 그러면 디먼이 poolname.data 파일이 있는지 확인합니다. 파일이 있는 경우 파일을 읽고 공유 메모리에 해당 정보를 보관합니다. 그런 다음 클라이언트에서 제공하는 요청에 근거하여 파일 및 공유 메모리를 갱신합니다. 파일이 존재하지 않으면 디먼은 etc/radius/clients/etc/radius/ippool_def 파일의 정보를 사용하여 새 파일을 작성합니다. ' poolname.data ' 파일의 최대 크기 제한은 256MB입니다AIX® 세그먼트 크기 제한). poolname.data 파일이 256MB를 초과하면 RADIUS 서버가 오류 메시지를 로그하고 종료됩니다.

디먼은 /etc/radius/ippool_def 파일에서 IP 풀 세부사항을 가져오고 공유 메모리에 있는 각 풀 이름의 IP 주소 테이블을 유지보수합니다. 테이블에는 NAS-IP 주소, NAS-포트 및 IN USE 플래그의 항목이 있습니다. 디먼은 NAS-IP NAS-포트에서 입력되는 해쉬 테이블을 유지합니다. 여러 사용자가 요청하는 경우, UDP는 요청을 큐에 넣고 디먼은 요청에서 NAS-IP 및 NAS-포트 데이터를 검색합니다. 이 정보를 사용하여 ' etc/radius/clients ' 파일에서 읽은 정보를 확인하여 해당 NAS에 풀 이름이 정의되었는지 확인합니다.

디먼은 풀에서 사용하지 않은 주소를 가져오도록 시도합니다. 사용하지 않은 주소가 사용 가능하면 NAS-IP 및 NAS-포트 플래그에 의해 "사용 중"으로 표시되며 RADIUS 서버로 리턴됩니다. 디먼은 IP 주소를 프레임된 IP 주소 속성에 넣고 승인 패킷에서 NAS로 리턴됩니다. poolname.data 파일도 공유 메모리의 정보와 동기화되도록 업데이트됩니다.

풀이 없거나, 존재하지만 더 이상 사용하지 않는 주소가 없는 경우, RADIUS 서버로 오류가 리턴됩니다. 로그 파일에 오류 ' Could not allocate IP address '이 기록되고 RADIUS 서버에서 액세스 거부 패킷이 NAS로 전송됩니다.

오류 코드는 다음과 같습니다.

  • NOT_POOLED - ' nas_ip에 대해 정의된 풀이 없습니다.
  • 풀이 ' nas_ip'에 대해 정의되었지만 풀의 모든 주소가 현재 사용 중입니다.

이미 IP 주소가 할당된 NAS 및 NAS-포트 조합에서 인증 요청이 있으면, 디먼은 IN USE 플래그를 오프로 표시하고 테이블에서 NAS-IP 주소 및 NAS-포트 항목을 지워 이전 할당을 풀로 리턴합니다. 그런 다음 풀에서 새로운 IP 주소를 할당합니다.

또한 RADIUS 서버가 NAS에서 사용통계-정지 패킷을 수신하면 IP 주소도 풀로 리턴됩니다. 사용통계-정지 패킷은 NAS-IP 주소 및 NAS-포트 항목을 포함해야 합니다. 디먼은 다음과 같은 경우에 ippool_mem 파일에 액세스합니다.

  • 새로운 IP 주소를 가져오기 위한 요청이 있습니다. IN USE 플래그를 참으로 설정합니다.
  • 사용통계-정지 패킷이 수신됩니다. "사용 중" 플래그를 거짓으로 설정하여 IP 주소를 해제합니다.

각 경우에, 공유 메모리 시스템 호출은 공유 메모리의 데이터와 poolname.data 파일이 동기화되어 있는지 확인합니다. 시스템 관리자는 RADIUS 서버 구성 파일(radiusd.conf)의 Enable_IP_Pooling 파라미터를 사용하여 IP 할당을 ' ON ' 또는 ' OFF '로 설정할 수 있습니다. 이는 시스템 관리자가 글로벌 ' default.auth ' 또는 ' user.auth ' 파일에 할당된 IP 주소를 가지고 있는 경우에 유용합니다. 지정된 IP 주소를 사용하려면, 시스템 관리자는 Enable_IP_Pool = NO를 설정해야 합니다.

SMIT를 통해 작성된 /etc/radius/ippool_def 파일의 예제:
풀 이름 시작 범위 끝 범위
Floor5 192.165.1.1 192.165.1.125
Floor6 192.165.1.200 192.165.1.253
다음은 SMIT를 통해 생성된 ' /etc/radiusclients ' 파일의 예시입니다:
NAS-IP 공유 비밀 풀 이름
1.2.3.4 Secret1 Floor5
1.2.3.5 Secret2 Floor6
1.2.3.6 Secret3 Floor5
1.2.3.7 Secret4  
NAS-IP 주소 1.2.3.7에 대한 위의 예제에서, 풀 이름은 공백입니다. 이 경우, 글로벌 ' IP_pool_flag = True이더라도 이 NAS에 대해 IP 풀링이 수행되지 않습니다. 액세스-요청 패킷이 제공되면, RADIUS 서버는 인증 및 권한 부여를 수행합니다. 성공하면 액세스-승인 패킷에서 요청에 또는 글로벌 default.auth 파일이나 user.auth 파일에서 정의된 정적 IP 주소를 전송합니다. 이 경우, NAS-포트 속성이 필요하지 않습니다.

IP 풀링이 True인 경우, 시스템 관리자도 글로벌 default.authuser.auth의 일부로 또는 액세스 요청 패킷의 일부로 정적 IP 주소를 정의했습니다. RADIUS 서버는 해당 NAS의 정의된 풀 이름에서 할당된 IP 주소로 해당 IP 주소를 대체합니다. 풀에 있는 모든 IP 주소가 사용 중이면, 서버는 오류를 로그하며(풀이 가득 참) 액세스-거부 패킷을 전송합니다. 서버는 auth 파일에서 정의된 정적 IP 주소를 무시합니다.

IP 풀링이 True이며 NAS에 대해 유효한 풀 이릉이 정의된 경우, 해당 NAS-IP에서 액세스-요청 패킷이 제공되고 NAS-포트를 정의하지 않았으면 서버는 액세스-거부 패킷을 전송합니다.

다음은 디먼이 작성한 Floor5.data 파일의 예제입니다.
IP 주소 NAS-IP NAS-포트 사용 중
192.165.1.1 1.2.3.4 2 1
192.165.1.2 1.2.3.4 3 0
............ ....... .... ....
192.165.1.124 1.2.3.6 1 1
192.165.1.125 1.2.3.6 6 1
다음은 디먼이 작성한 Floor6.data 파일의 예제입니다.
IP 주소 NAS-IP NAS-포트 사용 중
192.165.200 1.2.3.4 1 1
192.165.201 1.2.3.4 4 1
............ ....... .... ....
192.165.1.252 1.2.3.4 5 0
192.165.1.253 1.2.3.4 6 1
지정된 NAS에 대해 할당된 모든 IP 주소를 해제해야 하는 경우(예: NAS 중지 시) 모든 풀에서 모든 IP 주소를 해제하여 poolname.data 파일을 초기화해야 할 수도 있습니다. 시스템 관리자는 SMIT를 사용하여 다음 메뉴 조치에 대한 작업을 수행할 수 있습니다.
  • 클라이언트의 IP 풀 지우기
  • 전체 IP 풀 지우기

IP 풀의 SMIT 패널

클라이언트 구성인 클라이언트 추가에서 선택적 풀 이름을 입력할 수 있습니다. 이름은 최대 64자일 수 있습니다. 풀 이름이 공백이면, IP 풀링은 수행되지 않으며 프레임된 IP 주소 권한 부여 속성을 통해 시스템 관리자가 정의한 IP 주소를 RADIUS 서버가 지정합니다.

IP 풀을 선택하면 다음 옵션이 표시됩니다.

  • 모든 IP 풀 나열
  • IP 풀 작성
  • IP 풀의 특성 변경/표시
  • IP 풀 삭제
  • 클라이언트의 IP 풀 지우기
  • 전체 IP 풀 지우기

모든 IP 풀 나열: 풀 이름, IP 주소 시작 범위IP 주소 끝 범위를 나열하려면 이 옵션을 사용하십시오.

IP 풀 작성: 풀 이름, 시작 범위 및 끝 범위를 추가하려면 이 옵션을 사용하십시오. 이 데이터는 ippool_def 파일의 맨 아래에 추가됩니다. 중복된 풀 이름이 없으며 IP 주소 범위가 해체되는지 확인하기 위한 검사가 이루어집니다. RADIUS 서버 디먼이 실행 중이지 않을 때에만 이 조치가 수행될 수 있습니다.

IP 풀의 특성 변경/표시: 이 옵션은 팝업 패널에서 풀 이름 리스트를 표시합니다. 이 패널에서, 고유의 풀 이름을 선택해야 합니다. 풀 이름을 선택하면, 선택된 이름이 있는 패널이 표시됩니다. Enter를 누르면 해당 풀 이름의 데이터가 ippool_def 파일에서 업데이트됩니다. RADIUS 서버 디먼이 실행 중이지 않을 때에만 이 조치가 수행될 수 있습니다.

IP 풀 삭제: 이 옵션을 선택하면 사용자가 선택할 수 있는 풀 이름 리스트가 표시됩니다. 풀 이름을 선택하면 선택한 풀 이름이 삭제되기 전에 ' Are You Sure 팝업 패널이 표시되어 확인을 요청합니다. rmippool 스크립트가 호출되어 ippool_def 파일에서 선택한 풀 이름을 삭제합니다. RADIUS 서버 디먼이 실행 중이지 않을 때에만 이 조치가 수행될 수 있습니다.

클라이언트에 대한 IP 풀 지우기: 이 옵션은 NAS에 속한 IP 주소의 ' IN-USE 항목을 ' 0 '로 표시하며, 이는 이제 이 NAS의 모든 IP 주소를 사용할 수 있음을 의미합니다. RADIUS 서버 디먼이 실행 중이지 않을 때에만 이 조치가 수행될 수 있습니다.

전체 IP 풀 지우기: 이 옵션을 선택하면 전체 ' ippool_mem ' 파일이 지워지기 전에 확인을 위해 ' Are You Sure 팝업 패널이 표시됩니다. RADIUS 서버 디먼이 실행 중이지 않을 때에만 이 조치가 수행될 수 있습니다.