JavaScript is required to for searching.
탐색 링크 건너뛰기
인쇄 보기 종료
Oracle Solaris 11.1에서 고정된 네트워크 구성을 사용하여 시스템 연결     Oracle Solaris 11.1 Information Library (한국어)
search filter icon
search icon

문서 정보

머리말

1.  고정된 네트워크 구성 개요

2.  네트워크에 대한 시스템 구성

3.  데이터 링크 작업

4.  IP 인터페이스 작업

기본 ipadm 명령

IP 인터페이스 구성 제거(ipadm delete-ip)

IP 인터페이스 구성 사용 안함(ipadm disable-ip)

인터페이스의 주소 제거(ipadm delete-addr )

IP 인터페이스 등록 정보 설정

패킷 전달 사용

IP 주소 등록 정보 설정

TCP/IP 프로토콜 등록 정보 설정

전역적으로 패킷 전달 사용

권한이 부여된 포트 설정

멀티홈 호스트에 대칭 경로 지정 구현

트래픽 혼잡 제어 구현

TCP 수신 버퍼 크기 변경

IP 인터페이스 및 주소 모니터링

IP 인터페이스에 대한 일반 정보 가져오기

IP 인터페이스에 대한 정보 가져오기

IP 인터페이스 등록 정보에 대한 정보 가져오기

IP 주소에 대한 정보 가져오기

IP 주소 등록 정보에 대한 정보 가져오기

5.  Oracle Solaris 실행 랩탑에서 무선 네트워킹 구성

A.  비교 맵: ifconfigipadm 명령

B.  비교 맵: nddipadm 명령

색인

TCP/IP 프로토콜 등록 정보 설정

ipadm 명령을 사용하면 조정 가능 항목이라고도 하는 프로토콜 등록 정보를 구성할 수 있습니다. ipadm은 이전 릴리스에서 조정 가능 항목을 설정하는 데 주로 사용되었던 ndd 명령을 대체합니다.

TCP/IP 등록 정보는 인터페이스 기반이거나 전역일 수 있습니다. 특정 인터페이스나 영역의 모든 인터페이스에 전역적으로 등록 정보를 적용할 수 있습니다. 전역 등록 정보는 각 비전역 영역에서 다른 값을 사용할 수 있습니다. 지원되는 프로토콜 등록 정보 목록은 ipadm(1M) 매뉴얼 페이지를 참조하십시오.

일반적으로 TCP/IP 인터넷 프로토콜의 기본 값으로도 네트워크가 작동하는 데 충분합니다. 하지만 기본값이 네트워크 토폴로지에 충분하지 않은 경우 필요에 따라 이러한 등록 정보를 사용자 정의할 수 있습니다.

TCP/IP 인터페이스 등록 정보를 설정하는 데에는 세 가지 ipadm 하위 명령이 사용됩니다.


주 - 등록 정보가 여러 값을 수신할 수 있는 경우 다음과 같이 += 수식자를 사용하여 등록 정보에 여러 값을 지정합니다.

ipadm set-prop -p property+=value1 [value2 value3 ...].

등록 정보의 값 세트에서 값을 하나 제거하려면 다음과 같이 -= 수식자를 사용합니다.

ipadm set-prop -p property-=value2


전역적으로 패킷 전달 사용

패킷 전달 사용에서는 인터페이스에서 패킷 전달을 사용으로 설정하는 방법을 보여줍니다. IP 인터페이스 등록 정보에 패킷 전달을 설정하면 이 기능을 선택적으로 구현할 수 있습니다. 시스템의 특정 인터페이스에서만 이 등록 정보를 사용으로 설정할 수 있습니다.

IP 인터페이스 수에 관계없이 전체 시스템에서 패킷 전달을 사용으로 설정하려는 경우, 프로토콜 등록 정보를 사용합니다. 프로토콜에서 등록 정보 이름은 IP 인터페이스와 동일한 forwarding입니다. IPv4 및 IPv6 프로토콜에서 패킷 전달을 사용으로 설정하려면 명령을 별도로 실행해야 합니다.

다음 예제에서는 시스템에서 모든 IPv4 및 IPv6 트래픽에 대해 패킷 전달을 사용으로 설정하는 방법을 보여줍니다.

