📄 4to6.cfg
字号:
# $Id: 4to6.cfg,v 1.1 2004/03/13 19:57:10 sobomax Exp $## Simple application level gateway config script.## Assumes that SER/rtpproxy run on a machine, which connected to# both IPv4 and IPv6 networks.## Correspondingly, this machine has two IP addresses: one IPv4# and the second one IPv6## For example:## 192.168.0.1 - "internal" IPv4 address# 2002:1234:5678::1 - "external" IPv6 address## rtpproxy started with `-l 192.168.0.1 -6 /2002:1234:5678::1' option.# ser started with `-l 192.168.0.1 -l [2002:1234:5678::1] option.## ------------------ module loading ----------------------------------loadmodule "/usr/local/lib/ser/modules/sl.so"loadmodule "/usr/local/lib/ser/modules/tm.so"loadmodule "/usr/local/lib/ser/modules/rr.so"loadmodule "/usr/local/lib/ser/modules/maxfwd.so"loadmodule "/usr/local/lib/ser/modules/usrloc.so"loadmodule "/usr/local/lib/ser/modules/registrar.so"loadmodule "/usr/local/lib/ser/modules/nathelper.so"# ----------------- setting module-specific parameters ---------------# -- nathelper params --modparam("nathelper", "natping_interval", 15)# ------------------ main fun below ----------------------------------route { # initial sanity checks -- messages with # max_forwars == 0, or excessively long requests, # or those that don't addressed to us if (!mf_process_maxfwd_header("10")) { sl_send_reply("483", "Too Many Hops"); break; }; if (msg:len > max_len) { sl_send_reply("513", "Message too big"); break; }; if (!(uri == myself) && method == "INVITE") { sl_send_reply("403", "Call cannot be served here"); break; }; if (method == "REGISTER") { if (af == inet) { save("location-inet4"); } else if (af == inet6) { save("location-inet6"); } else { sl_send_reply("403", "Call cannot be served here"); }; break; }; if (method == "INVITE") { if (lookup("location-inet4")) { # Comment out three lines below if you want # RTP for IPv4->IPv4 calls to go directly # between UAs if (af == inet) if (force_rtp_proxy("FAII")) t_on_reply("1"); if (af == inet6) if (force_rtp_proxy("FAEI")) t_on_reply("1"); } else if (lookup("location-inet6")) { if (af == inet) if (force_rtp_proxy("FAIE")) t_on_reply("1"); # Comment out three lines below if you want # RTP for IPv6->IPv6 calls to go directly # between UAs if (af == inet6) if (force_rtp_proxy("FAEE")) t_on_reply("1"); } else { sl_send_reply("403", "Call cannot be served here"); break; }; } if (method == "BYE" || method == "CANCEL") unforce_rtp_proxy(); # Do strict routing if pre-loaded route headers present if (loose_route()) { t_relay(); break; }; if (method == "INVITE") record_route(); if (!t_relay()) sl_reply_error();}onreply_route[1] { if (!(status=~"183" || status=~"200")) break; force_rtp_proxy("FA");}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -