Kamailio-kamailio.cfg: Difference between revisions
(→Basic) |
|||
Line 57: | Line 57: | ||
</pre> | </pre> | ||
=== Routing Blocks Section === | |||
Configuration 파일의 마지막 부분으로서 SIP 트래픽의 routing logic 을 설정한다. | |||
가장 중요한 routing block 은 request_route 이다. 이 request_route 에서 SIP 트래픽의 경로를 결정한다. | |||
<pre> | |||
request_route { | |||
# per request initial checks | |||
route(REQINIT); | |||
... | |||
} | |||
branch_route[MANAGE_BRANCH] { | |||
xdbg("new branch [$T_branch_idx] to $ru\n"); | |||
route(NATMANAGE); | |||
} | |||
</pre> | |||
== See also == | == See also == |
Revision as of 10:27, 13 July 2019
Overview
kamailio.cfg 파일 내용 정리
Basic
kamailio.cfg 파일은 크게 세가지 영역으로 구분된다.
- global parameters
- modules settings
- routing blocks
Global Parameters Section
Configuration 파일의 첫번째 부분으로, Kamailio 의 core 와 custom global parameter 설정을 한다.
일반적으로 다음과 같이 설정된다.
name=value
name 부분은 core parameter 에 나와있는 항목이어야 한다. 만약 항목에 없는 name 을 설정했다면, kamailio 는 에러를 발생시키고 시작하지 앟는다.
value 부분은 integer, boolean, string 으로 설정한다. 하지만 몇몇 parameter 들은 복합된 형식의 value 로도 설정이 가능하다.
log_facility=LOG_LOCAL0 children=4 disable_tcp=yes alias="sip.mydomain.com" listen=udp:10.0.0.10:5060
대부분의 parameter의 설정은 라인의 끝부분까지이지만, 세미콜론(;)을 사용할 수도 있다. 이는 parameter 설정이 한번에 여러개의 값을 설정할 수 있도록 허용한 경우에 사용할 수 있다.
alias="sip.mydomain.com";
만약 reserved config keyword 를 parameter로 사용하고 싶다면, ""로 감싸야 한다. 아래의 예에서 reserved config keyword 는 "dns"이다.
listen=tcp:127.0.0.1:5060 advertise "sip.dns.example.com":5060
Modules Settings Section
Configuration file 의 두번째 부분으로써, module 들을 로드하는 지시어와 설정값들로 이루어져 있다.
설정의 첫부분에는 mpath 지시어로 모듈 디렉토리를 지정한다.
/* set paths to location of modules */ # mpath="/usr/local/lib64/kamailio/modules/"
loadmoudle 과 modparam 지시어가 사용된다.
loadmodule "debugger.so" ... modparam("debugger", "cfgtrace", 1)
Routing Blocks Section
Configuration 파일의 마지막 부분으로서 SIP 트래픽의 routing logic 을 설정한다.
가장 중요한 routing block 은 request_route 이다. 이 request_route 에서 SIP 트래픽의 경로를 결정한다.
request_route { # per request initial checks route(REQINIT); ... } branch_route[MANAGE_BRANCH] { xdbg("new branch [$T_branch_idx] to $ru\n"); route(NATMANAGE); }