라이브러리

[PHP] radius_put_attr - 이진 속성을 첨부합니다




radius_put_attr 함수


PHP의 FreeRADIUS 라이브러리를 사용하여 RADIUS 서버와 통신할 때, `radius_put_attr` 함수를 사용하여 RADIUS 서버에 특정 속성을 설정할 수 있습니다. 이 함수는 RADIUS 서버에 특정 속성을 추가하거나 업데이트 하기 위해 사용됩니다.

# 함수의 매개변수


`radius_put_attr` 함수의 매개변수는 다음과 같습니다.

* `attr`: RADIUS 속성 번호
* `value`: RADIUS 속성 값
* `len`: 속성 값의 길이
* `flags`: 속성 플래그 (선택 사항)

# 함수의 사용 예제


다음은 `radius_put_attr` 함수의 사용 예제입니다.

#hostingforum.kr
php

<?php

// RADIUS 서버와 연결

$radius = radius_create("localhost", 1812);



// RADIUS 서버에 속성을 설정합니다.

radius_put_attr($radius, RADIUS_USER_NAME, "john", strlen("john"));

radius_put_attr($radius, RADIUS_USER_PASSWORD, "password123", strlen("password123"));



// RADIUS 서버에 접속합니다.

radius_send_request($radius, RADIUS_ACCESS_REQUEST);



// RADIUS 서버와 연결을 종료합니다.

radius_close($radius);

?>



# 속성 번호


RADIUS 속성 번호는 다음과 같습니다.

* `RADIUS_USER_NAME`: 사용자 이름 (1)
* `RADIUS_USER_PASSWORD`: 사용자 비밀번호 (2)
* `RADIUS_NAS_IP_ADDRESS`: NAS IP 주소 (4)
* `RADIUS_NAS_PORT`: NAS 포트 (5)
* `RADIUS_SERVICE_TYPE`: 서비스 타입 (6)
* `RADIUS_FRAMED_IP_ADDRESS`: 프레임드 IP 주소 (8)
* `RADIUS_FRAMED_IP_NETMASK`: 프레임드 IP 넷마스크 (9)
* `RADIUS_FRAMED_ROUTING`: 프레임드 라우팅 (10)
* `RADIUS_FRAMED_MTU`: 프레임드 MTU (11)
* `RADIUS_FRAMED_COMPRESSION`: 프레임드 압축 (12)
* `RADIUS_FRAMED_LAT`: 프레임드 LAT (13)
* `RADIUS_FRAMED_TUNNEL_MEDIUM_TYPE`: 프레임드 터널 미디엄 타입 (14)
* `RADIUS_FRAMED_PROTOCOL`: 프레임드 프로토콜 (15)
* `RADIUS_FRAMED_IPX_NETWORK`: 프레임드 IPX 네트워크 (16)
* `RADIUS_FRAMED_IPX_NODE`: 프레임드 IPX 노드 (17)
* `RADIUS_FRAMED_IPX Sokol`: 프레임드 IPX Sokol (18)
* `RADIUS_CALLING_STATION_ID`: 호출 스테이션 ID (31)
* `RADIUS_CALLING_STATION_ID`: 호출 스테이션 ID (32)
* `RADIUS_ACCT_SESSION_ID`: 계정 세션 ID (44)
* `RADIUS_ACCT_START_TIME`: 계정 시작 시간 (46)
* `RADIUS_ACCT_STOP_TIME`: 계정 중지 시간 (47)
* `RADIUS_ACCT_INPUT_OCTETS`: 계정 입력 옥텟 (48)
* `RADIUS_ACCT_OUTPUT_OCTETS`: 계정 출력 옥텟 (49)
* `RADIUS_ACCT_SESSION_TIME`: 계정 세션 시간 (50)
* `RADIUS_ACCT_AUTHENTIC`: 계정 인증 (51)
* `RADIUS_ACCT_STATUS_TYPE`: 계정 상태 타입 (52)
* `RADIUS_ACCT_DELAY_TIME`: 계정 지연 시간 (55)
* `RADIUS_ACCT_INPUT_PACKETS`: 계정 입력 패킷 (60)
* `RADIUS_ACCT_OUTPUT_PACKETS`: 계정 출력 패킷 (61)
* `RADIUS_ACCT_TERMINATE_CAUSE`: 계정 중지 원인 (83)

# 플래그


RADIUS 속성 플래그는 다음과 같습니다.

* `RADIUS_ATTR_FLAG_REQ`: 속성이 필수인 경우 (1)
* `RADIUS_ATTR_FLAG_ALLOC`: 속성이 할당된 경우 (2)
* `RADIUS_ATTR_FLAG_NO_PRINT`: 속성이 프린트되지 않는 경우 (4)
* `RADIUS_ATTR_FLAG_NO_DISPLAY`: 속성이 표시되지 않는 경우 (8)
* `RADIUS_ATTR_FLAG_NO_AUTH`: 속성이 인증되지 않는 경우 (16)
* `RADIUS_ATTR_FLAG_NO_TUNNEL`: 속성이 터널되지 않는 경우 (32)
* `RADIUS_ATTR_FLAG_NO_FILTER`: 속성이 필터되지 않는 경우 (64)

# 참고


* RADIUS 속성 번호와 플래그는 FreeRADIUS 라이브러리의 `radius.h` 파일에 정의되어 있습니다.
* RADIUS 속성 번호와 플래그는 RADIUS 서버의 구성 파일에 정의되어 있습니다.
* RADIUS 속성 번호와 플래그는 RADIUS 프로토콜의 RFC 2865에 정의되어 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 303 페이지

검색

게시물 검색