مجله ایرانیکاسرورآموزش سرور، هاست، وردپرس و شبکه
آموزشی

SBC در VoIP چیست؟ ساخت یک SBC سبک و امن با Kamailio و RTPengine

SBC یا Session Border Controller لایه‌ای در مرز شبکه VoIP است که بین شبکه داخلی شما و اینترنت، SIP Provider یا شعب دیگر قرار می‌گیرد و روی Signaling و در بسیاری از طراحی‌ها روی…

SBC در VoIP چیست؟ ساخت یک SBC سبک و امن با Kamailio و RTPengine
خلاصه سریع این آموزش

SBC یا Session Border Controller لایه‌ای در مرز شبکه VoIP است که بین شبکه داخلی شما و اینترنت، SIP Provider یا شعب دیگر قرار می‌گیرد و روی Signaling و در…

۱۵ دقیقه مطالعه ۰ دیدگاه ۲۷ مهر ۱۴۰۵ آخرین به‌روزرسانی

SBC یا Session Border Controller لایه‌ای در مرز شبکه VoIP است که بین شبکه داخلی شما و اینترنت، SIP Provider یا شعب دیگر قرار می‌گیرد و روی Signaling و در بسیاری از طراحی‌ها روی Media کنترل اعمال می‌کند. اما هر سانترال VoIP الزاماً به یک SBC کامل و سنگین نیاز ندارد. اگر نیاز شما محدود به پنهان‌کردن Topology، کنترل NAT، TLS/SRTP، محدودکردن درخواست‌های SIP و عبور امن Media باشد، می‌توان یک SBC سبک با Kamailio و RTPengine ساخت؛ به شرطی که محدودیت‌های این معماری را بدانید.

نکته مهم این است که «Kamailio + RTPengine» با یک SBC تجاری تمام‌عیار دقیقاً یک چیز نیست. Kamailio در هسته یک SIP Proxy بسیار سریع است و RTPengine لایه Media Proxy را فراهم می‌کند. ترکیب این دو می‌تواند بخش بزرگی از وظایف Edge/SBC را پوشش دهد، اما اگر به B2BUA کامل، SIP Normalization پیچیده، Interworking سنگین، Policyهای سازمانی بسیار پیشرفته یا پشتیبانی Vendor نیاز دارید، SBC تخصصی انتخاب مطمئن‌تری است.

در اکتبر ۲۰۲۶، نسخه پایدار فعلی Kamailio برابر 6.1.5 است که ۱۵ اکتبر منتشر شده و آخرین Stable شاخه 6.1 محسوب می‌شود. برای Media نیز RTPengine چند Release Train موازی دارد و باید شاخه سازگار با Distribution و ماژول Kamailio خودتان را انتخاب کنید.

خلاصه تصمیم: اگر فقط یک PBX کوچک پشت Firewall دارید، احتمالاً SBC لازم نیست. اگر SIP را از اینترنت یا Carrier می‌گیرید، چند PBX دارید، Topology داخلی نباید افشا شود، NAT/WebRTC پیچیده است یا باید TLS/SRTP و Rate Limit را در Edge کنترل کنید، SBC سبک می‌تواند ارزش زیادی ایجاد کند.

فهرست مطالب

SBC در VoIP چیست؟

در معماری SIP، SBC در مرز دو شبکه قرار می‌گیرد. RFC 5853 یکی از نیازهای شناخته‌شده SBC را Topology Hiding معرفی می‌کند؛ یعنی آدرس‌ها و مسیرهای داخلی Proxyها، Gatewayها و Application Serverها نباید بی‌دلیل به طرف بیرونی نمایش داده شوند.

در یک معماری معمول، SBC این وظایف را می‌تواند انجام دهد:

🔹 پنهان‌کردن IP و Routeهای داخلی SIP.

🔹 کنترل NAT و Anchor کردن Media.

🔹 Terminate یا Bridge کردن TLS و SRTP.

🔹 ACL و Rate Limiting روی SIP.

🔹 کنترل Codec و در صورت نیاز Transcoding.

