Kí ni ìdí tí ìpè SIP fi ń forúkọsílẹ̀ lórí VPN ṣùgbọ́n kò fi ohùn rán
Ìforúkọsílẹ̀ àti ohùn ń gbà ọ̀nà ọ̀tọ̀ọ̀tọ̀. Tẹ̀lé ìpè kan nípasẹ̀ ọ̀nà abẹ́lẹ̀ láti rí àwọn àdírẹ́sì tí PBX lè lò àti ibi tí RTP gbá dúró gan-an.
Ìforúkọsílẹ̀ tí ó ṣàṣeyọrí kò sọ nǹkan kan fẹ́rẹ̀ẹ́ nípa ohùn. Fọ́nù sọ́fítíwéè lè di ìsopọ̀ tí ó wúlò mọ́ PBX ọ́fíìsì fún wákàtí púpọ̀, síbẹ̀ ó tún lè fi ìdákẹ́jẹ́ ránṣẹ́. Ọ̀nà abẹ́lẹ̀ kò gbé kókó tó yàtọ̀ sí àwọn tí ẹnìkan fi mọ̀ọ́mọ̀ rán sínú rẹ̀, ìpè sì ń lo ọ̀nà ọ̀tọ̀ọ̀tọ̀ mẹ́ta: ìsopọ̀, ìṣètò ìjíròrò àti ìṣàn RTP. Tí o bá yà wọ́n sọ́tọ̀, àìṣeéṣe náà yóò bọ́ sórí ọ̀nà kan dípò ọ̀rọ̀ VPN.
Fojú inú wò kọ̀mpútà gbéélé kan lórí Wi-Fi ilé tí ń tẹ ẹ̀ka ọ́fíìsì nípasẹ̀ ọ̀nà abẹ́lẹ̀ tí a fọwọ́ sí. PBX ń jẹ́rìí olùlò, ó gba REGISTER, ẹ̀ka sì farahàn bí ó wà, síbẹ̀ ìpè náà so pọ̀ pẹ̀lú ìdákẹ́jẹ́ pátápátá ní ẹ̀gbẹ́ kan.
Ìforúkọsílẹ̀ so olùbásọ̀rọ̀ pọ̀, kì í ṣe ọ̀nà média
Ìbéèrè REGISTER ń béèrè lọ́wọ́ olùforúkọsílẹ̀ láti tọ́jú ìbámu láàárín àdírẹ́sì àkọsílẹ̀ àti ọ̀kan tàbí púpọ̀ URI olùbásọ̀rọ̀. Ìbámu yẹn ń dáhùn ìbéèrè tóóró nípa ibi tí a gbọ́dọ̀ rán ìjíròrò tuntun sí ní báyìí. Kò sọ nǹkan kan nípa ibi tí média yẹ kí ó wà, ìforúkọsílẹ̀ tí a gbà kò sì fi hàn pé INVITE tó ń bọ̀ gbé àdírẹ́sì média tí ó lè dé. Àwọn ìforúkọsílẹ̀ tún ń parí pẹ̀lú aago, nítorí náà fọ́nù tí ó dá ìmúdójúìwọ̀n dúró yóò pàdánù àwọn ìpè tí ń bọ̀ nígbà tí ọ̀nà abẹ́lẹ̀ rẹ̀ ṣì dàbí aláìlera. Fi ojú tọ́ ìparí olùbásọ̀rọ̀ dípò ipò ọ̀nà abẹ́lẹ̀.
Nígbà tí fọ́nù sọ́fítíwéè wà lẹ́yìn ọ̀nà abẹ́lẹ̀, orí olùbásọ̀rọ̀ lè gbé àdírẹ́sì àdáni. PBX tí ó ń fi í ránṣẹ́ sí ibi ìparí mìíràn yóò dá ìjíròrò tí ó dúró sí nẹ́tíwọ́kì tí ẹni tí a pè kò lè dé. Ṣíṣe rewrite_contact=yes ní ibi ìparí PJSIP ń mú kí PBX rọ́pò àdírẹ́sì orísun tí ó rí, àti pé ìyẹn sábà máa ń jẹ́ ìyàtọ̀ láàárín ìdún àti àkókò píparí.
Ohun tí INVITE ń fi lọ́nà àti ẹni tí ó lè lò ó
INVITE tí ó ní ara SDP ń dábàá ibi tí ẹni tí ń pè fẹ́ gba média: àdírẹ́sì, ibùdó àti àkọ́jọ́ codec. Ẹni tí a pè ń dáhùn pẹ̀lú àdírẹ́sì àti ibùdó rẹ̀ fúnra rẹ̀, lẹ́yìn náà ẹ̀gbẹ́ kọ̀ọ̀kan ń fi RTP ránṣẹ́ sí ibi tí ẹ̀gbẹ́ kejì dábàá. Tí ẹni tí ń pè bá dábàá àdírẹ́sì 192.168.x.x tí ó wà nínú nẹ́tíwọ́kì ilé rẹ̀ nìkan, ẹni tí a pè kò ní ibi láti fi ohùn ránṣẹ́, bí ìfọwọ́sí ṣe mọ́ tó. Ìbòjú ń tún àwọn orí IP kọ nígbà tí kókó ń jáde kúrò nínú olùdarí, ṣùgbọ́n kò tún ọ̀rọ̀ inú ara SDP kọ rárá.
Àlàfo yẹn ń ṣàlàyé ìpè ọ̀nà kan kan àtijọ́: ìfọwọ́sí ń ṣiṣẹ́ nítorí àwọn ibi ìparí méjèèjì ń dé PBX, ohùn sì ń kùnà nítorí a sọ fún ibi ìparí kan pé kí ó ránṣẹ́ sí àdírẹ́sì tí ó wà lẹ́yìn NAT mìíràn nìkan.
| Path | Who picks the address | Typical failure |
|---|---|---|
| REGISTER | Softphone, rewritten by the registrar if configured | Binding expires or points at a private address |
| INVITE and SDP | Each endpoint in its own offer or answer | Offer names a media address nobody can route to |
| RTP | PBX relay policy or the two endpoints | Port range blocked, or no return path |
Ẹni tí ó ń gbé ohùn jẹ́ yíyàn ìṣètò
Ìfọwọ́sí àti média jẹ́ ipa ọ̀tọ̀ọ̀tọ̀. Proxy lè dúró lórí ọ̀nà ìfọwọ́sí fún gbogbo ìpè kò sì fi ọwọ́ kan kókó RTP kan pàápàá. Bóyá PBX yóò di olùgbéjáde média dá lórí ìṣètò, kì í ṣe wíwà ọ̀nà abẹ́lẹ̀.
Pẹ̀lú média tààrà, àwọn ibi ìparí fúnra wọn ń pààrọ̀ RTP, èyí tí ó ń ṣiṣẹ́ dáadáa lórí LAN kan tí ó sì ń ṣiṣẹ́ búburú nígbà tí ẹ̀gbẹ́ kan wà lẹ́yìn ìwọ̀n ibùdó tóóró.
Ṣíṣe direct_media=no ń ti PBX sínú ọ̀nà média kí ẹsẹ̀ méjèèjì lè parí ní àdírẹ́sì tí ó ń ṣàkóso, ní pààrọ̀ ìgbòkègbodò àti processor fún àdírẹ́sì tí a lè ṣe àsọtẹ́lẹ̀. Nígbà tí ó ń gbéjáde, PBX ṣì gbọ́dọ̀ kéde àdírẹ́sì tí ó lè dé. Lórí ẹ̀rọ tí ó ní nẹ́tíwọ́kì púpọ̀, external_media_address àti external_signaling_address nínú pjsip.conf ń pinnu ohun tí yóò farahàn nínú SDP àti nínú orí Via. Tí o bá fi wọ́n sílẹ̀ láìṣètò, PBX lè fi àdírẹ́sì LAN rẹ̀ fún ẹni tí ń pè tí ọ̀nà rẹ̀ kan ṣoṣo jẹ́ ẹ̀gbẹ́ jíjìnnà ti ọ̀nà abẹ́lẹ̀.
Tẹ̀lé ẹ̀gbẹ́ kọ̀ọ̀kan kí o tó fi ọwọ́ kan àwọn ìṣètò
Bẹ̀rẹ̀ pẹ̀lú tábìlì socket lórí PBX nígbà tí ìpè ń lọ: ss -uanp | grep -E '5060|10000' ń fi hàn bóyá a ti so àwọn ibùdó RTP àti irú àdírẹ́sì àdúgbò tí wọ́n ń lò. Tí kò bá sí nǹkan tí a so nínú ìwọ̀n média, olùgbéjáde kò sí lẹ́nu iṣẹ́ àwọn ibi ìparí sì ń sọ̀rọ̀ tààrà. Lẹ́yìn náà gbà á ní ẹ̀gbẹ́ fọ́nù sọ́fítíwéè pẹ̀lú tcpdump -ni any -s0 udp portrange 10000-20000 -w rtp.pcap. Àwọn kókó tí ń jáde láìsí kókó tí ń wọlé ń dín ìṣòro kù sí ọ̀nà ìpadàbọ̀ tàbí àdírẹ́sì tí a sọ fún ẹ̀gbẹ́ jíjìnnà pé kí ó lò, gbígbà tí ó ṣófo sì túmọ̀ sí pé média kò dé ibi ìsopọ̀ ọ̀nà abẹ́lẹ̀ rárá. Gbígbà ìfọwọ́sí pẹ̀lú sngrep ń dáhùn ìlàjì kejì nípasẹ̀ fífi ìlà ìsopọ̀ SDP hàn bí a ti rán an.
Fi àdírẹ́sì inú ìlà ìsopọ̀ yẹn wé àdírẹ́sì tí ẹ̀gbẹ́ jíjìnnà lè gbà ọ̀nà sí gan-an. Ìfiwéra kan náà ń yanjú ọ̀pọ̀ jùlọ àwọn ìjábọ̀ ohùn ẹ̀gbẹ́ kan kíákíá ju àyẹ̀wò ìṣètò èyíkéyìí lọ.
Ìkọ̀wé àṣírí ń dúró ní etí ọ̀nà abẹ́lẹ̀
SIP lórí TLS ń dáàbò bo ìfò tí a ṣètò fún, SRTP ń dáàbò bo média nígbà tí ẹ̀gbẹ́ méjèèjì bá gbà, ọ̀nà abẹ́lẹ̀ sì ń dáàbò bo ìrìnàjò láàárín àwọn ibi ìparí rẹ̀ fúnra rẹ̀. Kò sí ọ̀kan nínú wọn tí ó ń fún èkejì. Ìpè tí a kọ̀wé àṣírí rẹ̀ nínú ọ̀nà abẹ́lẹ̀ lè jáde kúrò ní ẹnubodè pẹ̀lú ọ̀rọ̀ tí ó ṣe kedere sí PBX, ìyẹn sì jẹ́ ìpinnu àpẹẹrẹ, kì í ṣe àbùkù.
Kí o tó pa tikẹ́ẹ̀tì mọ́, jẹ́rìí àwọn nǹkan mẹ́ta lẹ́sẹẹsẹ: ìforúkọsílẹ̀ tuntun ni, SDP ń gbé àdírẹ́sì tí ẹ̀gbẹ́ jíjìnnà lè dé, àwọn kókó sì ń ṣàn ní ẹ̀gbẹ́ méjèèjì lórí àwọn ibùdó média. Tí èyíkéyìí nínú wọn bá jẹ́ irọ́, ọ̀nà abẹ́lẹ̀ kì í ṣe ibi tí ìṣòro wà. Tún ọ̀nà tí ó kùnà ṣe, lẹ́yìn náà tún gbígbà kan náà ṣe láti jẹ́rìí ìyípadà. Pípa àwọn gbígbà ṣáájú àti lẹ́yìn mọ́ ń sọ ìjábọ̀ ẹ̀gbẹ́ kan tó ń bọ̀ di àyẹ̀wò ìṣẹ́jú márùn-ún dípò gbogbo ọ̀sán.