Download presentation
Presentation is loading. Please wait.
Published by Mary Marsh Modified 5年之前
1
李思銳 voip_taiwan@yahoo.com.tw
VoIP系統與SIP協定 李思銳
2
大綱 穿越 NAT 編譯Open Source的STUN Server and Client Outbound Proxy
3
NAT 通常使用 xxx.xxx, xxx.xxx ~ xxx.xxx, 10.xxx.xxx.xxx; 但是沒有強制規定一定要以上的IP range NAT可分為四類: Full Cone Restricted Port Restricted Symmetric
4
Full Cone NAT 來自同一internal ip:port的所有要求都將mapping到相同的external ip:port
internal可以透過internal ip:port external ip:port, 往external傳輸的網路封包 external可以透過external ip:port internal ip:port , 往internal傳輸的網路封包
5
Restricted NAT 來自同一internal ip:port的所有要求都將mapping到相同的external ip:port
external”只能”循原路往internal傳輸網路封包, 也就是, internal曾將某一網路封包傳送到external時, external”才能”把網路封包傳送到internal
6
Port Restricted NAT 與Restricted Cone NAT一樣, 但是限制範圍包括port
7
Symmetric NAT 來自同一內部ip:port的所有要求, 在傳送到某一特定目標ip:port時, 都將mapping到相同的外部ip:port, 如果同一目標傳送的網路封包具有相同的來源ip:port, 但目的地不同, 則使用不同的mapping port 只有收到資料封包的external可以向internal回送UDP封包
8
關於穿越NAT 如果由client來做, 通常是去問外部的server(如STUN server), 目前NAT IP位址為何, 以及偵測NAT的type 如果是server來做, 最有效的做法就是outbound proxy, 這樣的做法就如同H.323裡的proxy mode. 但是, 由於所有的封包都經過outbound server, 網路流量是必需考量的重點
9
編譯與執行STUN Server # tar xvfz stund_0.96_Aug13.tgz # make
# ifconfig eth0:0 linux_host_ip_2 # ./server -v # ./client -v linux_host_ip
10
設定SJPhone – 使用我們的STUN server
11
設定SJPhone – 使用預設的STUN server
12
利用STUN穿越NAT的作法 在REGISTER和INVITE時, 注意Contact這個SIP header欄位的變化
在INVITE時, 注意o, c和m這幾個SDP欄位的變化
13
REGISTER封包 U :5060 -> :5060 REGISTER sip: SIP/2.0. Via: SIP/2.0/UDP ;rport;branch=z9hG4bKc0a80baf b451e2ebc000040ba Content-Length: 0. Contact: Call-ID: CSeq: 5 REGISTER. From: Max-Forwards: 70. To: User-Agent: SJphone/ a (SJ Labs).
14
INVITE封包 U :5060 -> :5060 INVITE SIP/2.0. Via: SIP/2.0/UDP ;rport;branch=z9hG4bKc0a80baf e2f fa Content-Length: 223. Contact: Call-ID: Content-Type: application/sdp. CSeq: 1 INVITE. From: Max-Forwards: 70. To: User-Agent: SJphone/ a (SJ Labs).
15
v=0. o= IN IP4 公網ip. s=SJphone. c=IN IP4公網ip. t=0 0. a=direction:active. m=audio公網port RTP/AVP a=rtpmap:0 PCMU/8000. a=rtpmap:101 telephone-event/8000. a=fmtp: ,16.
16
Quiz If two Uac behind the same NAT, and they enable STUN. What problem will happen?
17
大綱 H.323介紹 Open Source的H.323 terminal 在Linux平台的Gatekeeper 封包擷取與觀察
18
編譯的順序 因為library相依性的問題, 請照下面順序編譯: pwlib openh323 gnugk
19
編譯pwlib # tar xvfz pwlib_1_5_3.tgz # cd pwlib # ./configure # make opt
# make install # cd ..
20
編譯openh323 # tar xvfz openh323_1_12_3.tgz # cd openh323 # ./configure
# make opt # make install # cd ..
21
編譯gnugk # tar xvfz gnugk-2.0.8.tgz # cd openh323gk
編輯Makefile, disable ACCT, RADIUS, MYSQL, PGSQL, WAITARQ # make opt # make install # cd ..
22
啟動gnugk # cp -a /usr/local/lib/libp* /usr/lib/.
# cp -a /usr/local/lib/libh* /usr/lib/. # gnugk -c ./openh323gk/etc/gnugk.ini
23
設定SJPhone 新增一個Profile 使用Call through H.323 Gatekeeper
輸入正確的Gatekeeper Address
24
設定OpenPhone 設定Username和Aliases 更改Local interfaces
25
輸入正確的Gatekeeper Address
關掉OpenPhone後, 再啟動一次
26
擷取封包
27
大綱 SIP IP-PBX: Asterisk Asterisk的編譯與SIP service的啟動 Asterisk的設計概念
TransCoding的問題研究
28
Asterisk的編譯 # tar xvfz asterisk-1.0.11.tar.gz # cd asterisk-1.0.11
# make # make install # make samples
29
Asterisk預設的安裝路徑 執行檔: /usr/sbin/asterisk
Modules: /usr/lib/asterisk/modules Config: /etc/asterisk
30
sip.conf 請見/etc/asterisk/sip.conf, 或是光碟片裡copy出來的default sip config of asterisk 請注意以下一些設定, 我們通常/也許可能會去更改: context=default port=5060 bindaddr=
31
增加SIP client帳號 [1000] type=friend secret=1000 host=dynamic [1001]
32
33
Problem 註冊OK 1000< -- >1001對打不對勁
增加底下兩項到sip.conf的1000和1001帳號裡 nat=yes context=internal
34
增加internal context到extensions
增加internal context到extensions.conf [internal] exten => 100,1,Dial(SIP/1000) exten => 200,1,Dial(SIP/1001) X-Lite(1001)呼叫SJPhone(1000): call 100 SJPhone(1000)呼叫X-Lite(1001): call 200
35
36
37
38
Asterisk的設計概念 Asterisk is so-called IP-PBX 他主要是針對他們的類比或數位的板卡所設計的程式
基本上, 可以將Asterisk視作是一個加強型的Trunk Gateway
39
TransCoding的問題研究 基於上述原因, 預設所有RTP封包都會經過Asterisk
另外Asterisk為解決某些device沒有提供的codec, 他將進到自己本身的封包作codec的轉換 Asterisk的核心codec為PCM16和GSM
40
大綱 SIP互通性研究 研究X-Lite的各種設定 各種Open Source SIP Protocol Stack之比較與探討
SIP RFC 2543和RFC 3261比較與問題 SIP與H.323比較與差異 SIP優缺點與未來之挑戰
41
The setting with X-Lite
Auto Detect IP Listen on IP Listen SIP Port Listen RTP Port NAT Firewall IP Out Bound SIP Proxy Stun Server DNS Server
42
Display Name Username Authorization User Password Domain/Realm SIP Proxy Outbound Proxy Send Internal IP Forward SIP URL Dial Prefix
43
Reregister Proxy Send Compact SIP Messages Send Basic SDP Messages Use SIP rport Timeout
44
SIP rport allows a client to request that the server send the response back to the source IP address and port from which the request originated
45
Open source SIP stack VOCAL: vovida, huge and full functions, support RFC2543 but RFC3261 unknown OPAL: openh323, support H.323 and SIP miniSIP: support TLS oSIP: GNU, very small, C language
46
Hold in RFC2543 RFC3261 hold: a=sendonly, a=recvonly, a=sendrecv
RFC2543 hold: c= Quiz: Is the address “ ” a legal internet address?
47
RFC3261 vs. RFC2543 Please refer chapter 28 of RFC3261
Refer the book “Understanding the Session Initiation Protocol” (second edition), searching the keyword “RFC 2543” Installing the vocal server and client and then testing with your program or device
48
SIP vs. H.323 IETF vs. ITU-T(CCITT) Text vs. ASN.1
SIP URL vs. E164ID/H323ID NAT friendly Gateway mode and prefix number Trunk gateway and connecting to telecommunication SIP servers vs. H.323 gatekeeper
49
The problem with SIP SIP 3261和2543不相容 由於是Text編碼傳輸, 無法保證call setup time
沒有gateway prefix觀念, 需自行實作, 也因此造成某些程度的不相容 在RFC規範裡, MUST字眼很少出現, 各廠商的產品相容性需驗證 SIP某些功能仍然是draft, 也就是還沒定稿 SIP的規範散見各RFC或draft
南投縣教育網路專案 建置說明 2016/7/11 D-Link Taiwan 台中技術支援課 工程師 林俊佑 #23 Version 1.03.
校園資訊安全與防火牆架設 嘉義市育人國小 黃士騰.
动态网站开发 【HTTP与网络基础】 李博杰
Rfc3315 Dynamic Host Configuration Protocol for IPv6 (DHCPv6) 組員: 蔡承翰 A 陳鈺璋 A 翁菘㠙 A 指導老師 吳俊興.
高雄縣網路電話建置經驗與規畫考量 溫桂誠 May 12,2009.
實驗 9: 無線安全網路之建設.
中国科学技术大学 肖 明 军 《网络信息安全》 中国科学技术大学 肖 明 军
校園網路電話專案 基隆市建置說明 D-Link Taiwan DTSS 謝元博 #8667
基隆市校園寬頻有線及無線網路環境 (NGN) 語音交換伺服器暨週邊設備建置簡報 瑪凱電信 VoIP 事業部 經理 何茂誠
UBLink集團 裕笠科技股份有限公司 遠豐科技股份有限公司 鉅創科技股份有限公司
VOIP應用 與進度推廣 臺東大學電算中心 洪守成.
校園網路管理實電務 電子計算機中心 謝進利.
Netman Linux 的防火牆設計與應用 Netman
Subversion (SVN) Presented by 李明璋 R /2/21
宽带路由器配置与应用.
网络地址转换(NAT) 及其实现.
SIP 体系架构.
医学仪器中的嵌入式系统设计 T06.WinCE 网络与通信
Linux.
NAT-PT (Network Address Translation-Protocol Translation)
Similar presentations
© 2024 slidesplayer.com Inc.
All rights reserved.
玻璃钢生产厂家常州玻璃钢仿真水果雕塑定制潍城玻璃钢花盆花器海口做玻璃钢雕塑的浙江装饰商场美陈批发价天津抽象玻璃钢雕塑制作蒙自市玻璃钢雕塑设计供应玻璃钢果篮景观雕塑供应福建人物玻璃钢雕塑批发玻璃钢雕塑龙凤台州抽象玻璃钢雕塑汕头玻璃钢雕塑电话多少嘉定区镜面玻璃钢雕塑来电咨询玻璃钢鹿雕塑哪家正规玻璃钢雕塑关键词长春公园玻璃钢雕塑制作室内商场美陈供应陕西现代人物玻璃钢雕塑书本玻璃钢雕塑形容词衢州玻璃钢雕塑报价水溶性玻璃钢花盆深圳主题商场美陈厂家直销铜仁商场美陈雕塑浙江十二生肖玻璃钢雕塑南宁玻璃钢海洋雕塑玻璃钢雕塑梅花鹿制作教程视频沈阳卡通玻璃钢雕塑厂家玻璃钢雕塑设计感上衣嘉兴抽象玻璃钢雕塑市场江西玻璃钢卡通雕塑熊原阳玻璃钢雕塑加工厂家香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万