Configuring SIP PRA Agent Registration
When receiving a SIP PRA registration message from the IP PBX, the AR works as the agent for the IP PBX and initiates SIP PRA registration to the IMS network.
Context
To implement NAT traversal at the edge between enterprise and carrier networks, deployed the AR at the enterprise side to perform agent registration. The IP PBX initiates a registration request to the AR which then works as the agent for the IP PBX and initiates SIP PRA registration to the IMS network. When the registration succeeds, PBX users within the enterprise can perform voice communication with terminal users in the IMS network.
In group registration mode, the SIP PRA uses one registration message to register a group of SIP user numbers. A registration group contains the primary number and numbers to be registered in agent mode. Numbers to be registered in agent mode can be consecutive or scattered. Consecutive numbers correspond to wildcard characters (!.*!) in a registration group on the HSS. Scattered numbers correspond to other numbers in a registration group on the HSS. The AR initiates a registration message only for the primary number in a registration group. The primary number can substitute all numbers in the registration group to perform the registration.
Figure 2-79 shows the network diagram for SIP PRA agent registration.
Procedure
Step |
Operation |
Command |
Remarks |
|
---|---|---|---|---|
1 |
Configure interface addresses and address pools |
Enter the system view. |
system-view |
- |
Enter the interface view. |
interface interface-type interface-number |
- |
||
(Optional) Bind a VPN instance to an interface. |
ip binding vpn-instance vpn-instance-name |
Before running the ip binding vpn-instance command, create a VPN instance. When you run the ip binding vpn-instance command on an interface, all Layer 3 features on the interface, such as the IP address and routing protocol, are deleted. To use these features, re-configure them. By default, no VPN instance is bound to an interface. |
||
Configure an Ethernet IP address. |
ip address ip-address { mask | mask-length } |
If you configure a new IP address for an interface that already has an IP address, the new IP address overwrites the old one. |
||
Return to the system view. |
quit |
- |
||
Enter the voice view. |
voice |
- |
||
Add an IP address to the signaling IP address pool. |
voip-address signalling interface interface-type interface-number { ip-address | dynamic } |
To specify the ip-address parameter, ensure that an IP address has been configured for the specified interface. To specify the dynamic parameter, ensure that an IP address has been dynamically allocated to the specified interface. |
||
Add an IP address to the media IP address pool. |
voip-address media interface interface-type interface-number { ip-address | dynamic } |
It is recommended that the media and signaling IP address pools be the same. |
||
(Optional) Configure a bound VPN instance. |
voip-vpn-instance vpn-instance-name |
Only SIP trunk groups can be bound to VPN instances. Before running the voip-vpn-instance command, ensure that a VPN instance has been created and interfaces to which the signaling IP addresses and media IP addresses belong have been bound to the instance. By default, no VPN instance is specified to be used by voice services. |
||
Configure the interface and type for the media relay. |
sbc media-relay |
- |
||
2 |
Configure an enterprise and a DN set |
Create an enterprise and enter the enterprise view |
enterprise enterprise-name |
- |
Configure the DN set |
dn-set dn-set-name [ description description ] |
- |
||
3 |
Configuring the SIP server |
Enter the SIP server view. |
sipserver |
- |
Configure the signaling IP address and signaling port number of the SIP server. |
signalling-address { ip ip-address | addr-name addr-name-value } port port-value |
The signaling IP address of the SIP server must be allocated from the signaling IP address pool on the corresponding interface. |
||
Configure a signaling domain name for the SIP server that uses a dynamic signaling IP address. |
signalling-domain signaling-domain-value |
If the SIP server uses a dynamic signaling IP address, you must configure a signaling domain name for the SIP server. |
||
Configure the media IP address of the SIP server. |
media-ip { ip-address | addr-name addr-name-value } |
The media IP address of the SIP server must be allocated from the media IP address pool on the corresponding interface. |
||
Configure the URI for the SIP server. |
register-uri uri |
The Uniform Resource Identifier (URI) is used for SIP user registration. |
||
Configure the home domain for the SIP server. |
home-domain domain |
The SIP server fills this parameter into the From field in SIP messages. |
||
Enable media proxy. |
sbc media-proxy enable |
- |
||
Reset the SIP server. |
reset |
- |
||
4 |
Configure a call route |
Create a call route |
callroute callroute-name |
- |
Configure a call route policy |
selecttype selecttype-value |
- |
||
5 |
Configure a trunk group |
Create and enter the SIP PRA trunk group view |
trunk-group name sip trunk-group |
- |
Bind a route mode |
callroute callroute-name |
- |
||
Configure a local signaling IP address and port number |
signalling-address { ip ip-address | addr-name signal-addr-name-value } port port-value |
- |
||
Configure a local media IP address or dynamic media IP address name |
media-ip { ip-address | addr-name addr-name-value } |
- |
||
Configure a peer IP address and port number (select a static or DNS mode based on actual needs) |
peer-address static primary-ip-address primary-port-value [ secondary secondary-ip-address secondary-port-value ] |
Configure in static mode. Interconnection data for a trunk group must be consistent with the actual peer data. |
||
peer-address { dns-a primary-domain-value primary-port-value [ secondary secondary-domain-value secondary-port-value ] | dns-srv domain-value | dns-naptr domain-value } |
Configure in DNS mode. Interconnection data for a trunk group must be consistent with the actual peer data. |
|||
Configure the home domain name of a peer trunk group |
home-domain value |
Set this parameter based on peer requirements. |
||
Configure the URI of the registration server |
register-uri register-uri-value |
Set this parameter based on peer requirements. |
||
Configure an identifier and authentication password for a registration group |
register-id register-uri-value [ password cipher password-value ] |
To implement SIP PRA group registration, an identifier and authentication password must be configured for a registration group. You can obtain an identifier and authentication password for a registration group from the service provider (such as IMS network provider). |
||
(Optional) Configure the enterprise and DN set for a trunk group |
enterprise enterprise-name [ dn-set dn-set-name ] |
Perform this operation only when multiple enterprises and DN sets are configured. |
||
Enable the media agent |
sbc media-proxy enable |
- |
||
Reset a trunk group |
reset |
After a SIP trunk group is created or its parameters are modified, reset the SIP trunk group for the settings to take effect. |
||
6 |
Configure users |
Create a SIP user and enter the user view |
pbxuser name sipue [ enterprise enterprise-name ] |
- |
Configure the user device identifier |
sipue eid-value |
It is recommended that the device identifier and name of a user be the same. |
||
Configure the user telephone number and long number |
telno telno-value [ long-telno long-telno-value ] |
A long number is allocated by the carrier network. When a user's long number is configured, extranet users can directly dial the long number to reach the user without dialing the switchboard number and then the extension number. |
||
Configure the user authentication password |
eid-para password cipher password-value |
Configure the authentication password. Perform this operation to prevent unauthorized registration and toll frauds. |
||
7 |
Configure group registration |
Create and enter the group registration view |
groupreg groupreg-name |
- |
Configure an identifier for group registration |
impi impi-value impu impu-name [password cipher] |
It is recommended that IMPI and IMPU values be consistent with those on the IMS. |
||
Add a SIP user to the registration set |
pbxuser user-name [ step step-value ][number number-value ] |
If multiple SIP users are available, add all these SIP users to the registration set. |
||
Configure agent registration |
bind trunk-group trunk-group-name |
- |
||
Configure the domain name in group registration |
home-domain home-domain-value |
- |
||
8 |
Configure incoming and outgoing prefixes |
Create and enter the prefix template view |
callprefix callprefix-name |
- |
Configure the prefix |
prefix prefix |
- |
||
Configure the prefix call type and call attribute |
call-type category callcategory attribute attribute |
- |
||
Configure the number analysis length |
digit-length minimum-length-value maximum-length-value |
The number analysis length also contains the prefix. For example, if the number analysis length is set to 5 and the prefix is 88, the analyzed number is 88***. The maximum number analysis length must be greater than or equal to the minimum number analysis length. |
||
(Optional) Bind a route mode |
callroute callroute-name |
Perform this operation only when you need to configure the outgoing prefix. |
||
(Optional) Configure the enterprise and DN set for the prefix |
enterprise enterprise-name [ dn-set dn-set-name ] |
Perform this operation only when you need to configure the incoming prefix. |
||
9 |
Save the current settings |
save |
- |
The sipue users on the AR, IP PBX, and IMS must be the same.
Configuration Example
Here, !.*! are wildcard characters and can represent any digit from 0 to 9. 2898800!.*! indicates the range from 28988000 to 28988009.
The SIP server IP address is 10.10.10.10. The local signaling and media IP address is 172.16.2.2, and the signaling port number is 5062. The IP address for the IMS network is 172.16.2.3, and the port number is 5060. The home domain name of the peer trunk group and the URI of the registration server are abcd.com. The incoming and outgoing prefixes are 10.
#Configure interface addresses and address pools. <Huawei> system-view [Huawei] interface gigabitethernet 0/0/0 [Huawei-GigabitEthernet0/0/0] ip address 172.16.2.2 24 [Huawei-GigabitEthernet0/0/0] quit [Huawei] interface gigabitethernet 0/0/1 [Huawei-GigabitEthernet0/0/1] ip address 10.10.10.10 24 [Huawei-GigabitEthernet0/0/1] quit [Huawei] voice [Huawei-voice] voip-address media interface gigabitethernet 0/0/0 172.16.2.2 [Huawei-voice] voip-address signalling interface gigabitethernet 0/0/0 172.16.2.2 [Huawei-voice] voip-address media interface gigabitethernet 0/0/1 10.10.10.10 [Huawei-voice] voip-address signalling interface gigabitethernet 0/0/1 10.10.10.10 [Huawei-voice] sbc media-relay interface GigabitEthernet 0/0/0 external [Huawei-voice] quit #Configure the DN set. [Huawei-voice]enterprise default [Huawei-voice-enterprise-default]dn-set proxy [Huawei-voice-enterprise-default]quit #Configure the SIP server. [Huawei-voice] sipserver [Huawei-voice-sipserver] signalling-address ip 10.10.10.10 port 5060 [Huawei-voice-sipserver] media-ip 10.10.10.10 [Huawei-voice-sipserver] register-uri abcd.com [Huawei-voice-sipserver] home-domain abcd.com [Huawei-voice-sipserver] sbc media-proxy enable [Huawei-voice-sipserver] reset [Huawei-voice-sipserver] quit #Configure a call route. [Huawei-voice]callroute pra-out [Huawei-voice-callroute-pra-out]selecttype callertimebase [Huawei-voice-callroute-pra-out]quit #Configure a trunk group. [Huawei-voice]trunk-group sippra-proxy sip trunk-group [Huawei-voice-trunkgroup-sippra-proxy]enterprise default dn-set proxy [Huawei-voice-trunkgroup-sippra-proxy]callroute pra-out callertelno 10000x [Huawei-voice-trunkgroup-sippra-proxy]signalling-address ip 172.16.2.2 port 5062 [Huawei-voice-trunkgroup-sippra-proxy]media-ip 172.16.2.2 [Huawei-voice-trunkgroup-sippra-proxy]peer-address static 172.16.2.3 5060 [Huawei-voice-trunkgroup-sippra-proxy]home-domain abcd.com [Huawei-voice-trunkgroup-sippra-proxy]register-uri abcd.com [Huawei-voice-trunkgroup-sippra-proxy]register-id 28988000 password cipher Please input user password(1-32 chars):****** [Huawei-voice-trunkgroup-sippra-proxy]sbc media-proxy enable [Huawei-voice-trunkgroup-sippra-proxy]reset Are you sure to continue?[Y/N]:y Note: Trunkgroup reset succeeds. [Huawei-voice-trunkgroup-sippra-proxy]quit #Configure users. This example describes how to add two SIP users. You can add more SIP users by referring to these operations. [Huawei-voice]pbxuser sippra-28988000 sipue [Huawei-voice-pbxuser-sippra-28988000]sipue 28988000 [Huawei-voice-pbxuser-sippra-28988000]telno 28988000 [Huawei-voice-pbxuser-sippra-28988000]eid-para password cipher Please input user password(6-64 chars):****** [Huawei-voice-pbxuser-sippra-28988000]pbxuser sippra-100001 sipue [Huawei-voice-pbxuser-sippra-28988001]sipue 28988001 [Huawei-voice-pbxuser-sippra-28988001]telno 28988001 [Huawei-voice-pbxuser-sippra-28988001]eid-para password cipher Please input user password(6-64 chars):****** [Huawei-voice-pbxuser-sippra-100001]quit #Configure group registration. Add 28988000 ~ 28988009 to the registration set. [Huawei-voice]groupreg praproxy [Huawei-voice-groupreg-praproxy]impi 28988000 impu 2898800!.*! [Huawei-voice-groupreg-praproxy]pbxuser sippra-28988000 number 10 [Huawei-voice-groupreg-praproxy]bind trunk-group sippra-proxy [Huawei-voice-groupreg-praproxy]quit #Configure outgoing prefixes. [Huawei-voice]callprefix pra-out [Huawei-voice-callprefix-pra-out]prefix 10 [Huawei-voice-callprefix-pra-out]call-type category basic-service attribute 1 [Huawei-voice-callprefix-pra-out]digit-length 4 32 [Huawei-voice-callprefix-pra-out]callroute pra-out [Huawei-voice-callprefix-pra-out]quit #Configure incoming prefixes. [Huawei-voice]callprefix pra-in [Huawei-voice-callprefix-pra-in]enterprise default dn-set proxy [Huawei-voice-callprefix-pra-in]prefix 10 [Huawei-voice-callprefix-pra-in]call-type category basic-service attribute 0 [Huawei-voice-callprefix-pra-in]digit-length 4 32 [Huawei-voice-callprefix-pra-in]quit #Save the settings. [Huawei-voice]save
Verification
Operation |
Command |
Expected Result |
---|---|---|
Verify trunk group configuration |
display voice trunk-group [ name [ para-value ] ] |
Values in the command output are the specified values. |
Verify user configuration |
display voice pbxuser [ pbxuser-name ] |
|
Verify group registration configuration |
display voice groupreg [ groupreg-name ] |
|
Verify user registration information |
display voice groupreg groupreg-name pbxuser brief |
<Huawei> display voice groupreg praproxy pbxuser brief Spec: 256, Records: 10 ------------------------------------------------------------------------------- Index Telno Service-status SIPUE Expires(s) Interval(s) Reg-status 0 28988000 Idle 10.10.10.3:5062 428 600 In service 1 28988001 Idle 10.10.10.3:5062 428 600 In service
|
Verify prefix configuration |
display voice callprefix [ callprefix-name ] |
Values in the command output are the specified values. |