🔹 جداسازی Provider از PBX داخلی.

🔹 Failover و HA در مرز شبکه.

Internet / SIP Carrier
         |
         v
+--------------------+
|    SBC / Edge      |
| Kamailio           |
| RTPengine          |
+--------------------+
         |
         v
Asterisk / FreeSWITCH
Internal VoIP Network

چه زمانی واقعاً به SBC نیاز دارید؟

وجود SIP به‌تنهایی دلیل کافی برای SBC نیست. نیاز واقعی زمانی شکل می‌گیرد که Edge شبکه باید چیزی را کنترل، پنهان یا تبدیل کند.

سناریو نیاز به SBC دلیل
یک PBX کوچک فقط داخل LAN معمولاً نه Edge عمومی SIP ندارید
SIP Trunk مستقیم از اینترنت اغلب مفید ACL، Topology، NAT و امنیت
چند Asterisk/FreeSWITCH بله، معمولاً ورودی واحد، Routing و Failover
WebRTC و کاربران پشت NAT بسیار مفید ICE/SRTP/Media Anchoring
ارتباط با چند Carrier مفید Policy و جداسازی Providerها
SIP بین دو شرکت یا دو Data Center معمولاً مرز امنیتی و Topology
نیاز به SIP Normalization سنگین بله، SBC/B2BUA کامل Proxy ساده ممکن است کافی نباشد

چه زمانی SBC اضافه‌کاری است؟

اگر یک PBX روی شبکه خصوصی دارید، Endpointها از VPN متصل می‌شوند و Provider نیز روی لینک خصوصی یا Firewall کنترل‌شده است، اضافه‌کردن SBC ممکن است فقط Complexity، Latency و نقطه خرابی جدید ایجاد کند.

همچنین اگر فقط هدف شما «بستن Port 5060» است، Firewall درست و ACL روی PBX ممکن است کافی باشد. SBC جای Firewall نیست؛ یک لایه Application-aware برای SIP/Media است.

SBC سبک با Kamailio و RTPengine چه شکلی است؟

در این طراحی Kamailio Signaling را در Edge می‌گیرد و RTPengine Media را Anchor می‌کند:

SIP Carrier / Internet
          |
          | TLS / UDP / TCP
          v
     +-----------+
     | Kamailio  |
     | ACL       |
     | RateLimit |
     | Topology  |
     +-----+-----+
           |
           | SDP control
           v
     +-----------+
     | RTPengine |
     | RTP/SRTP  |
     | NAT       |
     +-----------+
           |
           v
       PBX Pool

در این مدل، PBXهای داخلی فقط IPهای Kamailio/RTPengine را Trust می‌کنند و مستقیماً در معرض اینترنت نیستند.

مرز مهم: Proxy-based SBC با B2BUA کامل فرق دارد

بسیاری از SBCهای کلاسیک به‌صورت B2BUA عمل می‌کنند؛ یعنی یک Dialog SIP را از یک سمت Terminate می‌کنند و Dialog جدیدی در سمت دیگر می‌سازند. RFC 5853 این روش را در بحث Topology Hiding توضیح می‌دهد.

Kamailio ذاتاً Proxy است. می‌تواند Headerها را مخفی یا بازنویسی کند، Transaction/Route را کنترل کند و Media را به RTPengine بدهد؛ اما به‌صورت پیش‌فرض یک B2BUA کامل نیست.

اگر نیاز شما شامل این موارد است، فقط Kamailio Proxy را «SBC کامل» فرض نکنید:

🔹 تبدیل عمیق Call Model بین دو شبکه ناسازگار.

🔹 SIP Normalization پیچیده و Vendor-specific.

🔹 جداکردن کامل Dialog State دو سمت.

🔹 Compliance یا Featureهای Operator-grade خاص.

🔹 Transcoding گسترده و Media Policy بسیار سنگین.

Topology Hiding؛ اولین وظیفه SBC

