[asterisk-bugs] [JIRA] (ASTERISK-24282) chan_sip communicating via TCP on IP assigned to physical interface when Asterisk is bound to virtual interface/alias

Rusty Newton (JIRA) noreply at issues.asterisk.org
Wed Oct 7 14:41:32 CDT 2015


    [ https://issues.asterisk.org/jira/browse/ASTERISK-24282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=227804#comment-227804 ] 

Rusty Newton edited comment on ASTERISK-24282 at 10/7/15 2:39 PM:
------------------------------------------------------------------

I'm no expert with virtual interface or IP Aliasing but I was able to reproduce this after some trouble (mostly in getting virtual interfaces working properly).

I'm attaching a range of files each prefixed with 'rusty_'

The sip.txt and extensions.txt can be used to reproduce the issue.

I registered Microsip from a windows machine to ALICE. Configured for UDP.
I registered a Digium D40 with BOB. Configured for TCP.

To reproduce I had 6001(ALICE) call 6002(BOB).

Upon making this call (without answering) I could see:

{noformat}
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
asterisk 24011 root   13u  IPv4  63054      0t0  TCP 192.168.1.110:sip->192.168.1.102:58599 (ESTABLISHED)
asterisk 24011 root   15u  IPv4  62952      0t0  UDP 192.168.1.110:sip
asterisk 24011 root   16u  IPv4  62953      0t0  TCP 192.168.1.110:sip (LISTEN)
asterisk 24011 root   36u  IPv4  63274      0t0  TCP 192.168.1.101:49069->192.168.1.102:sip (ESTABLISHED)
{noformat}

As with Zohair's configuration, I have Asterisk bound to the virtual interface only which in my case is 192.168.1.110.  The .101 address is the eth0 and .110 is eth0:0.

{noformat}
[general]
bindaddr=192.168.1.110
transport=udp,tcp
tcpenable=yes
tlsenable=no
{noformat}

Calling the other direction... 6002 to 6001 establishes a connection via 110 which seems appropriate. I tried switching which transport each extension uses, but then the problem didn't occur at all. That is, with the D40 using UDP and Microsip using TCP the problem didn't occur.


was (Author: rnewton):
I'm no expert with virtual interface or IP Aliasing but I was able to reproduce this after some trouble (mostly in getting virtual interfaces working properly).

I'm attaching a range of files each prefixed with 'rusty_'

The sip.txt and extensions.txt can be used to reproduce the issue.

I registered Microsip from a windows machine to ALICE
I registered a Digium D40 with BOB

To reproduce I had 6001(ALICE) call 6002(BOB).

Upon making this call (without answering) I could see:

{noformat}
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
asterisk 24011 root   13u  IPv4  63054      0t0  TCP 192.168.1.110:sip->192.168.1.102:58599 (ESTABLISHED)
asterisk 24011 root   15u  IPv4  62952      0t0  UDP 192.168.1.110:sip
asterisk 24011 root   16u  IPv4  62953      0t0  TCP 192.168.1.110:sip (LISTEN)
asterisk 24011 root   36u  IPv4  63274      0t0  TCP 192.168.1.101:49069->192.168.1.102:sip (ESTABLISHED)
{noformat}

As with Zohair's configuration, I have Asterisk bound to the .110 interface (eth0:0).


> chan_sip communicating via TCP on IP assigned to physical interface when Asterisk is bound to virtual interface/alias
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: ASTERISK-24282
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-24282
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Channels/chan_sip/General, Channels/chan_sip/Interoperability, Channels/chan_sip/TCP-TLS
>    Affects Versions: 11.3.0, 11.20.0
>         Environment: Vmware Esxi / Centos 6 
>            Reporter: Zohair Raza
>            Assignee: Rusty Newton
>            Severity: Critical
>         Attachments: 7may.pcapng, ast.pcap, issue24282, mylog.log, rusty_asterisk24282.pcap, rusty_extensions.txt, rusty_full.txt, rusty_lsof.txt, rusty_messages.txt, rusty_sip_show_peer_ALICE.txt, rusty_sip_show_peer_BOB.txt, rusty_sip_show_peers.txt, rusty_sip_show_settings.txt, rusty_sip.txt, s1.pcap
>
>
> Hi,
> I am running asterisk on VMs with standby heartbeat configuration, Heartbeat assigns a virtual IP 172.20.255.40 on machine afterwards asterisk is started. In the sip.conf, I have explicitly define bindaddr=172.20.255.40 but sometimes I see packets coming from physical IP 172.20.255.41
> I have both tcp and udp transport enabled 
> Here is the lsof -ni :5060 output 
> asterisk 2878 asterisk  613r  IPv4 40060683      0t0  TCP 172.20.255.41:52381->10.100.210.110:sip (ESTABLISHED)
> asterisk 2878 asterisk  528u  IPv4 29757779      0t0  TCP 172.20.255.41:55627->10.200.14.29:sip (ESTABLISHED)
> asterisk 2878 asterisk  530u  IPv4 19211854      0t0  TCP 172.20.255.40:sip->10.100.157.32:49227 (ESTABLISHED)
>  sip show settings
> Global Settings:
> ----------------
>   UDP Bindaddress:        172.20.255.40:5060
>   TCP SIP Bindaddress:    172.20.255.40:5060



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list