[OpenSIPS-Users] udp or tcp for nat traversal?

Bogdan-Andrei Iancu bogdan at opensips.org
Wed Oct 15 14:44:55 CEST 2014


George, you can get all that info by using ngrep or tcpdump to see the 
actual traffic.

Regards,

Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com

On 15.10.2014 14:25, george wu wrote:
>
> Hi, Bogdan:
> 1)
> I can find the ip from the pinging message, but can't get the port.
> Can you tell me the script to print port?
> 2)
> Also how to check the relay for invite in the log message?
> I can't see the ip/port for the invite relay message in the log.
> It simply Cancel sent out, sending 408 (0x7f9858507f28)
> see below
>
> ///////////////////////////////
>
> Oct 15 19:04:51 [15160] DBG:core:udp_rcv_loop: probing packet received 
> len = 4
> Oct 15 19:04:54 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> ......
> Oct 15 19:04:29 [15164] DBG:tm:timer_routine: timer 
> routine:0,tl=0x7f9858508178 next=0x7f9858508378, timeout=873
> Oct 15 19:04:29 [15164] DBG:tm:final_response_handler: Cancel sent 
> out, sending 408 (0x7f9858507f28)
>
>
> /////The following is opensips invite log messages
>
>
>
>
> Oct 15 19:04:24 [15159] DBG:core:parse_msg: SIP Request:
> Oct 15 19:04:24 [15159] DBG:core:parse_msg:  method: <INVITE>
> Oct 15 19:04:24 [15159] DBG:core:parse_msg:  uri: 
> <sip:test2 at 103.24.228.158>
> Oct 15 19:04:24 [15159] DBG:core:parse_msg:  version: <SIP/2.0>
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=2
> Oct 15 19:04:24 [15159] DBG:core:parse_via_param: found param type 
> 232, <branch> = <z9hG4bK.1tcd1QMAc>; state=6
> Oct 15 19:04:24 [15159] DBG:core:parse_via_param: found param type 
> 235, <rport> = <n/a>; state=17
> Oct 15 19:04:24 [15159] DBG:core:parse_via: end of header reached, state=5
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: via found, flags=2
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: this is the first via
> Oct 15 19:04:24 [15159] DBG:core:receive_msg: After parse_msg...
> Oct 15 19:04:24 [15159] DBG:core:receive_msg: preparing to run routing 
> scripts...
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=ffffffffffffffff
> Oct 15 19:04:24 [15159] DBG:core:parse_to: end of header reached, state=9
> Oct 15 19:04:24 [15159] DBG:core:parse_to: display={}, 
> ruri={sip:test2 at 103.24.228.158}
> Oct 15 19:04:24 [15159] DBG:core:get_hdr_field: <To> [26]; 
> uri=[sip:test2 at 103.24.228.158]
> Oct 15 19:04:24 [15159] DBG:core:get_hdr_field: to body 
> [sip:test2 at 103.24.228.158
> ]
> Oct 15 19:04:24 [15159] DBG:core:get_hdr_field: cseq <CSeq>: <20> <INVITE>
> Oct 15 19:04:24 [15159] DBG:core:get_hdr_field: content_length=729
> Oct 15 19:04:24 [15159] DBG:core:get_hdr_field: found end of header
> Oct 15 19:04:24 [15159] DBG:core:parse_params: Parsing params 
> for:[+sip.instance="<urn:uuid:866598bd-4f5e-47f9-b7fa-8be6c6883a57>"]
> Oct 15 19:04:24 [15159] DBG:maxfwd:is_maxfwd_present: value = 70
> Oct 15 19:04:24 [15159] DBG:uri:has_totag: no totag
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=78
> Oct 15 19:04:24 [15159] DBG:tm:t_lookup_request: start searching: 
> hash=53427, isACK=0
> Oct 15 19:04:24 [15159] DBG:tm:matching_3261: RFC3261 transaction 
> matching failed
> Oct 15 19:04:24 [15159] DBG:tm:t_lookup_request: no transaction found
> Oct 15 19:04:24 [15159] DBG:core:parse_to_param: tag=eC6yy-cLm
> Oct 15 19:04:24 [15159] DBG:core:parse_to: end of header reached, state=29
> Oct 15 19:04:24 [15159] DBG:core:parse_to: display={}, 
> ruri={sip:test1 at 103.24.228.158}
> Oct 15 19:04:24 [15159] DBG:core:grep_sock_info: checking if host==us: 
> 14==14 &&  [103.24.228.158] == [103.24.228.158]
> Oct 15 19:04:24 [15159] DBG:core:grep_sock_info: checking if port 5060 
> matches port 5060
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=200
> Oct 15 19:04:24 [15159] DBG:rr:find_first_route: No Route headers found
> Oct 15 19:04:24 [15159] DBG:rr:loose_route: There is no Route HF
> Oct 15 19:04:24 [15159] DBG:core:grep_sock_info: checking if host==us: 
> 14==14 &&  [103.24.228.158] == [103.24.228.158]
> Oct 15 19:04:24 [15159] DBG:core:grep_sock_info: checking if port 5060 
> matches port 5060
> Oct 15 19:04:24 [15159] DBG:registrar:lookup: found a complete match
> Oct 15 19:04:24 [15159] DBG:registrar:lookup: setting as ruri 
> <sip:test2 at 192.168.1.3:5080>
> Oct 15 19:04:24 [15159] DBG:registrar:lookup: looking for branches
> Oct 15 19:04:24 [15159] DBG:registrar:lookup: setting branch 
> <sip:test2 at 124.193.138.210:5299>
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=ffffffffffffffff
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=8
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=8
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=8000000
> Oct 15 19:04:24 [15159] DBG:rr:add_rr_param: adding (;nat=yes) 
> 0x7f985bfe1250
> Oct 15 19:04:24 [15159] DBG:tm:t_newtran: transaction on entrance=(nil)
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=ffffffffffffffff
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=78
> Oct 15 19:04:24 [15159] DBG:tm:t_lookup_request: start searching: 
> hash=53427, isACK=0
> Oct 15 19:04:24 [15159] DBG:tm:matching_3261: RFC3261 transaction 
> matching failed
> Oct 15 19:04:24 [15159] DBG:tm:t_lookup_request: no transaction found
> Oct 15 19:04:24 [15159] DBG:tm:run_reqin_callbacks: 
> trans=0x7f9858507f28, callback type 1, id 0 entered
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=78
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=ffffffffffffffff
> Oct 15 19:04:24 [15159] DBG:core:_shm_resize: resize(0) called
> Oct 15 19:04:24 [15159] DBG:tm:_reply_light: reply sent out. 
> buf=0x7f985bfe1d78: SIP/2.0 1..., shmem=0x7f985850bb48: SIP/2.0 1
> Oct 15 19:04:24 [15159] DBG:tm:_reply_light: finished
> Oct 15 19:04:24 [15159] DBG:core:buf_init: initializing...
> new branch at sip:test2 at 192.168.1.3:5080
> Oct 15 19:04:24 [15159] DBG:core:_shm_resize: resize(0) called
> Oct 15 19:04:24 [15159] DBG:core:mk_proxy: doing DNS lookup...
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=2000
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=ffffffffffffffff
> Oct 15 19:04:24 [15159] DBG:core:clen_builder: content-length: 871 (871)
> new branch at sip:test2 at 124.193.138.210:5299
> Oct 15 19:04:24 [15159] DBG:core:_shm_resize: resize(0) called
> Oct 15 19:04:24 [15159] DBG:core:mk_proxy: doing DNS lookup...
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=2000
> Oct 15 19:04:24 [15159] DBG:core:parse_headers: flags=ffffffffffffffff
> Oct 15 19:04:24 [15159] DBG:core:clen_builder: content-length: 871 (871)
> Oct 15 19:04:24 [15159] DBG:tm:set_timer: relative timeout is 500000
> Oct 15 19:04:24 [15159] DBG:tm:insert_timer_unsafe: [4]: 
> 0x7f9858508148 (869000000)
> Oct 15 19:04:24 [15159] DBG:tm:insert_timer_unsafe: [0]: 
> 0x7f9858508178 (873)
> Oct 15 19:04:24 [15159] DBG:tm:set_timer: relative timeout is 500000
> Oct 15 19:04:24 [15159] DBG:tm:insert_timer_unsafe: [4]: 
> 0x7f9858508348 (869000000)
> Oct 15 19:04:24 [15159] DBG:tm:insert_timer_unsafe: [0]: 
> 0x7f9858508378 (873)
> Oct 15 19:04:24 [15159] DBG:tm:t_relay_to: new transaction fwd'ed
> Oct 15 19:04:24 [15159] DBG:tm:t_unref: UNREF_UNSAFE: [0x7f9858507f28] 
> after is 0
> Oct 15 19:04:24 [15159] DBG:core:destroy_avp_list: destroying list (nil)
> Oct 15 19:04:24 [15159] DBG:core:receive_msg: cleaning up
> Oct 15 19:04:24 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:24 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:24 [15164] DBG:tm:utimer_routine: timer 
> routine:4,tl=0x7f9858508148 next=0x7f9858508348, timeout=869000000
> Oct 15 19:04:24 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : request resending (t=0x7f9858507f28, INVITE 
> si ... )
> Oct 15 19:04:24 [15164] DBG:tm:set_timer: relative timeout is 1000000
> Oct 15 19:04:24 [15164] DBG:tm:insert_timer_unsafe: [5]: 
> 0x7f9858508148 (870000000)
> Oct 15 19:04:24 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : done
> Oct 15 19:04:24 [15164] DBG:tm:utimer_routine: timer 
> routine:4,tl=0x7f9858508348 next=(nil), timeout=869000000
> Oct 15 19:04:24 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : request resending (t=0x7f9858507f28, INVITE 
> si ... )
> Oct 15 19:04:24 [15164] DBG:tm:set_timer: relative timeout is 1000000
> Oct 15 19:04:24 [15164] DBG:tm:insert_timer_unsafe: [5]: 
> 0x7f9858508348 (870000000)
> Oct 15 19:04:24 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : done
> Oct 15 19:04:25 [15164] DBG:tm:utimer_routine: timer 
> routine:5,tl=0x7f9858508148 next=0x7f9858508348, timeout=870000000
> Oct 15 19:04:25 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : request resending (t=0x7f9858507f28, INVITE 
> si ... )
> Oct 15 19:04:25 [15164] DBG:tm:set_timer: relative timeout is 2000000
> Oct 15 19:04:25 [15164] DBG:tm:insert_timer_unsafe: [6]: 
> 0x7f9858508148 (872000000)
> Oct 15 19:04:25 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : done
> Oct 15 19:04:25 [15164] DBG:tm:utimer_routine: timer 
> routine:5,tl=0x7f9858508348 next=(nil), timeout=870000000
> Oct 15 19:04:25 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : request resending (t=0x7f9858507f28, INVITE 
> si ... )
> Oct 15 19:04:25 [15164] DBG:tm:set_timer: relative timeout is 2000000
> Oct 15 19:04:25 [15164] DBG:tm:insert_timer_unsafe: [6]: 
> 0x7f9858508348 (872000000)
> Oct 15 19:04:25 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : done
> Oct 15 19:04:28 [15164] DBG:tm:utimer_routine: timer 
> routine:6,tl=0x7f9858508148 next=0x7f9858508348, timeout=872000000
> Oct 15 19:04:28 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : request resending (t=0x7f9858507f28, INVITE 
> si ... )
> Oct 15 19:04:28 [15164] DBG:tm:set_timer: relative timeout is 4000000
> Oct 15 19:04:28 [15164] DBG:tm:insert_timer_unsafe: [7]: 
> 0x7f9858508148 (876000000)
> Oct 15 19:04:28 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : done
> Oct 15 19:04:28 [15164] DBG:tm:utimer_routine: timer 
> routine:6,tl=0x7f9858508348 next=(nil), timeout=872000000
> Oct 15 19:04:28 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : request resending (t=0x7f9858507f28, INVITE 
> si ... )
> Oct 15 19:04:28 [15164] DBG:tm:set_timer: relative timeout is 4000000
> Oct 15 19:04:28 [15164] DBG:tm:insert_timer_unsafe: [7]: 
> 0x7f9858508348 (876000000)
> Oct 15 19:04:28 [15164] DBG:tm:retransmission_handler: 
> retransmission_handler : done
> Oct 15 19:04:29 [15164] DBG:tm:timer_routine: timer 
> routine:0,tl=0x7f9858508178 next=0x7f9858508378, timeout=873
> Oct 15 19:04:29 [15164] DBG:tm:final_response_handler: Cancel sent 
> out, sending 408 (0x7f9858507f28)
> Oct 15 19:04:29 [15164] DBG:tm:t_should_relay_response: T_code=100, 
> new_code=408
> Oct 15 19:04:29 [15164] DBG:tm:relay_reply: branch=0, save=1, relay=-1
> Oct 15 19:04:29 [15164] DBG:tm:final_response_handler: done
> Oct 15 19:04:29 [15164] DBG:tm:timer_routine: timer 
> routine:0,tl=0x7f9858508378 next=(nil), timeout=873
> Oct 15 19:04:29 [15164] DBG:tm:final_response_handler: Cancel sent 
> out, sending 408 (0x7f9858507f28)
> Oct 15 19:04:29 [15164] DBG:tm:t_should_relay_response: T_code=100, 
> new_code=408
> Oct 15 19:04:29 [15164] DBG:tm:t_pick_branch: picked branch 0, code 
> 408 (prio=800)
> Oct 15 19:04:29 [15164] DBG:tm:is_3263_failure: dns-failover test: 
> branch=0, last_recv=408, flags=1
> Oct 15 19:04:29 [15164] DBG:tm:t_should_relay_response: trying 
> DNS-based failover
> Oct 15 19:04:29 [15164] DBG:tm:run_trans_callbacks: 
> trans=0x7f9858507f28, callback type 32, id 0 entered
> ACC: call missed: 
> timestamp=1413371069;method=INVITE;from_tag=eC6yy-cLm;to_tag=;call_id=OHtW9D~WiH;code=408;reason=Request 
> Timeout
> Oct 15 19:04:29 [15164] DBG:tm:relay_reply: branch=1, save=0, relay=0
> Oct 15 19:04:29 [15164] DBG:core:parse_headers: flags=ffffffffffffffff
> Oct 15 19:04:29 [15164] DBG:tm:set_timer: relative timeout is 500000
> Oct 15 19:04:29 [15164] DBG:tm:insert_timer_unsafe: [4]: 
> 0x7f9858508070 (873400000)
> Oct 15 19:04:29 [15164] DBG:tm:insert_timer_unsafe: [0]: 
> 0x7f98585080a0 (878)
> Oct 15 19:04:29 [15164] DBG:tm:relay_reply: sent buf=0x7f985bfdd030: 
> SIP/2.0 4..., shmem=0x7f985850bb48: SIP/2.0 4
> Oct 15 19:04:29 [15164] DBG:tm:run_trans_callbacks: 
> trans=0x7f9858507f28, callback type 128, id 0 entered
> Oct 15 19:04:29 [15164] DBG:tm:final_response_handler: done
> Oct 15 19:04:29 [15161] DBG:core:parse_msg: SIP Request:
> Oct 15 19:04:29 [15161] DBG:core:parse_msg:  method: <ACK>
> Oct 15 19:04:29 [15161] DBG:core:parse_msg:  uri: 
> <sip:test2 at 103.24.228.158>
> Oct 15 19:04:29 [15161] DBG:core:parse_msg:  version: <SIP/2.0>
> Oct 15 19:04:29 [15161] DBG:core:parse_headers: flags=2
> Oct 15 19:04:29 [15161] DBG:core:parse_via_param: found param type 
> 232, <branch> = <z9hG4bK.1tcd1QMAc>; state=6
> Oct 15 19:04:29 [15161] DBG:core:parse_via_param: found param type 
> 235, <rport> = <n/a>; state=17
> Oct 15 19:04:29 [15161] DBG:core:parse_via: end of header reached, state=5
> Oct 15 19:04:29 [15161] DBG:core:parse_headers: via found, flags=2
> Oct 15 19:04:29 [15161] DBG:core:parse_headers: this is the first via
> Oct 15 19:04:29 [15161] DBG:core:receive_msg: After parse_msg...
> Oct 15 19:04:29 [15161] DBG:core:receive_msg: preparing to run routing 
> scripts...
> Oct 15 19:04:29 [15161] DBG:sl:sl_filter_ACK: to late to be a local ACK!
> Oct 15 19:04:29 [15161] DBG:core:parse_headers: flags=ffffffffffffffff
> Oct 15 19:04:29 [15161] DBG:core:parse_to_param: 
> tag=d8bd1b57441363f641ce73441337eed0-d2b8
> Oct 15 19:04:29 [15161] DBG:core:parse_to: end of header reached, state=29
> Oct 15 19:04:29 [15161] DBG:core:parse_to: display={}, 
> ruri={sip:test2 at 103.24.228.158}
> Oct 15 19:04:29 [15161] DBG:core:get_hdr_field: <To> [70]; 
> uri=[sip:test2 at 103.24.228.158]
> Oct 15 19:04:29 [15161] DBG:core:get_hdr_field: to body 
> [<sip:test2 at 103.24.228.158>]
> Oct 15 19:04:29 [15161] DBG:core:get_hdr_field: cseq <CSeq>: <20> <ACK>
> Oct 15 19:04:29 [15161] DBG:core:get_hdr_field: found end of header
> Oct 15 19:04:29 [15161] DBG:core:parse_params: Parsing params 
> for:[+sip.instance="<urn:uuid:866598bd-4f5e-47f9-b7fa-8be6c6883a57>"]
> Oct 15 19:04:29 [15161] DBG:maxfwd:is_maxfwd_present: value = 70
> Oct 15 19:04:29 [15161] DBG:uri:has_totag: totag found
> Oct 15 19:04:29 [15161] DBG:core:parse_headers: flags=200
> Oct 15 19:04:29 [15161] DBG:rr:find_first_route: No Route headers found
> Oct 15 19:04:29 [15161] DBG:rr:loose_route: There is no Route HF
> Oct 15 19:04:29 [15161] DBG:core:parse_headers: flags=78
> Oct 15 19:04:29 [15161] DBG:tm:t_lookup_request: start searching: 
> hash=53427, isACK=1
> Oct 15 19:04:29 [15161] DBG:tm:matching_3261: RFC3261 transaction 
> matched, tid=.1tcd1QMAc
> Oct 15 19:04:29 [15161] DBG:tm:t_lookup_request: 
> REF_UNSAFE:[0x7f9858507f28] after is 1
> Oct 15 19:04:29 [15161] DBG:tm:t_lookup_request: transaction found 
> (T=0x7f9858507f28)
> Oct 15 19:04:29 [15161] DBG:tm:cleanup_uac_timers: RETR/FR timers reset
> Oct 15 19:04:29 [15161] DBG:tm:insert_timer_unsafe: [2]: 
> 0x7f9858507fa8 (878)
> Oct 15 19:04:29 [15161] DBG:tm:t_unref: UNREF_UNSAFE: [0x7f9858507f28] 
> after is 0
> Oct 15 19:04:29 [15161] DBG:core:destroy_avp_list: destroying list (nil)
> Oct 15 19:04:29 [15161] DBG:core:receive_msg: cleaning up
> Oct 15 19:04:29 [15164] DBG:tm:utimer_routine: timer 
> routine:4,tl=0x7f9858508070 next=(nil), timeout=873400000
> Oct 15 19:04:31 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:31 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:31 [15160] DBG:core:udp_rcv_loop: probing packet received 
> len = 4
> Oct 15 19:04:32 [15164] DBG:tm:utimer_routine: timer 
> routine:7,tl=0x7f9858508148 next=0x7f9858508348, timeout=876000000
> Oct 15 19:04:32 [15164] DBG:tm:utimer_routine: timer 
> routine:7,tl=0x7f9858508348 next=(nil), timeout=876000000
> Oct 15 19:04:33 [15162] DBG:core:udp_rcv_loop: probing packet received 
> len = 4
> Oct 15 19:04:35 [15164] DBG:tm:timer_routine: timer 
> routine:0,tl=0x7f98585080a0 next=(nil), timeout=878
> Oct 15 19:04:35 [15164] DBG:tm:timer_routine: timer 
> routine:2,tl=0x7f9858507fa8 next=(nil), timeout=878
> Oct 15 19:04:35 [15164] DBG:tm:wait_handler: removing 0x7f9858507f28 
> from table
> Oct 15 19:04:35 [15164] DBG:tm:delete_cell: delete transaction 
> 0x7f9858507f28
> Oct 15 19:04:35 [15164] DBG:tm:wait_handler: done
> Oct 15 19:04:35 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:35 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:41 [15159] DBG:core:udp_rcv_loop: probing packet received 
> len = 4
> Oct 15 19:04:43 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:43 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:43 [15161] DBG:core:udp_rcv_loop: probing packet received 
> len = 4
> Oct 15 19:04:46 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:46 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:51 [15160] DBG:core:udp_rcv_loop: probing packet received 
> len = 4
> Oct 15 19:04:54 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:54 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:57 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
> Oct 15 19:04:57 [15165] DBG:nathelper:nh_timer: resolving next hop: 
> '124.193.138.210'
>
>
>
> At 2014-10-15 15:13:00, "Bogdan-Andrei Iancu" <bogdan at opensips.org> wrote:
>
>     Hi George,
>
>     If your OpenSIPS fails to reach the UAC is because of two reasons:
>         - NAT pinhole is closed - but if pinging is done, it shouldn't be
>         - opensips is trying to contact UAC via wrong IP:port - can
>     you confirm that when calling the UAC, OpenSIPS sends the INVITE
>     to same IP and port as where the pingings are coming from ?
>
>     TCP works as this part is "automatically" resolved because of the
>     connection (where the other pipe is known).
>
>     Regards,
>
>     Bogdan-Andrei Iancu
>     OpenSIPS Founder and Developer
>     http://www.opensips-solutions.com
>
>     On 15.10.2014 03:24, george wu wrote:
>>
>>     Hi, Bogdan-Andrei:
>>
>>     For udp, it fails when reaching the UAC even though the UAC keeps
>>     pinging the server all the time.
>>
>>     For tcp, although it works. I find something interesting.
>>     Only when the client pings the server, the invite message is sent
>>     to the UAC.
>>     In my understanding, the server should be able to send message to
>>     the UAC since the
>>     tcp connection is open. Actually the sip server is unable to send
>>     message to the UAC.
>>
>>     About the firewall type, I use opensipsctl ul show/rm to check.
>>     I find every time when it register, i get the same ip/portmost of
>>     time.
>>     But occasionally it might get different ip/port.
>>     I believe it is nat within a cone.
>>
>>     I am using ice, the ice only work after the first invite message
>>     is delivered to the peer.
>>     My ice with mediaproxy works perfectly.
>>
>>
>>     George Wu
>>
>>     At 2014-10-15 00:22:46, "Bogdan-Andrei Iancu"
>>     <bogdan at opensips.org> wrote:
>>
>>         Hi George,
>>
>>         NAT traversal is not only about pinging, but also about
>>         mangling/correcting the SIP traffic (from private IPs
>>         perspective) and ensuring the RTP flow.
>>
>>         So you need to be sure that all 3 points are addressed.
>>
>>         TCP versus UDP - there is only a difference at IP transport
>>         level...like datagram versus connection, and their
>>         implications at NAT level (being able to reach the device
>>         behind the nat). Otherwise it;s the same.
>>
>>         For UDP, can you see what fails ? the registration? reaching
>>         the UAC ?
>>
>>         Regards,
>>
>>         Bogdan-Andrei Iancu
>>         OpenSIPS Founder and Developer
>>         http://www.opensips-solutions.com
>>
>>         On 14.10.2014 18:37, george wu wrote:
>>>         My experience is for two uac (linphone) behind a firewall,
>>>         tcp/tls will always work.
>>>         udp will never work.
>>>
>>>         for both tcp/udp, my uac will send keep alive every 10 seconds.
>>>         I don't understand what makes those difference.
>>>         Can any one  share your experience?
>>>
>>>         George Wu
>>>
>>>
>>>
>>>
>>>
>>>
>>>         _______________________________________________
>>>         Users mailing list
>>>         Users at lists.opensips.org
>>>         http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>>
>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20141015/f3041684/attachment-0001.htm>


More information about the Users mailing list