[asterisk-bugs] [JIRA] (ASTERISK-27989) Asterisk sources RTP from wrong IPv6 address
Joshua Colp (JIRA)
noreply at issues.asterisk.org
Tue Aug 14 10:09:54 CDT 2018
[ https://issues.asterisk.org/jira/browse/ASTERISK-27989?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Joshua Colp updated ASTERISK-27989:
-----------------------------------
Component/s: (was: Channels/chan_pjsip)
Resources/res_rtp_asterisk
Resources/res_pjsip_sdp_rtp
> Asterisk sources RTP from wrong IPv6 address
> --------------------------------------------
>
> Key: ASTERISK-27989
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-27989
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Resources/res_pjsip_sdp_rtp, Resources/res_rtp_asterisk
> Affects Versions: 13.22.0
> Environment: CentOS 7 64bit
> Reporter: Isaac McDonald
> Labels: pjsip
>
> Asterisk sources RTP traffic from the most recently assigned IPv6 address rather than the address configured in the transport.
> Steps to reproduce:
> 1. Configure a server with an IPv6 address. The following example config will provide a single global IPv6 address on CentOS 7:
> Config snippet from /etc/sysconfig/network-scripts/ifcfg-eth0
> IPV6INIT="yes"
> IPV6_AUTOCONF="no"
> IPV6_DEFROUTE="yes"
> IPV6_FAILURE_FATAL="no"
> IPV6_PEERROUTES="yes"
> IPV6_PRIVACY="no"
> IPV6ADDR=2001:DB8::55/64
> IPV6_PEERDNS=no
> IPV6_DEFAULTGW=2001:DB8::1/64
> 2. Configure a pjsip transport for the statically assigned IPv6 address
> [IPv6-udp]
> type=transport
> protocol=udp
> bind=[2001:DB8::55]:5060
> allow_reload=yes
> tos=cs3
> cos=3
> 3. Add a pjsip endpoint. Make sure you don't specify a transport with the "transport=" option.
> 4. Register a SIP client via IPv6 to the endpoint configured in step 3.
> 5. Place a test call from the IPv6 endpoint and note how everything works as expected.
> 6. Add an additional IPv6 address to eth0:
> ip -6 address add 2001:DB8::75/64 dev eth0
> 7. Start a tcpdump: tcpdump -i eth1 port not 22 -nn
> 8. Place a test call from the IPv6 endpoint and note how the SOURCE address of RTP packets, as seen in the tcpdump, is set to the IPv6 address you assigned in step 6 and NOT the IPv6 address assigned to the transport you created in step 2.
> If you specify the IPv6 transport configured in step 2 as the transport for the endpoint, the source address of RTP packets is the configured transport address. This isn't a viable option though considering that it would break the dual-stack nature of having a endpoint with no specific transport set.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list