اگر Provider یک INVITE دریافت کند و داخل Via، Record-Route یا Contact آدرس‌های Private یا نام Backendهای شما را ببیند، مرز شبکه کامل نیست.

ماژول topos در Kamailio برای پنهان‌کردن جزئیات Topology Dialogهای SIP طراحی شده است. مستند رسمی می‌گوید این ماژول Headerهای Routing را که اطلاعات Topology را نشان می‌دهند از پیام خروجی حذف می‌کند و هنگام برگشت دوباره State لازم را Restore می‌کند.

نمونه پایه:

loadmodule "rr.so"
loadmodule "topos.so"

modparam("topos", "storage", "redis")

برای HA، Storage ماژول Topology نیز باید Redundant باشد. اگر دو Kamailio دارید ولی State توپولوژی فقط روی Memory محلی یک Node باشد، Failover Mid-dialog می‌تواند مشکل ایجاد کند.

نکته: Topology Hiding به معنی «امنیت کامل» نیست. حتی بعد از مخفی‌کردن Headerها باید ACL، Firewall، Rate Limit، Auth و Media Security را جداگانه اجرا کنید.

ACL؛ Carrier را فقط از IPهای واقعی خودش بپذیرید

اگر SIP Provider IPهای ثابت یا Range رسمی دارد، نباید هر IP روی اینترنت بتواند خودش را به‌عنوان Carrier معرفی کند.

ماژول permissions در Kamailio برای IP-based ACL طراحی شده و Address/Subnet را می‌تواند از Database به RAM Load کند.

نمونه ساده:

loadmodule "permissions.so"

if (!allow_source_address("1")) {
    send_reply("403", "Forbidden");
    exit;
}

Group شماره 1 می‌تواند شامل IPهای Carrier باشد. در Kamailio 6.1، Address Matching حتی Longest Prefix Match را هم پشتیبانی می‌کند.

Rate Limiting؛ قبل از PBX جلوی Flood را بگیرید

Edge باید بتواند Request Rate غیرطبیعی را قبل از رسیدن به Asterisk تشخیص دهد. ماژول pike IP Source را Track می‌کند و وقتی Rate از Threshold عبور کند، Script شما می‌تواند درخواست را Drop کند.

نمونه:

loadmodule "pike.so"

modparam("pike", "sampling_time_unit", 2)
modparam("pike", "reqs_density_per_unit", 30)

if (!pike_check_req()) {
    exit;
}

عدد 30 فقط مثال است. Threshold واقعی را از Baseline ترافیک خودتان بسازید؛ Carrier پرترافیک، REGISTER Farm و Scan اینترنتی الگوی یکسانی ندارند.

TLS در Signaling؛ کجا Terminate شود؟

در SBC سبک معمولاً Kamailio TLS را در Edge Terminate می‌کند. به این ترتیب Client یا Carrier با TLS به Edge وصل می‌شود و شما تصمیم می‌گیرید سمت Backend نیز TLS باشد یا روی شبکه خصوصی Transport دیگری استفاده شود.

دو مدل رایج:

🔹 TLS End-to-Edge: Carrier → TLS → Kamailio → SIP داخلی.

🔹 TLS Re-encryption: Carrier → TLS → Kamailio → TLS → PBX.

مدل دوم برای Zero-trust یا شبکه چندبخشی امن‌تر است، اما Certificate Lifecycle و Troubleshooting پیچیده‌تر می‌شود.

Kamailio 6.1 قابلیت‌های TLS گسترده‌ای دارد و در Release 6.1 حتی گزینه‌های جدید برای Multi-threaded TLS و چند TLS Connection با Domainهای مختلف اضافه شده است.

SRTP و Media Anchoring با RTPengine

وقتی Media مستقیم بین Carrier و PBX عبور کند، SBC فقط Signaling را می‌بیند. اگر هدف شما کنترل واقعی مرز Media است، RTP باید Anchor شود.

Kamailio از طریق ماژول rtpengine SDP را به RTPengine می‌دهد و RTPengine آدرس و Port Media را Rewrite می‌کند:

loadmodule "rtpengine.so"

