SIP (Session Initiation Protocol)

Support HackTricks

Basic Information

SIP (Session Initiation Protocol) एक सिग्नलिंग और कॉल नियंत्रण प्रोटोकॉल है जो मल्टीमीडिया सत्रों, जिसमें वॉयस, वीडियो, और इंस्टेंट मैसेजिंग शामिल हैं, को स्थापित, संशोधित, और समाप्त करने के लिए व्यापक रूप से उपयोग किया जाता है, जो IP नेटवर्क पर होता है। इसे इंटरनेट इंजीनियरिंग टास्क फोर्स (IETF) द्वारा विकसित किया गया था, SIP को RFC 3261 में परिभाषित किया गया है और यह VoIP और एकीकृत संचार के लिए एक मानक बन गया है।

SIP की कुछ प्रमुख विशेषताएँ हैं:

  1. पाठ-आधारित प्रोटोकॉल: SIP एक पाठ-आधारित प्रोटोकॉल है, जो इसे मानव-पठनीय बनाता है और डिबग करना आसान बनाता है। यह HTTP के समान एक अनुरोध-प्रतिक्रिया मॉडल पर आधारित है, और कॉल सत्रों को नियंत्रित करने के लिए INVITE, ACK, BYE, और CANCEL जैसे तरीकों का उपयोग करता है।

  2. स्केलेबिलिटी और लचीलापन: SIP अत्यधिक स्केलेबल है और इसे छोटे पैमाने पर तैनाती के साथ-साथ बड़े उद्यम और कैरियर-ग्रेड वातावरण में भी उपयोग किया जा सकता है। इसे नए फीचर्स के साथ आसानी से विस्तारित किया जा सकता है, जिससे यह विभिन्न उपयोग के मामलों और आवश्यकताओं के लिए अनुकूलनीय बनता है।

  3. अंतर-संचालनीयता: SIP की व्यापक स्वीकृति और मानकीकरण विभिन्न उपकरणों, अनुप्रयोगों, और सेवा प्रदाताओं के बीच बेहतर अंतर-संचालनीयता सुनिश्चित करता है, जो विभिन्न प्लेटफार्मों के बीच निर्बाध संचार को बढ़ावा देता है।

  4. मॉड्यूलर डिज़ाइन: SIP अन्य प्रोटोकॉल जैसे RTP (रीयल-टाइम ट्रांसपोर्ट प्रोटोकॉल) के साथ काम करता है जो मीडिया ट्रांसमिशन के लिए और SDP (सेशन विवरण प्रोटोकॉल) जो मल्टीमीडिया सत्रों का वर्णन करने के लिए है। यह मॉड्यूलर डिज़ाइन विभिन्न मीडिया प्रकारों और कोडेक्स के साथ अधिक लचीलापन और संगतता की अनुमति देता है।

  5. प्रॉक्सी और रीडायरेक्ट सर्वर: SIP कॉल रूटिंग को सुविधाजनक बनाने और कॉल फॉरवर्डिंग, कॉल ट्रांसफर, और वॉयसमेल सेवाओं जैसी उन्नत सुविधाएँ प्रदान करने के लिए प्रॉक्सी और रीडायरेक्ट सर्वरों का उपयोग कर सकता है।

  6. उपस्थिति और इंस्टेंट मैसेजिंग: SIP केवल वॉयस और वीडियो संचार तक सीमित नहीं है। यह उपस्थिति और इंस्टेंट मैसेजिंग का भी समर्थन करता है, जो एक विस्तृत श्रृंखला के एकीकृत संचार अनुप्रयोगों को सक्षम बनाता है।

इसके कई लाभों के बावजूद, SIP को कॉन्फ़िगर और प्रबंधित करना जटिल हो सकता है, विशेष रूप से NAT ट्रैवर्सल और फ़ायरवॉल मुद्दों से निपटने के दौरान। हालाँकि, इसकी बहुपरकारीता, स्केलेबिलिटी, और उद्योग में व्यापक समर्थन इसे VoIP और मल्टीमीडिया संचार के लिए एक लोकप्रिय विकल्प बनाते हैं।

SIP Methods

