Asterisk sip outboundproxy

SIP setting: outboundproxy

New in Asterisk 1.2

outboundproxy = IP_address or DNS SRV name

SRV name, hostname, or IP address of the outbound SIP Proxy (DNS SRV excluding the _sip._udp prefix)

Use cases

Typical proxies are OpenSER, SER. Another product is sipproxd which can act as a transparent proxy for Asterisk, i.e. you do not need to activate the outboundproxy= setting in sip.conf.

  • you might want to protect Asterisk boxes and place them inside your LAN whereas the SIP proxy is in your DMZ or exposed to the Internet
  • you might want to add support for either SIP-over-TCP (for Microsoft Speech products) or TLS/SRTP for encryption
  • you might want to load balance several Asterisk boxes

Example

outboundproxy=proxy.provider.domain ; send outbound signaling to this proxy, not directly to the peer
; Call-limits will not be enforced on real-time peers,
; since they are not stored in-memory

Notes

Be aware: Asterisk 1.2 is known to have incomplete/partially buggy outboundproxy support. Asterisk 1.6 (currently under development) will probably come with support for two types of outboundproxy settings, one where only the first message of a SIP dialog is sent to the proxy and we rely on Via: headers for all subsequent messages, and secondly the current implementation where Asterisk blindly sends everything through the the proxy.

Asterisk 1.8+

  • ;outboundproxy=proxy.provider.domain ; send outbound signaling to this proxy, not directly to the devices
  • ;outboundproxy=proxy.provider.domain:8080 ; send outbound signaling to this proxy, not directly to the devices
  • ;outboundproxy=proxy.provider.domain,force ; Send ALL outbound signalling to proxy, ignoring route: headers
  • ;outboundproxy=tls://proxy.provider.domain ; same as '=proxy.provider.domain' except we try to connect with tls
  • ;outboundproxy=192.0.2.1 ; IPv4 address literal (default port is 5060)
  • ;outboundproxy=2001:db8::1 ; IPv6 address literal (default port is 5060)
  • ;outboundproxy=192.168.0.2.1:5062 ; IPv4 address literal with explicit port
  • ;outboundproxy=2001:db8::1:5062 ; IPv6 address literal with explicit port
  • ; ; (could also be tcp,udp) - defining transports on the proxy line only
  • ; ; applies for the global proxy, otherwise use the transport= option

Take note of the 'force' parameter, which helps a lot when using OpenSIPS/Kamaillio integration.

See also


SIP setting: outboundproxy

New in Asterisk 1.2

outboundproxy = IP_address or DNS SRV name

SRV name, hostname, or IP address of the outbound SIP Proxy (DNS SRV excluding the _sip._udp prefix)

Use cases

Typical proxies are OpenSER, SER. Another product is sipproxd which can act as a transparent proxy for Asterisk, i.e. you do not need to activate the outboundproxy= setting in sip.conf.

  • you might want to protect Asterisk boxes and place them inside your LAN whereas the SIP proxy is in your DMZ or exposed to the Internet
  • you might want to add support for either SIP-over-TCP (for Microsoft Speech products) or TLS/SRTP for encryption
  • you might want to load balance several Asterisk boxes

Example

outboundproxy=proxy.provider.domain ; send outbound signaling to this proxy, not directly to the peer
; Call-limits will not be enforced on real-time peers,
; since they are not stored in-memory

Notes

Be aware: Asterisk 1.2 is known to have incomplete/partially buggy outboundproxy support. Asterisk 1.6 (currently under development) will probably come with support for two types of outboundproxy settings, one where only the first message of a SIP dialog is sent to the proxy and we rely on Via: headers for all subsequent messages, and secondly the current implementation where Asterisk blindly sends everything through the the proxy.

Asterisk 1.8+

  • ;outboundproxy=proxy.provider.domain ; send outbound signaling to this proxy, not directly to the devices
  • ;outboundproxy=proxy.provider.domain:8080 ; send outbound signaling to this proxy, not directly to the devices
  • ;outboundproxy=proxy.provider.domain,force ; Send ALL outbound signalling to proxy, ignoring route: headers
  • ;outboundproxy=tls://proxy.provider.domain ; same as '=proxy.provider.domain' except we try to connect with tls
  • ;outboundproxy=192.0.2.1 ; IPv4 address literal (default port is 5060)
  • ;outboundproxy=2001:db8::1 ; IPv6 address literal (default port is 5060)
  • ;outboundproxy=192.168.0.2.1:5062 ; IPv4 address literal with explicit port
  • ;outboundproxy=2001:db8::1:5062 ; IPv6 address literal with explicit port
  • ; ; (could also be tcp,udp) - defining transports on the proxy line only
  • ; ; applies for the global proxy, otherwise use the transport= option

Take note of the 'force' parameter, which helps a lot when using OpenSIPS/Kamaillio integration.

See also


Created by: JustRumours, Last modification: Mon 26 of May, 2014 (11:55 UTC) by mindaugas_kezys
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+