modparam("rtpengine", "rtpengine_sock",
    "udp:10.20.0.11:2223 udp:10.20.0.12:2223")

if (has_body("application/sdp")) {
    if (!rtpengine_manage()) {
        send_reply("500", "Media Proxy Error");
        exit;
    }
}

RTPengine می‌تواند RTP/SRTP Bridging، ICE/WebRTC و Media Proxy را انجام دهد. بنابراین اگر Provider RTP ساده می‌دهد و Client SRTP لازم دارد، Media Layer می‌تواند بین این دو Policy قرار بگیرد.

NAT؛ چرا SBC باید Media را ببیند؟

یکی از مهم‌ترین کاربردهای SBC جلوگیری از One-way Audio در مرزهای NAT است. Endpoint ممکن است در SDP آدرس خصوصی بدهد یا Mapping آن با Source واقعی Packet فرق داشته باشد.

RTPengine Media را روی IP عمومی خودش Anchor می‌کند:

Before:
c=IN IP4 192.168.10.25
m=audio 17824 RTP/AVP 0 8

After SBC media anchoring:
c=IN IP4 203.0.113.30
m=audio 32042 RTP/AVP 0 8

از این لحظه هر دو سمت Media را به RTPengine می‌فرستند و شبکه داخلی شما از Carrier جدا می‌شود.

Transcoding؛ SBC را بی‌دلیل Transcoder نکنید

RTPengine از Audio Transcoding پشتیبانی می‌کند، اما این قابلیت رایگان از نظر منابع نیست. مستند رسمی RTPengine توضیح می‌دهد Transcoding در User Space انجام می‌شود و Streamهای Transcodeشده دیگر از In-kernel Packet Forwarding استفاده نمی‌کنند.

مثلاً اگر Carrier فقط G.711 و Client فقط Opus دارد، می‌توانید Transcoding را فعال کنید. در Kamailio:

rtpengine_offer("codec-transcode=PCMU codec-transcode=opus");

اما اگر دو سمت Codec مشترک دارند، Transcoding را روشن نکنید. SBC باید در حالت عادی Media را تا جای ممکن بدون تبدیل عبور دهد.

Capacity Planning: ظرفیت «هزاران RTP Session بدون Transcoding» هیچ تضمینی برای همان تعداد تماس Opus↔G.711 ندارد. Benchmark Transcoding را جدا انجام دهید.

SIP Normalization؛ جایی که SBC سبک ممکن است کم بیاورد

بعضی Carrierها Header، Contact، PAI، Diversion، History-Info یا SDP خاصی می‌فرستند که با PBX شما سازگار نیست. Kamailio ابزارهای زیادی برای Rewrite دارد، اما اگر هر تماس به مجموعه بزرگی از Ruleهای Vendor-specific و Stateful Transformation نیاز پیدا کند، بهتر است معماری را دوباره ارزیابی کنید.

نشانه‌هایی که به SBC/B2BUA کامل نزدیک شده‌اید:

🔹 هر Provider Dialect کاملاً متفاوت SIP دارد.

🔹 باید Dialog دو سمت مستقل شود.

🔹 Transfer، REFER، Re-INVITE و Early Media دائماً به Patch خاص نیاز دارند.

🔹 Header Privacy ساده کافی نیست.

🔹 Interop با تجهیزات Legacy یا IMS پیچیده است.

امنیت؛ SBC فقط چند ماژول Kamailio نیست

یک Edge امن حداقل باید چند لایه داشته باشد:

لایه کار
Firewall بازکردن فقط Transport و Media Range لازم
ACL Trust فقط IPهای Provider/Peer
Sanity ردکردن SIP Message خراب
Max-Forwards جلوگیری از Loop
Pike/Rate Limit محدودکردن Flood
TLS رمزنگاری Signaling
SRTP رمزنگاری Media
Topology Hiding پنهان‌کردن شبکه داخلی

پیش‌نیاز امنیتی: خود VPS Edge نیز باید امن باشد؛ SBC امن روی Linux با SSH ضعیف معنی ندارد.

راهنمای امن‌سازی SSH روی سرور لینوکس

HA؛ یک SBC واحد خودش Single Point of Failure است

اگر تمام تماس‌ها از یک Kamailio عبور می‌کنند، خراب‌شدن همان Node کل Edge را از دسترس خارج می‌کند. برای Production جدی حداقل دو Edge Node نیاز دارید.

              SIP Provider
                   |
             DNS / VIP / LB
              /         \
             v           v
       +----------+ +----------+
       | SBC Edge1| | SBC Edge2|
       | Kamailio | | Kamailio |
       +-----+----+ +----+-----+
             \           /
              \         /
          RTPengine Pool
             /     \
            v       v
          PBX1     PBX2

اما HA فقط دو Process نیست. این Stateها را هم بررسی کنید:

🔹 Topology Hiding State.

🔹 Dialog/Transaction Route.

🔹 RTPengine Session State.

🔹 DNS/VIP Entry Point.

🔹 ACL/Configuration Sync.

اگر Edge-1 وسط تماس از مدار خارج شود، وجود Edge-2 لزوماً Session فعال را بدون وقفه نجات نمی‌دهد. تماس جدید و تماس Active دو Failure Scenario جدا هستند.

OpenSIPS هم می‌تواند SBC سبک باشد؟

بله. OpenSIPS 4.0 نیز ماژول‌های Topology Hiding، Rate Limit، Permissions، Clusterer و RTPengine Integration دارد. نسخه پایدار فعلی شاخه 4.0 برابر 4.0.2 است که ۸ سپتامبر ۲۰۲۶ منتشر شده است.

در OpenSIPS، ماژول topology_hiding Via، Record-Route و Route را پنهان و Contact را بازنویسی می‌کند. همچنین Clusterer برای Replication و وظایف توزیع‌شده بین چند OpenSIPS طراحی شده است.

انتخاب Kamailio یا OpenSIPS برای SBC سبک بیشتر به تجربه تیم، Moduleهای موردنیاز، Automation و Monitoring شما بستگی دارد تا یک برنده مطلق.

SBC سبک یا SBC تجاری؟

نیاز Kamailio + RTPengine SBC تجاری/B2BUA
Topology Hiding بله بله
NAT/Media Anchoring بله بله
TLS/SRTP بله بله
Rate Limiting/ACL بله بله
Transcoding با RTPengine معمولاً یکپارچه
SIP Normalization سنگین نیازمند Script/توسعه معمولاً آماده‌تر
B2BUA کامل ذاتاً نه معمولاً بله
Vendor Support/SLA وابسته به تیم شما معمولاً وجود دارد
هزینه License کم یا صفر معمولاً قابل‌توجه

یک معماری پیشنهادی برای شرکت متوسط

برای یک شرکت با دو SIP Provider، دو Asterisk و WebRTC:

🔹 دو Kamailio به‌عنوان Edge.

🔹 دو RTPengine برای Media HA.

🔹 IP ACL جدا برای هر Carrier.

🔹 TLS برای Endpoint/Carrierهای سازگار.

🔹 SRTP/WebRTC روی Media Edge.

🔹 Dispatcher برای PBX Pool.

🔹 Redis/DB مناسب برای State موردنیاز Topology.

🔹 SIP Capture مرکزی برای Troubleshooting.

Backendهای Asterisk نباید Port SIP عمومی داشته باشند و فقط از Edge Nodeها Request بپذیرند.

Failure Scenarioهایی که باید قبل از Production تست شوند

خرابی انتظار
Kamailio Edge-1 Down تماس جدید از Edge-2 ادامه پیدا کند
RTPengine-1 Down قبل از تماس Media روی Node دوم ساخته شود
RTPengine-1 Down وسط تماس اثر روی Session Active ثبت شود
Carrier IP ناشناس 403 یا Drop قبل از PBX
SIP Flood Edge محدود کند و PBX سالم بماند
TLS Certificate Expired Alert قبل از قطع سرویس
Redis/State Store Down اثر روی Topology/Dialog مشخص شود
Codec mismatch Fail یا Transcoding طبق Policy