RFC 3261 में परिभाषित मुख्य SIP विधियाँ हैं:

  1. INVITE: एक नए सत्र (कॉल) को शुरू करने या एक मौजूदा को संशोधित करने के लिए उपयोग किया जाता है। INVITE विधि सत्र विवरण (आमतौर पर SDP का उपयोग करके) ले जाती है ताकि प्राप्तकर्ता को प्रस्तावित सत्र के विवरण के बारे में सूचित किया जा सके, जैसे मीडिया प्रकार, कोडेक्स, और ट्रांसपोर्ट प्रोटोकॉल।

  2. ACK: एक INVITE अनुरोध के अंतिम प्रतिक्रिया की प्राप्ति की पुष्टि करने के लिए भेजा जाता है। ACK विधि INVITE लेनदेन की विश्वसनीयता सुनिश्चित करती है।

  3. BYE: एक स्थापित सत्र (कॉल) को समाप्त करने के लिए उपयोग किया जाता है। BYE विधि सत्र में किसी भी पक्ष द्वारा भेजी जाती है ताकि यह संकेत दिया जा सके कि वे संचार समाप्त करना चाहते हैं।

  4. CANCEL: सत्र स्थापित होने से पहले एक लंबित INVITE अनुरोध को रद्द करने के लिए भेजा जाता है। CANCEL विधि भेजने वाले को INVITE लेनदेन को रद्द करने की अनुमति देती है यदि वे अपना मन बदलते हैं या यदि प्राप्तकर्ता से कोई प्रतिक्रिया नहीं होती है।

  5. OPTIONS: एक SIP सर्वर या उपयोगकर्ता एजेंट की क्षमताओं के बारे में पूछताछ करने के लिए उपयोग किया जाता है। OPTIONS विधि को सत्र स्थापित किए बिना समर्थित विधियों, मीडिया प्रकारों, या अन्य एक्सटेंशन के बारे में जानकारी मांगने के लिए भेजा जा सकता है।

  6. REGISTER: एक उपयोगकर्ता एजेंट द्वारा SIP रजिस्ट्रार सर्वर के साथ अपनी वर्तमान स्थिति को पंजीकृत करने के लिए उपयोग किया जाता है। REGISTER विधि उपयोगकर्ता के SIP URI और उनके वर्तमान IP पते के बीच एक अद्यतन मैपिंग बनाए रखने में मदद करती है, जिससे कॉल रूटिंग और डिलीवरी सक्षम होती है।

ध्यान दें कि किसी को कॉल करने के लिए REGISTER का उपयोग करना आवश्यक नहीं है। हालांकि, यह संभव है कि INVITE करने के लिए कॉल करने वाले को पहले प्रमाणित होना पड़े या उसे 401 Unauthorized प्रतिक्रिया प्राप्त होगी।

इन मुख्य विधियों के अलावा, अन्य RFCs में परिभाषित कई SIP एक्सटेंशन विधियाँ हैं, जैसे:

  1. SUBSCRIBE: RFC 6665 में परिभाषित, SUBSCRIBE विधि का उपयोग एक विशिष्ट संसाधन, जैसे उपयोगकर्ता की उपस्थिति या कॉल स्थिति के बारे में सूचनाएँ प्राप्त करने के लिए किया जाता है।

  2. NOTIFY: RFC 6665 में भी परिभाषित, NOTIFY विधि एक सर्वर द्वारा एक सदस्यता प्राप्त उपयोगकर्ता एजेंट को निगरानी किए गए संसाधन की स्थिति में बदलाव के बारे में सूचित करने के लिए भेजी जाती है।

  3. REFER: RFC 3515 में परिभाषित, REFER विधि का उपयोग प्राप्तकर्ता से एक ट्रांसफर करने या तीसरे पक्ष को संदर्भित करने के लिए अनुरोध करने के लिए किया जाता है। यह आमतौर पर कॉल ट्रांसफर परिदृश्यों के लिए उपयोग किया जाता है।

  4. MESSAGE: RFC 3428 में परिभाषित, MESSAGE विधि का उपयोग SIP उपयोगकर्ता एजेंटों के बीच तत्काल संदेश भेजने के लिए किया जाता है, जो SIP ढांचे के भीतर पाठ-आधारित संचार को सक्षम बनाता है।

  5. UPDATE: RFC 3311 में परिभाषित, UPDATE विधि एक सत्र को संशोधित करने की अनुमति देती है बिना मौजूदा संवाद की स्थिति को प्रभावित किए। यह एक चल रहे कॉल के दौरान कोडेक्स या मीडिया प्रकारों जैसे सत्र पैरामीटर को अपडेट करने के लिए उपयोगी है।

  6. PUBLISH: RFC 3903 में परिभाषित, PUBLISH विधि का उपयोग एक उपयोगकर्ता एजेंट द्वारा एक सर्वर पर घटना स्थिति जानकारी प्रकाशित करने के लिए किया जाता है, जिससे यह अन्य इच्छुक पक्षों के लिए उपलब्ध हो जाता है।

