| HOME / 정보공유 / AIX 명령어 모음

mrouted
mrouted mrouted 디먼 목적 멀티캐스트 데이터그램을 이송합니다. 이 디먼은 AIX 4.2.1 이상에만 적용됩니다. 구문
/usr/sbin/mrouted [ -p ] [ -c Config_File ] [ -d [ Debug_Level ] ]
설명
mrouted는 RFC1075로 지정된 초기 버전인, DVMRP(Distance Vector Multicast Routing Protocol)의 이행입니다. 이것은 역 경로 멀티캐스팅(Reverse Path Multicasting)이라고 하는 멀티캐스트 데이터그램 이송 알고리즘을 이행하는 DVMRP(RFC 1058에서 설명된 RIP와 같이)를 사용하여 위상 정보를 유지합니다.
mrouted는 데이터그램이 시작된 서브네트에 루트가 있는 가장 짧은(역) 경로 트리를 따라 멀티캐스트 데이터그램을 이송합니다. 멀티캐스트 전달 트리는 대상 그룹의 멤버가 있는 서브네트워크 밖으로 확장할 수 없도록 정리된 브로드캐스트 전달 트리로 생각될 수 있습니다. 따라서 데이터그램은 멀티캐스트 그룹의 리스너가 없는 해당 분기를 따라 이송되지 않습니다. 멀티캐스트 데이터그램의 IP 존속 시간은 멀티캐스트 데이터그램의 범위를 제한하는 데 사용될 수 있습니다.
IP 멀티캐스팅을 지원하지 않는 (유니캐스트) 라우터에 의해 분산된 서브네트에서 멀티캐스팅을 지원하기 위해, mrouted는 인터넷에서 임의의 위치에 있는 mrouted 쌍간의 지점간 링크, 터널에 대한 지원을 포함합니다. IP 멀티캐스트 패킷은 터널을 통한 전송을 위해 캡슐화되므로, 라우터와 서브넷에 개입하기 위한 일반적인 유니캐스트 데이터그램처럼 보입니다. 캡슐화는 터널에 진입시 추가되어 터널에서 나갈 때 스트라이프됩니다. 디폴트로, 패킷은 IP-in-IP 프로토콜(IP 프로토콜 번호 4)을 사용하여 캡슐화됩니다. mrouted 터널의 이전 버전은 과중한 로드를 일부 유형의 라우터에 두는 IP 소스 라우팅을 사용합니다. 이 버전에서는 IP 소스 라우트 터널링을 지원하지 않습니다.
터널링 메카니즘을 사용하여 mrouted는 멀티캐스팅만을 위한 가상 인터넷을 구축할 수 있으며, 이러한 가상 인터넷은 물리적 인터넷과 독립적이며 복수의 자치 시스템에 걸쳐있을 수도 있습니다. 이러한 기능은 일정한(유니캐스트) 라우터에 의한 멀티캐스트 라우팅에 대한 폭넓은 지원은 나중으로 미루고, 인터넷 멀티캐스트만을 실험적으로 지원하기 위한 것입니다. mrouted는 DVR(Distance-vector routing) 프로토콜에 대해 잘 알려진 확대 축소 문제를 겪고 있으며 계층적 멀티캐스트 라우팅은 지원하지 않습니다.
mrouted는 멀티캐스트가 가능한 모든 인터페이스(루프백 인터페이스를 제외하고 IFF_MULTICAST 플래그 세트가 있는 인터페이스)로 이송하기 위해 자동으로 자체 구성설정되지만, 인터페이스를 사용하여 직접 도달할 수 있는 다른 mrouted를 찾습니다.
mrouted는 두 개의 사용 가능한 가상 인터페이스(vif)보다 적을 경우, 실행을 초기화하지 않습니다. 여기서, vif는 실제 멀티캐스트가 가능한 인터페이스나 터널 중 하나입니다. 모든 vif가 터널인 경우, 경고를 로그합니다. 그러한 mrouted 구성설정은 더 많은 직접 터널로 보다 잘 대체됩니다.
mrouted는 멀티캐스트 라우팅만을 처리합니다. mrouted와 같은 기계에서 수행 중인 유니캐스트 라우팅 소프트웨어가 있거나 없을 수 있습니다. 터널을 사용하면, mrouted가 멀티캐스트 이송을 수행하기 위해 둘 이상의 실제 서브네트로 액세스하지 않아도 됩니다.
플래그
-c Config_File Config_File 변수가 지정한 대체 구성설정 파일을 사용하여 mrouted 명령을 시작합니다.
다음과 같이 5가지 유형의 구성설정 항목이 있습니다.
phyint local-addr [disable] [metric m] [threshold t] [rate_limit b][boundary (boundary-name|scoped-addr/mask-len)] [altnet
network/mask-len]
tunnel local-addr remote-addr
[
metric m
] [
threshold t
] [
rate_limit b
]
[
boundary
(
boundary-name
scoped-addr
/
mask-len
)]
cache_lifetime ct
pruning off
on
name boundary-name scoped-addr
/
mask-len
AIX 5L Version 5.1 Files Reference의 mrouted.conf File을 참조하십시오.
-d 디버그 레벨을 설정합니다. -d 옵션이 제공되지 않는 경우, 또는 디버그 레벨이 0으로 지정되는 경우, mrouted는 호출하는 터미널로부터 분리됩니다. 그렇지 않은 경우, 호출하는 터미널에 접속된 상태로 해당 터미널로부터 신호에 응답합니다. -d에 인수가 제공되지 않을 경우, 디버그 레벨 디폴트는 2입니다. 디버그 레벨과 상관 없이 mrouted는 항상 시스템 로그 디먼에 대한 오류 메세지 및 경고를 기록합니다. 0이 아닌 디버그 레벨은 다음과 같은 영향을 미칩니다.
레벨 1
모든 시스템 로그 메세지가 stderr로 인쇄됩니다.
레벨 2
모든 레벨 1 메세지와 중요 이벤트의 통보가 stderr로 인쇄됩니다.
레벨 3
모든 레벨 2 메세지와 모든 패킷 도착 및 출발 통보가 stderr로 인쇄됩니다.
시작시, mrouted는 PID를 /etc/mrouted.pid 파일에 기록합니다.
-p 전지(pruning)를 해제합니다. 디폴트는 전지(pruning) 사용 가능입니다.
신호
다음의 신호를 mrouted로 전송할 수 있습니다.
HUP mrouted를 재시작합니다. 구성설정 파일은 이 신호가 호출될 때마다 다시 읽어들입니다.
INT 자연스럽게(즉, 주변의 모든 라우터로 good-bye 메세지를 전송하면서) 실행을 종료합니다.
TERM INT와 같습니다.
USR1 내부 라우팅 테이블을 /usr/tmp/mrouted.dump로 덤프합니다.
USR2 내부 캐쉬 테이블을 /usr/tmp/mrouted.cache로 덤프합니다.
QUIT 내부 라우팅 테이블을 stderr로 덤프합니다(0이 아닌 디버그 레벨로 mrouted를 호출한 경우).
신호 전송의 편리성을 위해, mrouted는 시작시 PID를 /etc/mrouted.pid에 기록합니다.
예제
라우팅 테이블 정보를 표시하려면, 다음을 입력하십시오.
kill -USR1 *cat /etc/mrouted.pid*
이것은 다음 출력을 생성합니다.
Virtual Interface Table
Vif Local-Address Metric Thresh Flags
0 36.2.0.8 subnet: 36.2 1 1 querier
groups: 224.0.2.1
224.0.0.4
pkts in: 3456
pkts out: 2322323
1 36.11.0.1 subnet: 36.11 1 1 querier
groups: 224.0.2.1
224.0.1.0
224.0.0.4
pkts in: 345
pkts out: 3456
2 36.2.0.8 tunnel: 36.8.0.77 3 1
peers: 36.8.0.77 (2.2)
boundaries: 239.0.1
: 239.1.2
pkts in: 34545433
pkts out: 234342
3 36.2.0.8 tunnel: 36.6.8.23 3 16
Multicast Routing Table (1136 entries)
Origin-Subnet From-Gateway Metric Tmr In-Vif Out-Vifs
36.2 1 45 0 1* 2 3*
36.8 36.8.0.77 4 15 2 0* 1* 3*
36.11 1 20 1 0* 2 3*
.
.
.
이 예제에서 두 개의 서브네트 및 두 개의 터널과 연결된 네 개의 vif가 있습니다. vif 3 터널은 사용되지 않습니다(피어 주소 없음). vif 0 및 vif 1 서브네트에는 일부 그룹이 존재합니다. 터널에는 그룹이 없습니다. 이러한 mrouted의 인스턴스는 "querier" 플래그가 표시한 대로 vif0 및 vif1 서브네트의 주기적 그룹 멤버쉽 조회를 전송하는 책임을 집니다. 경계 리스트는 해당 인터페이스에 범위가 지정된 주소를 표시합니다. 수신 및 송신 패킷의 번호 계수는 각각의 인터페이스에서도 표시됩니다.
(서브네트가 직접 연결되지 않은 경우) 이전 홉 라우터(hop router)의 주소, 기점으로 돌아가는 경로 미터법, 마지막으로 수신한 이 서브네트에 대한 갱신 이후의 시간의 크기, 기점으로부터의 멀티캐스트에 대한 수신 vif 및 송신 vif 리스트가 멀티캐스트 데이터그램의 기점이 될 수 있는 각각의 서브네트와 연관됩니다. 별표(*)는 송신 vif에 라우트하는 브로드캐스트 트리의 leaf에 연결되고, 해당 leaf에 대상 그룹의 멤버가 있을 경우에만 그 기점으로부터의 멀티캐스트 데이터그램이 해당 송신 vif로 이송됩니다.
mrouted는 또한 커널 이송 캐쉬 테이블의 사본을 유지합니다. 항목은 mrouted에 의해 작성되고 삭제됩니다.
캐쉬 테이블 정보를 표시하려면, 다음을 입력하십시오.
kill -USR2 *cat /etc/mrouted.pid*
이것은 다음 출력을 생성합니다.
Multicast Routing Cache Table (147 entries)
Origin Mcast-group CTmr Age Ptmr IVif Forwvifs
13.2.116/22 224.2.127.255 3m 2m - 0 1
>13.2.116.19
>13.2.116.196
138.96.48/21 224.2.127.255 5m 2m - 0 1
>138.96.48.108
128.9.160/20 224.2.127.255 3m 2m - 0 1
>128.9.160.45
198.106.194/24 224.2.135.190 9m 28s 9m 0P
>198.106.194.22
각각의 항목은 기점 서브네트 번호 및 마스크, 그리고 대상 멀티캐스트 그룹의 특징이 있습니다. CTmr 필드는 항목의 수명을 표시합니다. 항목은 타이머가 0으로 감소되면 캐쉬 테이블로부터 삭제됩니다. Age 필드는 이 캐쉬 항목이 처음에 작성된 이후의 시간입니다. 통신량이 있으면 캐쉬 항목이 갱신되기 때문에, 라우팅 항목은 이전 항목이 될 수 있습니다. 전지(prune)가 상위 흐름으로 전송되지 않거나 상위 흐름 전지까지의 시간이 시간종료된다면 Ptmr 필드가 대쉬로 나타납니다. Ivif 필드는 해당 기점으로부터 멀티캐스트 패킷을 위한 수신 vif를 표시합니다. 또한 각각의 라우터는 특정 소스와 그룹에 대해 주변 라우터로부터 수신한 전지(prune) 수의 레코드를 유지합니다. 서브네트에 대한 멀티캐스트 트리의 다운로드 링크에 멀티캐스트 그룹 멤버가 없는 경우, 전지(prune) 메세지가 상위 흐름 라우터로 전송됩니다. 전지(prune) 메세지는 vif 번호 다음에 P로 표시됩니다. Forwvifs 필드는 이송되는 소스 그룹에 속하는 데이터그램과 함께 인터페이스를 표시합니다. p는 해당 인터페이스와 함께 이송되는 데이터그램이 없음을 표시합니다. 나열되지 않은 인터페이스는 해당 서브네트의 특정 그룹의 멤버가 없는 leaf 서브네트입니다. 인터페이스의 b는 통신량이 해당 인터페이스의 유효 범위 주소로 이송되지 않는, 경계 인터페이스임을 표시합니다. 첫번째 문자로 보다 큼 부호(>)가 있는 추가의 행이 서브네트의 각각의 소스에 대해 인쇄됩니다. 하나의 서브네트에 많은 소스가 있을 수 있음에 주의하십시오.
파일
/etc/mrouted.conf mrouted 디먼에 대한 구성 정보가 들어 있습니다.
/usr/tmp/mrouted.dump mrouted 디먼에 대한 내부 라우팅 테이블이 들어 있습니다.
/etc/mrouted.pid mrouted 디먼에 대한 프로세스 ID가 들어 있습니다.
/usr/tmp/mrouted.cache mrouted 디먼에 대한 내부 캐쉬 테이블이 들어 있습니다.