Monitoring SBC؛ فقط CPU را نگاه نکنید

Edge VoIP باید بر اساس Protocol Metric مانیتور شود:

🔹 SIP Requests/sec و Calls/sec.

🔹 401/403/408/5xx Rate.

🔹 TLS Handshake Failure.

🔹 Pike Hot IPها و Rate-limit Trigger.

🔹 RTPengine Active Sessions و Packet Rate.

🔹 Packet Loss و One-way Media.

🔹 Transcoding CPU Load.

🔹 Certificate Expiry.

برای Pike:

kamcli rpc pike.top ALL

و برای RTPengine:

kamcmd rtpengine.show all
kamcmd rtpengine.ping all

چک‌لیست تصمیم؛ قبل از ساخت SBC این سؤال‌ها را جواب دهید

سؤال اگر پاسخ بله است
آیا SIP از اینترنت وارد می‌شود؟ Edge/SBC ارزشمند است
آیا IPهای داخلی نباید دیده شوند؟ Topology Hiding لازم است
آیا NAT/WebRTC پیچیده دارید؟ Media Anchoring لازم می‌شود
آیا Carrier و PBX Codec مشترک ندارند؟ Transcoding یا تغییر Policy لازم است
آیا چند PBX دارید؟ Load Balancing/Failover در Edge مفید است
آیا Providerها SIP ناسازگار می‌فرستند؟ ممکن است B2BUA/SBC کامل لازم باشد
آیا SLA و Vendor Support اجباری است؟ SBC تجاری را جدی بررسی کنید
SBC را بر اساس نیاز بسازید، نه صرفاً چون SIP دارید

برای ساخت SBC سبک روی VPS کمک می‌خواهید؟

اگر تعداد Carrierها، PBXها، تماس هم‌زمان، Codecها، TLS/SRTP و نوع NAT مشخص باشند، می‌توان تعیین کرد Kamailio + RTPengine برای شما کافی است یا به B2BUA/SBC کامل نیاز دارید.

ایرانیکاسرور می‌تواند برای تهیه VPS، نصب Kamailio و RTPengine، طراحی Edge، Firewall، TLS/SRTP و تست Failover کمک کند.

تماس با پشتیبانی ایرانیکاسرور: 021-91302467

پرسش‌های رایج

SBC در VoIP چیست؟

SBC یک لایه مرزی برای کنترل SIP و Media بین دو شبکه است و می‌تواند Topology Hiding، NAT، TLS/SRTP، ACL، Rate Limiting، Media Anchoring و Failover را انجام دهد.

آیا هر Asterisk به SBC نیاز دارد؟

خیر. اگر PBX فقط داخل شبکه خصوصی است و SIP عمومی ندارید، SBC ممکن است ضروری نباشد. نیاز واقعی وقتی بیشتر می‌شود که SIP Carrier، اینترنت، چند PBX، WebRTC یا NAT پیچیده وارد معماری شوند.

آیا Kamailio به‌تنهایی SBC است؟

Kamailio می‌تواند بخش بزرگی از وظایف Signaling Edge و SBC را انجام دهد، اما ذاتاً SIP Proxy است و B2BUA کامل نیست. برای Media معمولاً RTPengine و برای بعضی Interopهای پیچیده B2BUA یا SBC تخصصی لازم می‌شود.

RTPengine در SBC چه کاری انجام می‌دهد؟

RTPengine Media را Anchor می‌کند و برای NAT، RTP/SRTP Bridging، WebRTC، ICE و در صورت نیاز Transcoding استفاده می‌شود.

Topology Hiding چه چیزی را مخفی می‌کند؟

اطلاعات Route و Headerهایی مثل Via، Record-Route و Contact می‌توانند ساختار داخلی SIP را آشکار کنند. Topology Hiding این اطلاعات را از طرف بیرونی پنهان می‌کند.