SIP Response Codes

  • 1xx (प्रारंभिक प्रतिक्रियाएँ): ये प्रतिक्रियाएँ संकेत करती हैं कि अनुरोध प्राप्त हुआ था, और सर्वर इसे संसाधित करना जारी रख रहा है।

  • 100 Trying: अनुरोध प्राप्त हुआ, और सर्वर इस पर काम कर रहा है।

  • 180 Ringing: कॉल करने वाले को सूचित किया जा रहा है और वह कॉल लेगा।

  • 183 Session Progress: कॉल की प्रगति के बारे में जानकारी प्रदान करता है।

  • 2xx (सफल प्रतिक्रियाएँ): ये प्रतिक्रियाएँ संकेत करती हैं कि अनुरोध सफलतापूर्वक प्राप्त, समझा, और स्वीकार किया गया।

  • 200 OK: अनुरोध सफल रहा, और सर्वर ने इसे पूरा किया।

  • 202 Accepted: अनुरोध संसाधित करने के लिए स्वीकार किया गया, लेकिन यह अभी पूरा नहीं हुआ है।

  • 3xx (रीडायरेक्शन प्रतिक्रियाएँ): ये प्रतिक्रियाएँ संकेत करती हैं कि अनुरोध को पूरा करने के लिए आगे की कार्रवाई की आवश्यकता है, आमतौर पर एक वैकल्पिक संसाधन से संपर्क करके।

  • 300 Multiple Choices: कई विकल्प उपलब्ध हैं, और उपयोगकर्ता या क्लाइंट को एक चुनना होगा।

  • 301 Moved Permanently: अनुरोधित संसाधन को एक नया स्थायी URI सौंपा गया है।

  • 302 Moved Temporarily: अनुरोधित संसाधन अस्थायी रूप से एक अलग URI पर उपलब्ध है।

  • 305 Use Proxy: अनुरोध को एक निर्दिष्ट प्रॉक्सी पर भेजा जाना चाहिए।

  • 4xx (क्लाइंट त्रुटि प्रतिक्रियाएँ): ये प्रतिक्रियाएँ संकेत करती हैं कि अनुरोध में खराब वाक्यविन्यास है या इसे सर्वर द्वारा पूरा नहीं किया जा सकता।

  • 400 Bad Request: अनुरोध गलत या अमान्य था।

  • 401 Unauthorized: अनुरोध के लिए उपयोगकर्ता प्रमाणीकरण की आवश्यकता है।

  • 403 Forbidden: सर्वर ने अनुरोध को समझा लेकिन इसे पूरा करने से इनकार कर दिया।

  • 404 Not Found: अनुरोधित संसाधन सर्वर पर नहीं मिला।

  • 408 Request Timeout: सर्वर को समय के भीतर एक पूर्ण अनुरोध प्राप्त नहीं हुआ।

  • 486 Busy Here: कॉल करने वाला वर्तमान में व्यस्त है और कॉल नहीं ले सकता।

  • 5xx (सर्वर त्रुटि प्रतिक्रियाएँ): ये प्रतिक्रियाएँ संकेत करती हैं कि सर्वर ने एक वैध अनुरोध को पूरा करने में विफलता दिखाई।

  • 500 Internal Server Error: सर्वर ने अनुरोध को संसाधित करते समय एक त्रुटि का सामना किया।

  • 501 Not Implemented: सर्वर उस कार्यक्षमता का समर्थन नहीं करता है जो अनुरोध को पूरा करने के लिए आवश्यक है।

  • 503 Service Unavailable: सर्वर वर्तमान में रखरखाव या ओवरलोड के कारण अनुरोध को संभालने में असमर्थ है।

  • 6xx (वैश्विक विफलता प्रतिक्रियाएँ): ये प्रतिक्रियाएँ संकेत करती हैं कि अनुरोध को किसी भी सर्वर द्वारा पूरा नहीं किया जा सकता।

  • 600 Busy Everywhere: कॉल के लिए सभी संभावित गंतव्य व्यस्त हैं।

  • 603 Decline: कॉल करने वाला कॉल में भाग लेना नहीं चाहता।

  • 604 Does Not Exist Anywhere: अनुरोधित संसाधन नेटवर्क में कहीं भी उपलब्ध नहीं है।