# ipadm show-prop -p forwarding ip
PROTO   PROPERTY     PERM   CURRENT   PERSISTENT   DEFAULT   POSSIBLE
ipv4    forwarding   rw     off       --           off       on,off
ipv6    forwarding   rw     off       --           off       on,off
#
# ipadm set-prop -p forwarding=on ipv4
# ipadm set-prop -p forwarding=on ipv6
#
# ipadm show-prop ip
PROTO   PROPERTY     PERM   CURRENT   PERSISTENT   DEFAULT   POSSIBLE
ipv4    forwarding   rw     on        on           off       on,off
ipv4    ttl          rw     255       --           255       1-255
ipv6    forwarding   rw     on        on           off       on,off
ipv6    hoplimit     rw     255       --           255       1-255#

주 - IP 인터페이스 또는 프로토콜의 forwarding 등록 정보는 배타적이지 않습니다. 인터페이스 및 프로토콜에 대한 등록 정보를 동시에 설정할 수 있습니다. 예를 들어, 프로토콜에서 전역적으로 패킷 전달을 사용으로 설정한 후 시스템에서 각 IP 인터페이스에 대한 패킷 전달을 사용자 정의할 수 있습니다. 따라서 전역적으로 사용으로 설정되었더라도 시스템에 대해 패킷 전달을 선택적으로 적용할 수 있습니다.


권한이 부여된 포트 설정

TCP, UDP 및 SCTP와 같은 전송 프로토콜에서 1–1023 포트는 root 권한으로 실행되는 프로세스만 이러한 포트에 바인딩할 수 있는 권한이 부여된 기본 포트입니다. ipadm 명령을 사용하면 권한이 부여된 포트가 되도록 이 지정된 기본 범위를 초과하여 포트를 예약할 수 있습니다. 따라서 root 프로세스만 해당 포트에 바인딩할 수 있습니다. 권한이 부여된 포트를 설정하려면 다음과 같은 전송 프로토콜 등록 정보를 사용자 정의합니다.

예를 들어, TCP 포트 30013050root 사용자로만 액세스가 제한된 권한이 부여된 포트로 설정한다고 가정해보십시오. smallest_nonpriv_port 등록 정보는 1024가 권한이 부여되지 않은 포트에 대한 최저 포트 번호임을 나타냅니다. 따라서 지정된 포트 30013050을 권한이 부여된 포트로 변경할 수 있습니다. 이렇게 하려면 다음과 유사한 명령을 실행합니다.

# ipadm show-prop -p smallest_nonpriv_port tcp
PROTO PROPERTY                PERM   CURRENT   PERSISTENT   DEFAULT   POSSIBLE
tcp   smallest_nonpriv_port   rw     1024      --           1024      1024-32768

# ipadm show-prop -p extra_priv_ports tcp
PROTO   PROPERTY           PERM   CURRENT     PERSISTENT   DEFAULT     POSSIBLE
tcp     extra_priv_ports   rw     2049,4045   --           2049,4045   1-65535

# ipadm set-prop -p extra_priv_ports+=3001 tcp        
# ipadm set-prop -p extra_priv_ports+=3050 tcp
# ipadm show-prop -p extra_priv_ports tcp
PROTO   PROPERTY           PERM   CURRENT     PERSISTENT   DEFAULT     POSSIBLE
tcp     extra_priv_ports   rw     2049,4045   3001,3050    2049,4045   1-65535
                                  3001,3050

권한이 부여된 포트에서 포트 중 하나(예: 4045)를 제거하려면 다음 명령을 입력합니다.

# ipadm set-prop -p extra_priv_ports-=4045 tcp
# ipadm show-prop -p extra_priv_ports tcp
PROTO   PROPERTY           PERM   CURRENT     PERSISTENT   DEFAULT     POSSIBLE
tcp     extra_priv_ports   rw     2049,3001   3001,3050    2049,4045   1-65535
                                  3050

멀티홈 호스트에 대칭 경로 지정 구현

기본적으로 여러 인터페이스가 있는 시스템은 멀티홈 호스트라고도 하며, 경로 지정 테이블에서 트래픽 대상까지 가장 긴 일치 경로를 기준으로 네트워크 트래픽의 경로를 지정합니다. 대상까지의 길이가 같은 경로가 여러 개 있을 경우 Oracle Solaris는 ECMP(Equal-Cost Multi-Path) 알고리즘을 적용하여 트래픽을 해당 경로에 분산시킵니다.