آیا SBC جای Firewall را می‌گیرد؟

خیر. Firewall لایه شبکه را کنترل می‌کند و SBC روی SIP و Media Policy آگاهی بیشتری دارد. در معماری امن هر دو لازم‌اند.

آیا Transcoding را روی SBC فعال کنیم؟

فقط وقتی لازم است. اگر دو سمت Codec مشترک دارند، Transcoding منابع CPU را بی‌دلیل مصرف می‌کند. RTPengine Transcoding را در User Space انجام می‌دهد.

برای HA چند SBC لازم است؟

برای سرویس جدی معمولاً حداقل دو Edge Node لازم است، اما State مربوط به Topology، Media و Entry Point نیز باید در طراحی Failover لحاظ شود.

جمع‌بندی

SBC زمانی ارزش دارد که واقعاً یک «مرز» بین دو شبکه VoIP داشته باشید؛ جایی که باید Topology، NAT، Security، Media یا Policy را کنترل کنید. برای یک PBX کوچک داخل LAN، این لایه ممکن است اضافه باشد.

Kamailio + RTPengine می‌تواند یک SBC سبک و بسیار قدرتمند برای بسیاری از سناریوهای واقعی بسازد: Kamailio Signaling، ACL، TLS، Rate Limiting و Topology را می‌گیرد و RTPengine NAT، SRTP و Media Anchoring را مدیریت می‌کند.

اما این ترکیب را با SBC تجاری/B2BUA کامل یکی ندانید. اگر Interworking پیچیده، SIP Normalization گسترده، Dialog Isolation کامل یا SLA Vendor برایتان حیاتی است، SBC تخصصی منطقی‌تر است.

بهترین تصمیم این است که قبل از نصب، دقیقاً مشخص کنید SBC قرار است کدام مشکل را حل کند. اگر جواب فقط «امنیت بیشتر» است، آن را به Requirementهای قابل‌اندازه‌گیری مثل ACL، TLS، Topology Hiding، Media Anchoring و Failover تبدیل کنید؛ بعد معماری مناسب را انتخاب کنید.

منابع و مستندات
تعریف و نیازهای SBC، Topology Hiding، Kamailio 6.1، ACL، Rate Limit، RTPengine، Transcoding و HA این مقاله با منابع رسمی تا ۱۹ اکتبر ۲۰۲۶ بررسی شده‌اند.
RFC Editor
مرجع معماری و نیازهای SBC، به‌ویژه Topology Hiding و نقش B2BUA در مرز SIP.
RFC Security
مرجع امنیت SIP Peering، Topology Hiding و Hardening اجزای Border.
Kamailio Release
مرجع نسخه پایدار فعلی Kamailio و Compatibility شاخه 6.1.
Kamailio Topology
مرجع Topology Hiding، حذف Headerهای Routing و Storage State در Kamailio.
Kamailio Security
مرجع IP ACL، Subnet Matching و Trusted SIP Requestها.
Kamailio Rate Limit
مرجع تشخیص Source IP با Request Rate غیرعادی و pike_check_req().
RTPengine
مرجع Audio Transcoding و تفاوت آن با In-kernel Packet Forwarding.
Kamailio Media
مرجع Media Anchoring، چند RTPengine، SRTP و codec-transcode در Kamailio.
OpenSIPS
مرجع جایگزین برای ساخت SIP Edge با Topology Hiding در OpenSIPS 4.0.
SBC را با Failure Test و Media Test تحویل بگیرید

برای طراحی SBC سبک روی VPS کمک می‌خواهید؟

قبل از Production باید ACL Carrier، TLS، SRTP، NAT، Rate Limit، Topology Hiding و Failover واقعی تست شوند؛ نه اینکه فقط SIP REGISTER موفق باشد.

تماس با پشتیبانی ایرانیکاسرور: 021-91302467

اشتراک‌گذاری مقاله
گفت‌وگو درباره آموزش

دیدگاه‌ها (۰)

هنوز دیدگاهی ثبت نشده است.

دیدگاه یا سؤال خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *