[Asterisk-Users] Asterisk + BudgeTone (behind NAT)
Owen Kelso
owen at barkie.net
Sat Jan 10 16:07:54 MST 2004
I'm using Asterisk on a open server (no firewall or NAT) and trying to
communicate with a Grandstream BudgeTone 102 SIP phone which is behind
NAT. The BudgeTone is at firmware level 1.0.4.30 and Asterisk is from CVS
about a week ago. My problem is that I'm only getting half-duplex
communication -- I can hear voice from the Asterisk server but the server
does not understand any voice from me. From the console "sip debug" shows
that the SIP part is working fine and DTMF via SIP INFO works.
I've struggled with this for a few days now and can't figure out the
cause. The only symptoms I've found are:
(1) When I make a call the console spits out the following errors several
times per minute:
WARNING[-1220854864]: File rtp.c, Line 375 (ast_rtp_read): RTP Read error:
Resource temporarily unavailable
(2) An ethereal trace reveals that incoming RTP packets have failed UDP
checksums (all packets have the same checksum of 0xb38f). I don't see
anything else irregular, like unreachable ports.
My sip.conf contains:
[test]
type=friend
username=test
secret=12345
host=dynamic
nat=yes
qualify=1000
dtmfmode=info
disallow=all
allow=ulaw
allow=alaw
canreinvite=no
On the NAT'ed side I have the BudgetTone set up to use STUN and ports 5060
for SIP and 19000 for RTP. The firewall that performs NAT forwards ports
5060 and 19000-19100 UDP to the phone.
An ethereal snapshot looks like:
1.1.1.1 = Asterisk server
2.2.2.2 = Public IP where the BudgeTone is
10.0.3.205 = Private IP of BudgeTone
Frame 211 (214 bytes on wire, 214 bytes captured)
Ethernet II, Src: 00:06:29:ce:5f:f2, Dst: 00:01:c7:0b:70:22
Destination: 00:01:c7:0b:70:22 (Cisco_0b:70:22)
Source: 00:06:29:ce:5f:f2 (Ibm_ce:5f:f2)
Type: IP (0x0800)
Internet Protocol, Src Addr: 1.1.1.1 (1.1.1.1), Dst Addr: 2.2.2.2 (2.2.2.2)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 200
Identification: 0x0000 (0)
Flags: 0x04
Fragment offset: 0
Time to live: 64
Protocol: UDP (0x11)
Header checksum: 0x2538 (correct)
Source: 1.1.1.1 (1.1.1.1)
Destination: 2.2.2.2 (2.2.2.2)
User Datagram Protocol, Src Port: 13364 (13364), Dst Port: 19000 (19000)
Source port: 13364 (13364)
Destination port: 19000 (19000)
Length: 180
Checksum: 0xdf43 (correct)
Real-Time Transport Protocol
10.. .... = Version: RFC 1889 Version (2)
..0. .... = Padding: False
...0 .... = Extension: False
.... 0000 = Contributing source identifiers count: 0
0... .... = Marker: False
.000 1000 = Payload type: ITU-T G.711 PCMA (8)
Sequence number: 45554
Timestamp: 16480
Synchronization Source identifier: 1847249288
Payload: E4E4E5FAF9FDF0F6F5C2C5DFD0575D58...
Frame 212 (214 bytes on wire, 214 bytes captured)
Ethernet II, Src: 00:01:c7:0b:70:22, Dst: 00:06:29:ce:5f:f2
Destination: 00:06:29:ce:5f:f2 (Ibm_ce:5f:f2)
Source: 00:01:c7:0b:70:22 (Cisco_0b:70:22)
Type: IP (0x0800)
Internet Protocol, Src Addr: 2.2.2.2 (2.2.2.2), Dst Addr: 1.1.1.1 (1.1.1.1)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 200
Identification: 0xe398 (58264)
Flags: 0x00
Fragment offset: 0
Time to live: 233
Protocol: UDP (0x11)
Header checksum: 0xd89e (correct)
Source: 2.2.2.2 (2.2.2.2)
Destination: 1.1.1.1 (1.1.1.1)
User Datagram Protocol, Src Port: 19000 (19000), Dst Port: 13364 (13364)
Source port: 19000 (19000)
Destination port: 13364 (13364)
Length: 180
Checksum: 0xb38f (incorrect, should be 0x1dc4)
Real-Time Transport Protocol
10.. .... = Version: RFC 1889 Version (2)
..0. .... = Padding: False
...0 .... = Extension: False
.... 0000 = Contributing source identifiers count: 0
0... .... = Marker: False
.000 1000 = Payload type: ITU-T G.711 PCMA (8)
Sequence number: 53058
Timestamp: 3449661727
Synchronization Source identifier: 3820906983
Payload: D4D4D5D5D555D5D555D4D5D5D5D4D4D4...
Frame 213 (214 bytes on wire, 214 bytes captured)
Ethernet II, Src: 00:06:29:ce:5f:f2, Dst: 00:01:c7:0b:70:22
Destination: 00:01:c7:0b:70:22 (Cisco_0b:70:22)
Source: 00:06:29:ce:5f:f2 (Ibm_ce:5f:f2)
Type: IP (0x0800)
Internet Protocol, Src Addr: 1.1.1.1 (1.1.1.1), Dst Addr: 2.2.2.2 (2.2.2.2)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 200
Identification: 0x0000 (0)
Flags: 0x04
Fragment offset: 0
Time to live: 64
Protocol: UDP (0x11)
Header checksum: 0x2538 (correct)
Source: 1.1.1.1 (1.1.1.1)
Destination: 2.2.2.2 (2.2.2.2)
User Datagram Protocol, Src Port: 13364 (13364), Dst Port: 19000 (19000)
Source port: 13364 (13364)
Destination port: 19000 (19000)
Length: 180
Checksum: 0xa9d4 (correct)
Real-Time Transport Protocol
10.. .... = Version: RFC 1889 Version (2)
..0. .... = Padding: False
...0 .... = Extension: False
.... 0000 = Contributing source identifiers count: 0
0... .... = Marker: False
.000 1000 = Payload type: ITU-T G.711 PCMA (8)
Sequence number: 45555
Timestamp: 16640
Synchronization Source identifier: 1847249288
Payload: 76767671707071717176744A494C4158...
Frame 214 (214 bytes on wire, 214 bytes captured)
Ethernet II, Src: 00:01:c7:0b:70:22, Dst: 00:06:29:ce:5f:f2
Destination: 00:06:29:ce:5f:f2 (Ibm_ce:5f:f2)
Source: 00:01:c7:0b:70:22 (Cisco_0b:70:22)
Type: IP (0x0800)
Internet Protocol, Src Addr: 2.2.2.2 (2.2.2.2), Dst Addr: 1.1.1.1 (1.1.1.1)
Version: 4
Header length: 20 bytes
Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
Total Length: 200
Identification: 0xe399 (58265)
Flags: 0x00
Fragment offset: 0
Time to live: 233
Protocol: UDP (0x11)
Header checksum: 0xd89d (correct)
Source: 2.2.2.2 (2.2.2.2)
Destination: 1.1.1.1 (1.1.1.1)
User Datagram Protocol, Src Port: 19000 (19000), Dst Port: 13364 (13364)
Source port: 19000 (19000)
Destination port: 13364 (13364)
Length: 180
Checksum: 0xb38f (incorrect, should be 0xa92e)
Real-Time Transport Protocol
10.. .... = Version: RFC 1889 Version (2)
..0. .... = Padding: False
...0 .... = Extension: False
.... 0000 = Contributing source identifiers count: 0
0... .... = Marker: False
.000 1000 = Payload type: ITU-T G.711 PCMA (8)
Sequence number: 53059
Timestamp: 3449661887
Synchronization Source identifier: 3820906983
Payload: D5D4D7D7D4D4D4D5D5D5555555555454...
Anyone have ideas?
Thanks,
Owen
More information about the asterisk-users
mailing list