이런 방식의 트래픽 분산이 적합하지 않은 경우도 있습니다. 패킷의 IP 소스 주소와 동일한 서브넷에 없는 멀티홈 호스트의 인터페이스를 통해 IP 패킷이 전송될 수 있습니다. 또한 송신 패킷이 특정 수신 요청(예: ICMP 에코 요청)에 대한 응답인 경우 요청과 응답이 동일한 인터페이스를 순회할 수 없습니다. 이러한 트래픽 경로 지정 구성을 비대칭 경로 지정이라고 합니다. 인터넷 서비스 공급자가 RFC 3704(http://rfc-editor.org/rfc/bcp/bcp84.txt)에 설명된 대로 진입 필터링을 구현하는 경우 비대칭 경로 지정 구성으로 인해 공급자가 송신 패킷을 삭제할 수도 있습니다.

RFC 3704는 인터넷에서 서비스 거부 공격을 제한하기 위한 것입니다. 이 의도를 준수하려면 네트워크에서 대칭 경로 지정을 구성해야 합니다. Oracle Solaris에서 IP hostmodel 등록 정보를 사용하면 이 요구 사항을 충족할 수 있습니다. 이 등록 정보는 멀티홈 호스트를 통해 수신 또는 전송된 IP 패킷의 동작을 제어합니다.

hostmodel 등록 정보는 세 가지 가능한 값 중 하나를 가질 수 있습니다.

strong

RFC 1122에 정의된 강력한 ES(엔드 시스템) 모델에 해당합니다. 이 값은 대칭 경로 지정을 구현합니다.

weak

RFC 1122에 정의된 약한 ES 모델에 해당합니다. 이 값에서는 멀티홈 호스트가 비대칭 경로 지정을 사용합니다.

src-priority

기본 경로를 사용하여 패킷 경로 지정을 구성합니다. 경로 지정 테이블에 대상 경로가 여러 개 있는 경우 기본 경로는 송신 패킷의 IP 소스 주소가 구성된 인터페이스를 사용하는 경로입니다. 해당 경로가 없는 경우 송신 패킷은 패킷의 IP 대상에 대한 가장 긴 일치 경로를 사용합니다.

다음 예제에서는 멀티홈 호스트에서 IP 패킷의 대칭 경로 지정을 구현하는 방법을 보여줍니다.

# ipadm set-prop -p hostmodel=strong ip
# ipadm show-prop -p hostmodel ip
PROTO  PROPERTY   PERM  CURRENT  PERSISTENT  DEFAULT   POSSIBLE
ipv6   hostmodel  rw    strong   --          weak      strong,
                                                       src-priority,
                                                       weak
ipv4   hostmodel  rw    strong   --          weak      strong,
                                                       src-priority,
                                                       weak

트래픽 혼잡 제어 구현

네트워크 혼잡은 네트워크가 수용할 수 있는 것보다 많은 수의 패킷을 노드가 전송할 때 일반적으로 라우터 버퍼 오버플로우의 형태로 발생합니다. 여러 알고리즘에서 전송 시스템에 대한 제어를 설정하여 트래픽 혼잡을 방지합니다. 이러한 알고리즘은 Oracle Solaris에서 지원되며 운영 체제에 쉽게 추가하거나 직접 플러그인할 수 있습니다.

다음 표에서는 지원되는 알고리즘을 나열하고 설명합니다.

알고리즘
Oracle Solaris 이름
설명
NewReno
newreno
Oracle Solaris의 기본 알고리즘입니다. 제어 방식에는 발신자의 혼잡 윈도우, 느린 시작 및 혼잡 회피가 포함됩니다.
HighSpeed
highspeed
고속 네트워크를 위한 가장 잘 알려지고 가장 단순한 NewReno 수정 버전 중 하나입니다.
CUBIC
cubic
Linux 2.6에서 현재 기본 알고리즘입니다. 혼잡 회피 위상을 선형 윈도우 증가에서 3차 함수로 변경합니다.
Vegas
vegas
실제 패킷 손실을 트리거하지 않고 혼잡을 예측하려고 시도하는 고전적인 지연 기반 알고리즘입니다.

혼잡 제어는 다음과 같은 제어 관련 TCP 등록 정보를 설정하여 사용으로 설정됩니다. 이러한 등록 정보는 TCP용으로 나열되지만 해당 등록 정보로 사용으로 설정되는 제어 방식은 SCTP 트래픽에도 적용됩니다.

프로토콜에 혼잡 제어를 위한 알고리즘을 추가하려면 다음 명령을 실행합니다.

# ipadm set-prop -p cong_enabled+=algorithm tcp

알고리즘을 제거하려면 다음 명령을 실행합니다.

# ipadm set-prop -p cong_enabled-=algorithm tcp

기본 알고리즘을 바꾸려면 다음 명령을 실행합니다.

# ipadm set-prop -p cong_default=algorithm tcp

주 - 알고리즘을 추가 또는 제거할 때 따라야 할 시퀀스 규칙은 없습니다. 알고리즘을 등록 정보에 추가하기 전 알고리즘을 제거할 수 있습니다. 하지만 cong_default 등록 정보는 항상 알고리즘이 정의되어 있어야 합니다.


다음 예제에서는 혼잡 제어를 구현하기 위해 수행할 수 있는 단계를 보여줍니다. 이 예제에서 TCP 프로토콜의 기본 알고리즘은 newreno에서 cubic으로 변경됩니다. 그런 후 vegas 알고리즘이 사용으로 설정된 알고리즘 목록에서 제거됩니다.

# ipadm show-prop -p cong_default,cong_enabled tcp
PROTO  PROPERTY      PERM  CURRENT          PERSISTENT   DEFAULT   POSSIBLE
tcp    cong_default  rw    newreno          --           newreno   -
tcp    cong_enabled  rw    newreno,cubic,   --           newreno   newreno,cubic,
                           highspeed,                              highspeed,vegas
                           vegas

# ipadm set-prop -p cong_enabled-=vegas tcp
# ipadm set-prop -p cong_default=cubic tcp

# ipadm show-prop -p cong_default,confg_enabled tcp
PROTO  PROPERTY      PERM  CURRENT          PERSISTENT   DEFAULT   POSSIBLE
tcp    cong_default  rw    cubic            --           newreno   -
tcp    cong_enabled  rw    newreno,cubic,   --           newreno   newreno,cubic,
                           highspeed                               highspeed,vegas

TCP 수신 버퍼 크기 변경

TCP 수신 버퍼 크기는 TCP 등록 정보 recv_buf(기본값 128KB)를 사용하여 설정됩니다. 하지만 응용 프로그램은 사용 가능한 대역폭을 동일하게 사용하지 않습니다. 따라서 연결 대기 시간에 따라 기본 크기를 변경해야 할 수 있습니다. 예를 들어, Oracle Solaris의 보안 셸 기능을 사용하면 데이터 스트림에서 수행되는 추가 체크섬 및 암호화 프로세스로 인해 대역폭 사용에 대한 오버헤드가 발생합니다. 따라서 버퍼 크기를 늘려야 할 수 있습니다. 마찬가지로, 대량 전송 보류를 수행하는 응용 프로그램이 대역폭을 효율적으로 사용하도록 하려면 동일한 버퍼 크기 조정이 필요합니다.

다음과 같이 BDP(대역폭 지연 곱)를 예상하여 사용할 올바른 수신 버퍼 크기를 계산할 수 있습니다.

BDP = available_bandwidth * connection-latency

연결 대기 시간 값을 가져오려면 ping -s host를 사용합니다. 대역폭 사용을 예상하려면 uperfiperf 도구를 사용합니다.

적합한 수신 버퍼 크기는 BDP 값에 가깝습니다. 하지만 대역폭 사용은 다양한 옵션에 따라 달라질 수 있습니다. 공유 기반구조 또는 응용 프로그램 수 및 대역폭 사용을 경합하는 사용자로 인해 예상값이 변경될 수 있습니다.

버퍼 크기 값을 변경하려면 다음 구문을 사용하십시오.

# ipdadm set-prop -p recv_buf=value tcp

다음 예제에서는 버퍼 크기를 164KB로 늘리는 방법을 보여줍니다.

# ipadm show-prop -p recv_buf tcp
PROTO PROPERTY   PERM CURRENT   PERSISTENT   DEFAULT  POSSIBLE
tcp   recv_buf   rw   128000       --        128000   2048-1048576

# ipadm set-prop -p recv_buf=164000 tcp

# ipadm show-prop -p recv_buf tcp
PROTO PROPERTY   PERM CURRENT   PERSISTENT   DEFAULT  POSSIBLE
tcp   recv_buf   rw   164000       --        164000   2048-1048576

선호 크기는 각 상황에 따라 달라지므로 버퍼 크기에 대해 선호되는 설정 값은 특정되지 않습니다. 다음은 고유한 특정 조건에서 각 네트워크에 대해 서로 다른 BDP 값을 보여 주는 사례입니다.

버퍼 크기의 기본값이 128KB인 일반적인 1Gbps LAN:
BDP = 128 MBps * 0.001 s = 128 kB
대기 시간이 100ms인 이론적인 1Gbps WAN:
BDP = 128 MBps * 0.1 s = 12.8 MB
유럽-미국 링크(uperf로 측정된 대역폭)
BDP = 2.6 MBps * 0.175 = 470 kB

BDP를 계산할 수 없으면 다음과 같은 관측값을 지침으로 사용하십시오.


주의

주의 - TCP 수신 버퍼 크기를 늘리면 여러 네트워크 응용 프로그램의 메모리 사용 공간이 늘어납니다.