Examples

SIP INVITE Example

INVITE sip:jdoe@example.com SIP/2.0
Via: SIP/2.0/UDP pc33.example.com;branch=z9hG4bK776asdhds
Max-Forwards: 70
To: John Doe <sip:jdoe@example.com>
From: Jane Smith <sip:jsmith@example.org>;tag=1928301774
Call-ID: a84b4c76e66710
CSeq: 314159 INVITE
Contact: <sip:jsmith@pc33.example.com>
User-Agent: ExampleSIPClient/1.0
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO
Content-Type: application/sdp
Content-Length: 142

v=0
o=jsmith 2890844526 2890842807 IN IP4 pc33.example.com
s=-
c=IN IP4 pc33.example.com
t=0 0
m=audio 49170 RTP/AVP 0
a=rtpmap:0 PCMU/8000te
प्रत्येक पैरामीटर की व्याख्या
  1. Request-Line: INVITE sip:jdoe@example.com SIP/2.0 - यह पंक्ति विधि (INVITE), अनुरोध URI (sip:jdoe@example.com), और SIP संस्करण (SIP/2.0) को दर्शाती है।

  2. Via: Via: SIP/2.0/UDP pc33.example.com;branch=z9hG4bK776asdhds - Via हेडर परिवहन प्रोटोकॉल (UDP) और क्लाइंट का पता (pc33.example.com) निर्दिष्ट करता है। "branch" पैरामीटर लूप पहचान और लेनदेन मिलान के लिए उपयोग किया जाता है।

  3. Max-Forwards: Max-Forwards: 70 - यह हेडर फ़ील्ड प्रॉक्सी द्वारा अनुरोध को आगे बढ़ाने की अधिकतम संख्या को सीमित करता है ताकि अनंत लूप से बचा जा सके।

  4. To: To: John Doe <sip:jdoe@example.com> - To हेडर कॉल के प्राप्तकर्ता को निर्दिष्ट करता है, जिसमें उनका प्रदर्शन नाम (John Doe) और SIP URI (sip:jdoe@example.com) शामिल है।

  5. From: From: Jane Smith <sip:jsmith@example.org>;tag=1928301774 - From हेडर कॉल के प्रेषक को निर्दिष्ट करता है, जिसमें उनका प्रदर्शन नाम (Jane Smith) और SIP URI (sip:jsmith@example.org) शामिल है। "tag" पैरामीटर संवाद में प्रेषक की भूमिका को अद्वितीय रूप से पहचानने के लिए उपयोग किया जाता है।

  6. Call-ID: Call-ID: a84b4c76e66710 - Call-ID हेडर दो उपयोगकर्ता एजेंटों के बीच कॉल सत्र को अद्वितीय रूप से पहचानता है।

  7. CSeq: CSeq: 314159 INVITE - CSeq हेडर में एक अनुक्रम संख्या और अनुरोध में उपयोग की गई विधि होती है। इसका उपयोग प्रतिक्रियाओं को अनुरोधों से मिलाने और अनुक्रम से बाहर संदेशों का पता लगाने के लिए किया जाता है।

  8. Contact: Contact: <sip:jsmith@pc33.example.com> - Contact हेडर प्रेषक के लिए एक सीधा मार्ग प्रदान करता है, जिसका उपयोग बाद के अनुरोधों और प्रतिक्रियाओं के लिए किया जा सकता है।

  9. User-Agent: User-Agent: ExampleSIPClient/1.0 - User-Agent हेडर प्रेषक के सॉफ़्टवेयर या हार्डवेयर के बारे में जानकारी प्रदान करता है, जिसमें इसका नाम और संस्करण शामिल है।

  10. Allow: Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO - Allow हेडर प्रेषक द्वारा समर्थित SIP विधियों की सूची देता है। यह प्राप्तकर्ता को यह समझने में मदद करता है कि संचार के दौरान कौन सी विधियाँ उपयोग की जा सकती हैं।

  11. Content-Type: Content-Type: application/sdp - Content-Type हेडर संदेश शरीर के मीडिया प्रकार को निर्दिष्ट करता है, इस मामले में, SDP (सत्र विवरण प्रोटोकॉल)।

  12. Content-Length: Content-Length: 142 - Content-Length हेडर बाइट्स में संदेश शरीर के आकार को दर्शाता है।

  13. Message Body: संदेश शरीर में SDP सत्र विवरण होता है, जिसमें प्रस्तावित सत्र के लिए मीडिया प्रकार, कोडेक, और परिवहन प्रोटोकॉल के बारे में जानकारी शामिल होती है।

  • v=0 - प्रोटोकॉल संस्करण (SDP के लिए 0)

  • o=jsmith 2890844526 2890842807 IN IP4 pc33.example.com - उत्पत्ति और सत्र पहचानकर्ता

  • s=- - सत्र का नाम (एकल हाइफ़न का अर्थ है कोई सत्र नाम नहीं)

  • c=IN IP4 pc33.example.com - कनेक्शन जानकारी (नेटवर्क प्रकार, पता प्रकार, और पता)

  • t=0 0 - समय जानकारी (शुरुआत और समाप्ति समय, 0 0 का अर्थ है कि सत्र सीमित नहीं है)

  • m=audio 49170 RTP/AVP 0 - मीडिया विवरण (मीडिया प्रकार, पोर्ट संख्या, परिवहन प्रोटोकॉल, और प्रारूप सूची)। इस मामले में, यह RTP/AVP (रीयल-टाइम ट्रांसपोर्ट प्रोटोकॉल / ऑडियो वीडियो प्रोफ़ाइल) का उपयोग करते हुए एक ऑडियो स्ट्रीम को निर्दिष्ट करता है और प्रारूप 0 (PCMU/8000)।

  • a=rtpmap:0 PCMU/8000 - प्रारूप (0) को कोडेक (PCMU) और इसकी घड़ी दर (8000 Hz) से मैप करने वाला विशेषता।

