How To SIP Trunking Using The SIP Trunk Page PDF
How To SIP Trunking Using The SIP Trunk Page PDF
Revision 1.4
September 4, 2014
Table of Contents
1
1.1
Both the PBX with its Phones and Other SIP Clients Can Use the SIP Trunk ............................... 3
1.2
1.3
2.1
2.2
2.2.1
2.2.2
2.2.3
2.2.4
2.2.5
2.2.6
2.2.7
3.1
3.2
3.3
Revision History:
Revision
1.0
1.1
1.2
Date
2011-01-03
2011-01-05
2011-07-11
Author
KES
SB & KES
KES
1.3
1.4
2012-05-24
2014-09-04
KES
Rickard Nilsson
Comments
First version for release 4.9.2
Minor cleanup
Added failover support for two
Service Providers and PBXs.
Updates for release 4.10.1
Updates in ch. 2.2.7 and minor
corrections in ch. 3.1, 3.2
File name:
How_To_SIP_Trunking_Using_the_SIP_Trunk_Page
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
2(19)
1.1 Both the PBX with its Phones and Other SIP Clients Can Use the SIP
Trunk
The SIP Trunk page also offers a simple way to allow SIP clients (SIP phones and Soft SIP clients for
PCs) to register to the Ingate and use the SIP Trunk. This is done in addition to supporting the PBX
and its extension phones.
3(19)
Note that there are help texts available in the Ingate for each setting just press the Help links on
the SIP Trunking page.
The Ingate Startup Tool TG, will use the SIP Trunk page when configuring SIP Trunking. (Use the
previous Ingate Startup Tool - without the TG postfix - if you want to configure the previous way,
without using the SIP Trunk page.)
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
4(19)
1)
2)
3)
4)
1)
2)
4)
3)
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
5(19)
Outgoing and
Incoming Number
Routing
PBX Parameters
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
6(19)
1) Service Provider domain, here tservice.com, which is the host part of the SIP address of the
account such as [email protected]. (Enter two comma separated domains or IP
addresses for failover configuration.)
2) Outbound Proxy is where the SIP requests for this trunk service are to be sent. Here a fixed
IP address is used (but a domain name is preferred, especially if the service provider has a
DNS SRV record).
3) This service provider requires a P-Preferred-Identity header to be used to show the callers
number as caller ID. The actual header content is taken from the Identity field in the tables
below.
1)
2)
3)
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
7(19)
For details, please see the (Help) texts in the Ingate GUI and last in this document.
2.2.2 Entering the PBX Parameters
Here you enter the basics relating to the IP PBX to be connected to the SIP Trunking Service. Other
settings may be required, e.g. on the SIP Interoperability page and other pages.
1) The Ingate needs to know at which address the PBX is located, which can be entered as an IP
address, a domain name or a SIP registration by the PBX. Here you enter the IP address if the
PBX is at a fixed IP address. (Enter two comma separated domains or IP addresses in the
PBX Domain Name field for failover configuration.)
2) Here you can set up a SIP account, at which the PBX registers itself to show where it can be
contacted. If the PBX is located on a fixed IP address, it is recommended that you also enter
that one (as done under 1) above).
By entering User ID and Password, the PBX will be forced to Authenticate itself when
registering to the Ingate. The User ID and Password are also required if the Ingate is
configured to authenticate users placing outgoing calls (which is done in the Dial Plan by
selecting Auth & Forward instead of just Forward under Action).
3) You also need to specify to which defined network the PBX is connected to.
2)
1)
3)
Other PBXs (than here exemplified) may require more of the available settings. For details, please see
the (Help) texts in the Ingate GUI and last in this document.
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
8(19)
This is typical for services that accepts usage of service from the users specific IP address
and dont require any authentication password. All rows in the Reg. column (A:) shall be
No and if you have not received any authentication Password from your service provider,
leave the Authentication column empty.
2.2.3.2
and Password
(B:) that you have received from your service provider on the Main Trunk Line row. The
authentication User ID is often the same as the telephone number.
2.2.3.3
In this case, there need to be a row for each DID number in the tables below and all those
rows have to have Yes in the Reg. column (A:). If the service provider has given you a
single authentication User ID and Password (B:) pair, enter that on the Main Trunk Line
and it will be used for all numbers. In case you have been given individual User IDs and
Passwords, enter them on the corresponding rows.
A:
B: Credentials for
Trunk Service
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
9(19)
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
10(19)
Row Descriptions:
The Main Trunk Line settings (E:) are used if the caller (From PBX/SIP Number/User) or credentials
(User ID and Password) are not defined further down. For services that specify one main number or
account, this is where those settings are entered. At (F:) you enter the routing between the external
(DID) numbers on the SIP Trunk and the numbers used by the PBX. At (G:) you can link SIP Clients
(e.g. SIP Phones and Soft PC SIP Clients) registered to the Ingate itself or else (not belonging to the
PBX), to trunk numbers.
E:
F:
G:
For details, please see the (Help) texts in the Ingate GUI and last in this document.
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
11(19)
2.2.5 Typical Settings when the PBX is Configured to use the External (DID)
Numbers
1) In this example, there should be no registration to the trunking service. This is typical for a
service that simply accepts usage of the trunk from the specific IP address of the user.
2) Select one of the numbers of the trunking service (of the DID numbers) as your main number
and enter it on this line. For this trunking service, there is no password since it authenticates
the user by its IP address. Therefore, simply leave User ID and Password empty. Calls from
PBX users that are NOT entered further down in the From PBX/SIP Number/User column,
will use this trunk line and the main number will be shown to the called party (as Caller ID).
3) Enter the other DID numbers you want to use with the PBX on these line. The number
under User Name will be shown to the called party as Caller ID. If the trunking service (in
order to place an anonymous call) requires [email protected] (or something
else) in the From header, the user name part of the From header from the PBX (e.g.
anonymous or Private) has to be entered on a separate row as shown.
4) Incoming calls will be forwarded to the PBX number (user) defined in the Forward to
column. Here all DID numbers 01305670700 to 01305670789 are mapped to the PBX
numbers 1305670700 to 1305670789 on a single line.
The mapping between the external (DID) numbers and the PBX numbers does not have to be as
regular as shown here. One can add prefixes and map to any number, or even use the extension
numbers of the PBX, see next section 2.2.6.
Under SIP Lines, examples of are shown how SIP Clients not belonging to the PBX, still can be
connected to the PSTN and use DID numbers from the SIP trunking service. See section 2.2.7.
1)
4)
2)
3)
In the PBX:
With the settings above in the Ingate, you need to enter all phone numbers (DID numbers) used with
the trunk in the PBX and also map each of those numbers to the extension numbers the PBX uses.
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
12(19)
2.2.6 Settings when the PBX Only Uses Internal Extension Numbers
The settings are similar to those in the previous section 2.2.5, but the PBX users are referenced by
their extension numbers 00 to 89 (instead of the DID numbers 1305670700 to 1305670789) as
exemplified at A: and B:.
A:
B:
In the PBX:
With the settings suggested in this section, the Ingate will forward calls directly to the extension
numbers used by the PBX. Thus, no DID numbers (allocated by the service provider) have to be
entered in the PBX and the PBX is expected to show the extension number of the caller in its From
header.
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
13(19)
2.2.7 Using SIP Clients Registered to the Ingate with the SIP Trunk
In this example, we allow other SIP clients (SIP Phones or soft PC Clients) than the PBX extensions,
to connect to the PSTN and use DID numbers from the SIP Trunk.
1) Steven Brown has a soft SIP PC client with SIP address steven@<Ingate LAN IP address>
and is mapped to the DID number 01305670790, that he can use for both outgoing and
incoming calls.
2) An IP fax machine has been connected to the LAN and registered to the Ingate. The fax
machine is set up with sip address +1305670799@<Ingate LAN IP address>. Notice the
escape character \ in the From SIP Number/User column, since the + character has a
special meaning in regular expressions.
3) Eight PDA with SIP names pda91@<Ingate LAN IP address> to pda98@<Ingate LAN IP
address> are registered to the Ingate and will be mapped to DID numbers 01305670791 to
01305670791 for both outgoing and incoming calls.
1)
2)
3)
These SIP clients each require a Register Account Type to be set-up on the SIP Traffic > Local
Registrar page (for older versions than 4.10 software this is on the SIP Traffic > SIP Accounts
page).
You can also allow other SIP clients (not belonging to the PBX and not registered to the Ingate) to
use the trunk. Then simply enter the clients full SIP address, e.g. [email protected] or
[email protected], in the Forward to SIP Account column.
To allow SIP clients, like Stevens Soft PC client and the other above, to use the Ingate as their SIP
server, the SIP Registrar Module License is required.
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
14(19)
Provider domain = Use domain name from "Service Provider Domain" setting.
Enterprise domain = The domain name is kept as received from the caller.
External IP address = The IP address of the network interface on which the request is sent.
As entered = Use the manually entered "From domain" name. Here you may also add URI
parameters such as ;user=phone at the end of the domain.
Host name in Request-URI of incoming calls - The host part of Request-URI is usually one of
this units IP addresses and this setting should then not be used. However, if the SIP Trunk
Provider uses the host name as a "trunk ID", this setting has to be set to the trunk ID you get from
your provider.
Local/Remote Trunk Group Parameters (RFC 4904) - Optional, with this setting you enable
support for trunk group parameters (TGP) according to RFC 4904. Enter
";tgrp=the_trunk_group;trunk-context=the_trunk_context" (replace the_trunk_group
and the_trunk_context with whatever you have got from the SIP Trunk Provider). Remote TGP
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
15(19)
refers to parameters placed in R-URI of egress calls to service provider and parameters received in
Contact of ingress calls from service provider. Local TGP is the opposite, parameters found in RURI of ingress calls from service provider and parameters placed in Contact of egress calls to
service provider.
Used as - This section selection lets you choose how to use the parameters:
Originating Trunk Group Parameters = Read remote TGP and/or place local TGP in
Contact header.
Destination Trunk Group Parameters = Read local TGP and/or place remote TGP in RURI.
Originating and Destination T.G.P = The TGP will be used for both of the above.
Reading TGP found in ingress calls means that the TGP found is matched to the configured values
here. If they match the call will be forwarded using any matching line or the main trunk line. If the
incoming call contains TGP that don't match the call will not be considered for forwarding by any
line on this page.
Preserve Max-Forwards - Don't decrease Max-Forwards value of the SIP message as it passes
through this trunk interface. Recommended setting is No as Max-Forwards helps detecting
message loops resulting from bad configuration. But for interoperability with trunks using a very
low Max-Forwards, this setting is required. If your calls fail with a "483 Too many hops" message
and you don't think there is a message loop, this setting may help.
Relay media for remote users - Makes this unit relay the media so that the ITSP gets it from this
unit, although the media endpoint may be located anywhere on the Internet. Solves
interoperability problems with some ITSPs. Try this if you have problems with media (one or no
way audio) when users are connected to your LAN from a remote location or calls are transferred
externally.
Exactly one Via header - This unit has a built-in SIP proxy that adds a Via header to SIP
requests. Some ITSP's do not expect the SIP request to have been routed by a SIP proxy and this
setting is intended to solve such interoperability problems.
'gin' registration (RFC 6140) - Enables support for gin, see draft-ietf-martini-gin. The
registration will then contain bulk number contact URI's and require that intermediate proxies and
the registrar supports gin.
Hide Record-Route - For the same reasons as for the Via header, the Record-Route is a SIP
proxy header field that can be hidden.
Show only one To tag - In case the SIP request is sent to a proxy that forks the call to multiple
targets, this setting makes sure the caller becomes unaware of that several phones are ringing for
the same call. This is also an interop setting for systems not expecting a SIP proxy in call path.
SIP 3xx redirection to provider domain - If domain in Contact header of 3xx responses should
be modified to the domain of service provider.
SIP 3xx redirection to caller domain - If domain in Contact header of 3xx responses should be
modified to the domain of the caller (From URI).
Route incoming based on - Defines where to look for the called number for matching an
incoming call in the tables below. Request-URI is the default but some ITSPs put this information
in To or P-Called-Party-ID headers.
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
16(19)
Service Provider domain is trusted - Select this to enable usage of P-Asserted-Identity header
field on the SIP Trunk as defined in RFC 3325. See setting for Identity in the tables below. Some
trunks may use this field as caller-ID.
Use P-Preferred-Identity - Puts the identity found in the table below into a P-Preferred-Identity
field instead of P-Asserted-Identity for outgoing calls.
Max simultaneous calls - Optional CAC (Call Admission Control). Number of calls supported on
the SIP Trunk. If the limit is reached, new calls will not be tried, instead a busy response is sent
back to the caller.
Max simultaneous per Trunk Line - Optional. This defines how many calls each line supports
before it should be regarded as busy.
17(19)
caller ID on the PSTN. In this field you can use the result of a subexpression from a match in a
regular expression defined in the From Number/User field on the same row. E.g. dialing from
1306770713 having 1306(7707[0-9]{2}) in From Number/User with +$0 in User Name, will result
in +1306770713 in the From header to the ITSP. Generic Header Manipulation can be used in this
field.
Identity - Optional value to use in P-Asserted-Identity or P-Preferred-Identity for outgoing calls.
See "Use P-Preferred-Identity" above. The ITSP may take this as the caller ID to use on the PSTN.
In this field you can use the result of a subexpression from a match in a regular expression defined
in the From Number/User field on the same row. E.g. dialing from 1306770713 having
1306(7707[0-9]{2}) in From Number/User with [email protected] in Identity, will result in
[email protected] in the P-Asserted- or P-Preferred-Identity header to the ITSP.
Here you may also add URI parameters such as ;user=phone at the end of the domain.
Authentication User ID and Password - Optional digest authentication user id and password if
the trunk requires authentication. The Main Line settings will be used if empty in a matching line.
Incoming Trunk Match - The number or regular expression entered here has to match an
incoming call to enable forwarding as specified in the Forward to field.
Forward to... - For PBX Lines, this is the number an incoming call will be forwarded to on the
PBX. For SIP Lines, this is the SIP address (complete SIP URI or a SIP user name/number on this
unit's SIP Server) an incoming call will be forwarded to. In this field you can use the result of a
subexpression from a match in a regular expression defined in the Incoming Trunk Match field on
the same row. E.g. an incoming call to +1306770713 having \+1306(7707[0-9]{2}) in Incoming
Trunk Match with 0$1 in Forward to... will result in forwarding to the PBX number 0770713. Here
you may also add URI parameters such as ;user=phone at the end of the domain of a complete
URI. Generic Header Manipulation can be used in this field.
Information and help regarding Regular Expressions can be found here.
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
18(19)
Services > VoIP Survival page to speed up failover. Here you may also add URI parameters such
as ;user=phone at the end of the domain.
PBX Network - Specifies which "Network and Computers" the PBX is connected to.
Signaling transport and Port number - The transport protocol and port number (optional) for
SIP messages sent to the PBX. Automatic means the transport protocol is determined
automatically by applying the rules of RFC 3263 on the SIP URI sent to PBX.
Match From Number/User in field - Sets which field in the SIP message that will used as the
callers number when matching the From Number/User column in the table specifications above.
To header field - Set the To header field to use for incoming calls to the PBX:
Same as Request-URI = The To header field is set to the same value as the Request-URI.
Copy from Trunk = Copies the To URI from the incoming call on the Trunk interface.
Initial Request-URI = Set to equal the Request-URI as it looks initially before passing internal
SIP proxy.
As entered = Enter the URI to use in To header manually in the box to the right. Variable
substitution as described above is available in this box. Here you may also add URI
parameters such as ;user=phone at the end of the domain.
Local/Remote Trunk Group Parameters usage - Optional setting for using the Trunk Group
Parameters defined above also on the PBX interface.
Originating Trunk Group Parameters = Read remote TGP and/or place local TGP in
Contact header.
Destination Trunk Group Parameters = Read local TGP and/or place remote TGP in R-URI.
Originating and Destination T.G.P = The TGP will be used for both of the above.
How To Guide: SIP Trunking Configuration Using the SIP Trunk Page
19(19)