Oracle® Solaris 11.2의 TCP/IP 네트워크, IPMP 및 IP 터널 관리

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

SCTP 프로토콜을 사용하는 서비스 추가

SCTP(흐름 제어 전송 프로토콜) 프로토콜은 TCP와 유사한 방식으로 응용 프로그램 계층 프로토콜에 서비스를 제공합니다. 하지만 SCTP는 둘 중 하나 또는 모두가 멀티홈일 수 있는 두 시스템 간의 통신을 가능하게 합니다. SCTP 연결을 연관이라고 합니다. 연관에서 응용 프로그램은 하나 이상의 메시지 스트림(다중 스트림이라고도 함)으로 전송될 데이터를 구분합니다. SCTP 연결은 IP 주소가 여러 개인 끝점으로 이동할 수 있으므로 전화 기술 응용 프로그램에서 특히 중요합니다. 사이트에서 IP 필터 또는 IPsec를 사용하는 경우 보안상 SCTP의 멀티 홈 기능을 고려해야 합니다. 이러한 고려 사항 중 몇 가지는 sctp(7P) 매뉴얼 페이지에서 설명됩니다.

SCTP 프로토콜을 사용하는 서비스를 추가하는 방법

기본적으로 SCTP는 Oracle Solaris에 포함되어 있으므로 추가로 구성할 필요가 없습니다. 단, SCTP를 사용하도록 특정 응용 프로그램 계층 서비스를 명시적으로 구성해야 합니다. echodiscard가 이러한 응용 프로그램에 해당합니다. 다음 절차는 SCTP 일대일 스타일 소켓을 사용하는 echo 서비스를 추가하는 방법에 대해 설명합니다. TCP 및 UDP에도 동일한 절차를 사용하여 서비스를 추가할 수 있습니다.

다음 작업은 inetd 데몬에서 관리하는 SCTP inet 서비스를 SMF 저장소에 추가하는 방법에 대해 설명합니다. 그런 다음 SMF 명령을 사용하여 서비스를 추가하는 방법에 대해서도 설명합니다.

시작하기 전에

다음 절차를 수행하기 전에 서비스에 대한 매니페스트 파일을 만드십시오. 예를 들어 이 절차에서는 echo 서비스에 대한 매니페스트(echo.sctp.xml)를 사용합니다.

  1. 시스템 파일에 대한 쓰기 권한이 있는 사용자 계정으로 로컬 시스템에 로그인합니다.
  2. pfedit 명령을 사용하여 새 서비스에 대한 정의를 /etc/services 파일에 추가합니다.

    pfedit(1M) 매뉴얼 페이지를 참조하십시오.

    서비스 정의에 대해 다음 구문을 사용합니다.

    service-name port/protocol aliases
  3. 서비스 매니페스트가 저장된 디렉토리로 변경한 다음 서비스 매니페스트를 가져옵니다.
    # cd dir-name
    # svccfg import service-manifest-name

    예를 들어 service.dir 디렉토리에 있는 echo.sctp.xml 매니페스트를 사용하여 새 SCTP echo 서비스를 추가합니다.

    # cd service.dir
    # svccfg import echo.sctp.xml
  4. 서비스 매니페스트가 추가되었는지 확인합니다.
    # svcs FMRI

    FMRI 인수로 서비스 매니페스트의 FMRI(Fault Managed Resource Identifier)를 사용합니다.

  5. 수정해야 할지 여부를 결정할 서비스의 등록 정보를 나열합니다.
    # inetadm -l FMRI
  6. 새 서비스를 사용으로 설정합니다.
    # inetadm -e FMRI
  7. 서비스가 사용으로 설정되었는지 확인합니다.
예 1-2  SCTP 전송 프로토콜을 사용하는 서비스 추가

다음 예는 사용할 명령 및 echo 서비스가 SCTP를 사용하도록 하는 데 필요한 파일 항목을 보여 줍니다.

# cat /etc/services
.
.
echo            7/tcp
echo            7/udp
echo            7/sctp

# cd service.dir

# svccfg import echo.sctp.xml

# svcs network/echo*
STATE          STIME    FMRI
disabled       15:46:44 svc:/network/echo:dgram
disabled       15:46:44 svc:/network/echo:stream
disabled       16:17:00 svc:/network/echo:sctp_stream

# inetadm -l svc:/network/echo:sctp_stream
SCOPE    NAME=VALUE
         name="echo"
         endpoint_type="stream"
         proto="sctp"
         isrpc=FALSE
         wait=FALSE
         exec="/usr/lib/inet/in.echod -s"
         user="root"
default  bind_addr=""
default  bind_fail_max=-1
default  bind_fail_interval=-1
default  max_con_rate=-1
default  max_copies=-1
default  con_rate_offline=-1
default  failrate_cnt=40
default  failrate_interval=60
default  inherit_env=TRUE
default  tcp_trace=FALSE
default  tcp_wrappers=FALSE

# inetadm -e svc:/network/echo:sctp_stream

# inetadm | grep echo
disabled  disabled       svc:/network/echo:stream
disabled  disabled       svc:/network/echo:dgram
enabled   online         svc:/network/echo:sctp_stream