SIP REGISTER उदाहरण

REGISTER विधि सत्र आरंभ प्रोटोकॉल (SIP) में उपयोग की जाती है ताकि एक उपयोगकर्ता एजेंट (UA), जैसे VoIP फोन या सॉफ़्टफोन, SIP रजिस्ट्रार सर्वर के साथ अपनी स्थिति को पंजीकृत कर सके। यह प्रक्रिया सर्वर को यह जानने देती है कि पंजीकृत उपयोगकर्ता के लिए आने वाले SIP अनुरोधों को कहाँ रूट करना है। रजिस्ट्रार सर्वर आमतौर पर एक SIP प्रॉक्सी सर्वर या एक समर्पित पंजीकरण सर्वर का हिस्सा होता है।

यहाँ REGISTER प्रमाणीकरण प्रक्रिया में शामिल SIP संदेशों का एक विस्तृत उदाहरण है:

  1. UA से रजिस्ट्रार सर्वर के लिए प्रारंभिक REGISTER अनुरोध:

REGISTER sip:example.com SIP/2.0
Via: SIP/2.0/UDP 192.168.1.100:5060;branch=z9hG4bK776asdhds
Max-Forwards: 70
From: Alice <sip:alice@example.com>;tag=565656
To: Alice <sip:alice@example.com>
Call-ID: 1234567890@192.168.1.100
CSeq: 1 REGISTER
Contact: <sip:alice@192.168.1.100:5060>;expires=3600
Expires: 3600
Content-Length: 0

यह प्रारंभिक REGISTER संदेश UA (एलीस) द्वारा रजिस्ट्रार सर्वर को भेजा जाता है। इसमें महत्वपूर्ण जानकारी शामिल होती है जैसे कि इच्छित पंजीकरण अवधि (Expires), उपयोगकर्ता का SIP URI (sip:alice@example.com), और उपयोगकर्ता का संपर्क पता (sip:alice@192.168.1.100:5060)।

  1. 401 Unauthorized रजिस्ट्रार सर्वर से प्रतिक्रिया:

