[SR-Users] BLF issue with Kamailio behind NAT

Errol Samuels ewsamuels at gmail.com
Fri Apr 25 01:34:54 CEST 2014


Hello All,

I have an integration with Kamailio and FusionPBX (Freeswitch) working
great but I been trying to troubleshoot a BLF issue with Kamailio where the
BLF seems to only work when Kamailio is on a Public IP rather than behind
NAT.  The BLF works fine when we register directly with Freeswitch either
on a Public IP or behind NAT.

Both Kamailio and FusionPBX (Freeswitch) are behind pfSense firewall on
private IPs and registrations, Inbound and Outbound Calls etc are working
fine.  Just this BLF issue giving me some grief.  The phone in question is
a Yealink T20.

I made some SIP Traces and I noticed the following:

In the FS Message Header I see we have the SUBSCRIBE:

***** Begin Freeswitch trace****

Frame 13: 619 bytes on wire (4952 bits), 619 bytes captured (4952 bits)

Internet Protocol Version 4, Src: 192.168.1.138 (192.168.1.138), Dst:
207.xx.xx.109 (207.xx.xx.109)
User Datagram Protocol, Src Port: x11 (6062), Dst Port: ca-2 (5065)
Session Initiation Protocol (REGISTER)
    Request-Line: REGISTER sip:testfs.mydomain.com:5065 SIP/2.0
    Message Header
        Via: SIP/2.0/UDP 192.168.1.138:6062;branch=z9hG4bK748715490
        From: "302" <sip:302 at testfs.mydomain.com:5065>;tag=530545144
        To: "302" <sip:302 at testfs.mydomain.com:5065>
        Call-ID: 2118669441 at 192.168.1.138
        CSeq: 8 REGISTER
        Contact: <sip:302 at 192.168.1.138:6062>
        Allow: INVITE, INFO, PRACK, ACK, BYE, CANCEL, OPTIONS, NOTIFY,
REGISTER, SUBSCRIBE, REFER, PUBLISH, UPDATE, MESSAGE
        Max-Forwards: 70
        User-Agent: Yealink SIP-T20P 9.72.0.30
        Expires: 300
        Allow-Events: talk,hold,conference,refer,check-sync
        Content-Length: 0

Frame 14: 698 bytes on wire (5584 bits), 698 bytes captured (5584 bits)

Internet Protocol Version 4, Src: 207.xx.xx.109 (207.xx.xx.109), Dst:
192.168.1.138 (192.168.1.138)
User Datagram Protocol, Src Port: ca-2 (5065), Dst Port: x11 (6062)
Session Initiation Protocol (200)
    Status-Line: SIP/2.0 200 OK
    Message Header
        Via: SIP/2.0/UDP 192.168.1.138:6062
;branch=z9hG4bK748715490;received=2.xx.xx.187;rport=6062
        From: "302" <sip:302 at testfs.mydomain.com:5065>;tag=530545144
        To: "302" <sip:302 at testfs.mydomain.com:5065>;tag=j71FeN5gcBjDe
        Call-ID: 2118669441 at 192.168.1.138
        CSeq: 8 REGISTER
        Contact: <sip:302 at 192.168.1.138:6062
;received=2.xx.xx.187:6062>;expires=300
        Date: Thu, 24 Apr 2014 17:03:18 GMT
        User-Agent:
FreeSWITCH-mod_sofia/1.2.23+git~20140419T040926Z~8a20da75ef~64bit
        Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE,
REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE
        Supported: timer, path, replaces
        Content-Length: 0

Frame 15: 509 bytes on wire (4072 bits), 509 bytes captured (4072 bits)

Internet Protocol Version 4, Src: 192.168.1.138 (192.168.1.138), Dst:
10.22.110.9 (10.22.110.9)
User Datagram Protocol, Src Port: x11 (6062), Dst Port: ca-2 (5065)
Session Initiation Protocol (SUBSCRIBE)
    Request-Line: SUBSCRIBE sip:301 at 10.22.110.9:5065 SIP/2.0
    Message Header
        Via: SIP/2.0/UDP 192.168.1.138:6062;branch=z9hG4bK148600064
        From: "302" <sip:302 at testfs.mydomain.com:5065>;tag=2146254460
        To: <sip:301 at testfs.mydomain.com:5065>;tag=70uoBUVRvJyr
        Call-ID: 168472766 at 192.168.1.138
        CSeq: 2 SUBSCRIBE
        Contact: <sip:302 at 192.168.1.138:6062>
        Accept: application/dialog-info+xml
        Max-Forwards: 70
        User-Agent: Yealink SIP-T20P 9.72.0.30
        Expires: 1800
        Event: dialog
        Content-Length: 0

****** End Freeswitch trace ********

In the Kamailio Header there is no SUBSCRIBE for the BLF.

***** Begin Kamailio trace****

Frame 17: 809 bytes on wire (6472 bits), 809 bytes captured (6472 bits)

Internet Protocol Version 4, Src: 192.168.1.138 (192.168.1.138), Dst:
207.xx.xx.108 (207.xx.xx.108)
User Datagram Protocol, Src Port: x11 (6062), Dst Port: sip (5060)
Session Initiation Protocol (REGISTER)
    Request-Line: REGISTER sip:test.mydomain.com:5060 SIP/2.0
    Message Header
        Via: SIP/2.0/UDP 192.168.1.138:6062;branch=z9hG4bK1572502835
        From: "302" <sip:302 at test.mydomain.com>;tag=1877226231
        To: "302" <sip:302 at test.mydomain.com>
        Call-ID: 887242692 at 192.168.1.138
        CSeq: 3 REGISTER
        Contact: <sip:302 at 192.168.1.138:6062>
        Authorization: Digest username="302", realm="test.mydomain.com",
nonce="U1lHHFNZRfB7/5Lyb/Rz3p/xu26B1lpE", uri="sip:test.mydomain.com:5060",
response="7687c7d3141d1898e63a1cc9538f05d7", algorithm=MD5
        Allow: INVITE, INFO, PRACK, ACK, BYE, CANCEL, OPTIONS, NOTIFY,
REGISTER, SUBSCRIBE, REFER, PUBLISH, UPDATE, MESSAGE
        Max-Forwards: 70
        User-Agent: Yealink SIP-T20P 9.72.0.30
        Expires: 300
        Allow-Events: talk,hold,conference,refer,check-sync
        Content-Length: 0

Frame 18: 496 bytes on wire (3968 bits), 496 bytes captured (3968 bits)

Internet Protocol Version 4, Src: 207.xx.xx.108 (207.xx.xx.108), Dst:
192.168.1.138 (192.168.1.138)
User Datagram Protocol, Src Port: sip (5060), Dst Port: x11 (6062)
Session Initiation Protocol (200)
    Status-Line: SIP/2.0 200 OK
    Message Header
        Via: SIP/2.0/UDP 192.168.1.138:6062
;branch=z9hG4bK1572502835;rport=6062;received=2.xx.xx.187
        From: "302" <sip:302 at test.mydomain.com>;tag=1877226231
        To: "302" <sip:302 at test.mydomain.com
>;tag=ff6b32c6b28b8954915484dd79f46b1c.fcdc
        Call-ID: 887242692 at 192.168.1.138
        CSeq: 3 REGISTER
        Contact: <sip:302 at 192.168.1.138:6062
>;expires=300;received="sip:2.xx.xx.187:6062"
        Server: kamailio (4.0.6 (x86_64/linux))
        Content-Length: 0

Frame 19: 316 bytes on wire (2528 bits), 316 bytes captured (2528 bits)

Internet Protocol Version 4, Src: 207.xx.xx.108 (207.xx.xx.108), Dst:
192.168.1.138 (192.168.1.138)
User Datagram Protocol, Src Port: sip (5060), Dst Port: x11 (6062)
Session Initiation Protocol (OPTIONS)
    Request-Line: OPTIONS sip:2.xx.xx.187:6062 SIP/2.0
    Message Header
        Via: SIP/2.0/UDP 10.22.110.11:5060;branch=0
        From: sip:pinger at kamailio.org
;tag=uloc-53579917-4e9-89-0b632cbb-a8aa99c
        To: sip:2.xx.xx.187:6062
        Call-ID: f9749d7-2d0b0be7-c678c54 at 10.22.110.11
        CSeq: 1 OPTIONS
        Content-Length: 0

***** End Kamailio trace****

Anyone faced this issue or have any ideas?

regards,

Errol
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20140425/09242ad6/attachment.html>


More information about the sr-users mailing list