cssCopy codeSIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 192.168.1.100:5060;branch=z9hG4bK776asdhds
From: Alice <sip:alice@example.com>;tag=565656
To: Alice <sip:alice@example.com>;tag=7878744
Call-ID: 1234567890@192.168.1.100
CSeq: 1 REGISTER
WWW-Authenticate: Digest realm="example.com", nonce="abcdefghijk", algorithm=MD5, qop="auth"
Content-Length: 0

The registrar server responds with a "401 Unauthorized" message, which includes a "WWW-Authenticate" header. This header contains information required for the UA to authenticate itself, such as the authentication realm, nonce, and algorithm.

  1. REGISTER request with authentication credentials:

REGISTER sip:example.com SIP/2.0
Via: SIP/2.0/UDP 192.168.1.100:5060;branch=z9hG4bK776asdhds
Max-Forwards: 70
From: Alice <sip:alice@example.com>;tag=565656
To: Alice <sip:alice@example.com>
Call-ID: 1234567890@192.168.1.100
CSeq: 2 REGISTER
Contact: <sip:alice@192.168.1.100:5060>;expires=3600
Expires: 3600
Authorization: Digest username="alice", realm="example.com", nonce="abcdefghijk", uri="sip:example.com", response="65a8e2285879283831b664bd8b7f14d4", algorithm=MD5, cnonce="lmnopqrst", qop=auth, nc=00000001
Content-Length: 0

UA एक और REGISTER अनुरोध भेजता है, इस बार आवश्यक क्रेडेंशियल्स जैसे कि उपयोगकर्ता नाम, क्षेत्र, नॉनस, और एक प्रतिक्रिया मान शामिल करते हुए "Authorization" हेडर के साथ, जो प्रदान की गई जानकारी और उपयोगकर्ता के पासवर्ड का उपयोग करके गणना की जाती है।

इस तरह Authorization प्रतिक्रिया की गणना की जाती है:

import hashlib

def calculate_sip_md5_response(username, password, realm, method, uri, nonce, nc, cnonce, qop):
# 1. Calculate HA1 (concatenation of username, realm, and password)
ha1_input = f"{username}:{realm}:{password}"
ha1 = hashlib.md5(ha1_input.encode()).hexdigest()

# 2. Calculate HA2 (concatenation of method and uri)
ha2_input = f"{method}:{uri}"
ha2 = hashlib.md5(ha2_input.encode()).hexdigest()

# 3. Calculate the final response value (concatenation of h1, stuff and h2)
response_input = f"{ha1}:{nonce}:{nc}:{cnonce}:{qop}:{ha2}"
response = hashlib.md5(response_input.encode()).hexdigest()

return response

# Example usage
username = "alice"
password = "mysecretpassword"
realm = "example.com"
method = "REGISTER"
uri = "sip:example.com"
nonce = "abcdefghijk"
nc = "00000001"
cnonce = "lmnopqrst"
qop = "auth"

response = calculate_sip_md5_response(username, password, realm, method, uri, nonce, nc, cnonce, qop)
print(f"MD5 response value: {response}")
  1. सफल पंजीकरण प्रतिक्रिया रजिस्ट्रार सर्वर से:

SIP/2.0 200 OK
Via: SIP/2.0/UDP 192.168.1.100:5060;branch=z9hG4bK776asdhds
From: Alice <sip:alice@example.com>;tag=565656
To: Alice <sip:alice@example.com>;tag=7878744
Call-ID: 1234567890@192.168.1.100
CSeq: 2 REGISTER
Contact: <sip:alice@192.168.1.100:5060>;expires=3600
Expires: 3600
Content-Length: 0

After the registrar server verifies the provided credentials, यह "200 OK" प्रतिक्रिया भेजता है यह संकेत करने के लिए कि पंजीकरण सफल था। प्रतिक्रिया में पंजीकृत संपर्क जानकारी और पंजीकरण के लिए समाप्ति समय शामिल होता है। इस बिंदु पर, उपयोगकर्ता एजेंट (एलीस) SIP रजिस्ट्रार सर्वर के साथ सफलतापूर्वक पंजीकृत है, और एलीस के लिए आने वाले SIP अनुरोधों को उचित संपर्क पते पर रूट किया जा सकता है।

कॉल उदाहरण

यह उल्लेख नहीं किया गया है, लेकिन उपयोगकर्ता B को कॉल प्राप्त करने से पहले Proxy 2 को एक REGISTER संदेश भेजना होगा

Support HackTricks

Last updated