Configuring SIP AT0 Agent Registration
When receiving a SIP AT0 registration message from the IP PBX, the AR works as the agent for the IP PBX and initiates SIP AT0 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 AT0 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 user-by-user registration (SIP AT0 registration) mode, each SIP user under the IP PBX must register with the AR which then registers each SIP user with the IMS. Only one number can be registered at one time.
Figure 2-80 shows the network diagram for SIP AT0 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) Configure a bound VPN instance. |
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/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 |
- |
||
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 AT0 trunk group view |
trunk-group name sip trunk-group |
- |
(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. |
||
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-value primary-port-value [ secondary secondary-ip-value 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. |
||
Enable the media agent |
sbc media-proxy enable |
- |
||
Configure the bound trunk of a trunk group |
trunk-sipat0 register-id { password cipher cipher-password | caller-telno [ enterprise enterprise-name ] telno-value | default-called-telno default-called-telno-value | max-calls max-calls-value digest-username digest-username-value }* |
By setting the default-called-telno parameter, you can specify a specific user or the automatic switchboard to answer the incoming call from the trunk. |
||
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 ] |
After a user is created, you can run this command (without entering the user type) to enter the user view. |
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. |
||
Configure agent registration |
bind trunk-group trunk-group-name trunk-sipat0 register-id |
- |
||
7 |
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. |
||
8 |
Save the current settings |
save |
- |
The sipue users at the AR, IP PBX, and IMS must be the same.
Configuration Example
The AR works as the agent for the IP PBX and initiates SIP AT0 registration to the IMS network. The enterprise DN set is proxy, trunk group name sipat0-proxy, and bound trunk group route at0-out. The SIP user number allocated by the carrier is 200000.
The SIP server IP address is 10.10.10.10. The local signaling and media IP address is 192.168.10.2, and the signaling port number is 5080. The IP address for the IMS network is 192.168.10.10, 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. <uawei> system-view [Huawei] interface gigabitethernet 0/0/0 [Huawei-GigabitEthernet0/0/0] ip address 192.168.10.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 192.168.10.2 [Huawei-voice] voip-address signalling interface gigabitethernet 0/0/0 192.168.10.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 at0-out [Huawei-voice-callroute-at0-out]selecttype callertimebase [Huawei-voice-callroute-at0-out]quit #Configure a trunk group. [Huawei-voice]trunk-group sipat0-proxy sip trunk-circuit [Huawei-voice-trunkgroup-sipat0-proxy]enterprise default dn-set proxy [Huawei-voice-trunkgroup-sipat0-proxy]callroute at0-out callertelno 20000x [Huawei-voice-trunkgroup-sipat0-proxy]signalling-address ip 192.168.10.2 port 5080 [Huawei-voice-trunkgroup-sipat0-proxy]media-ip 192.168.10.2 [Huawei-voice-trunkgroup-sipat0-proxy]peer-address static 192.168.10.10 5060 [Huawei-voice-trunkgroup-sipat0-proxy]register-uri abcd.com [Huawei-voice-trunkgroup-sipat0-proxy]home-domain abcd.com [Huawei-voice-trunkgroup-sipat0-proxy]sbc media-proxy enable [Huawei-voice-trunkgroup-sipat0-proxy]trunk-sipat0 200000 default-called-telno 200000 caller-telno 200000 Huawei-voice-trunkgroup-sipat0-proxy]reset Are you sure to continue?[Y/N]:y Note: Trunkgroup reset succeeds. [Huawei-voice-trunkgroup-sipat0-proxy]quit #Configure users. [Huawei-voice]pbxuser sipat0-200000 sipue [Huawei-voice-pbxuser-sipat0-200000]sipue 200000 [Huawei-voice-pbxuser-sipat0-200000]telno 200000 [huawei-voice-pbxuser-sipat0-200000]eid-para password cipher Please input user password(6-64 chars):****** [Huawei-voice-pbxuser-sipat0-200000]bind trunk-group sipat0-proxy trunk-sipat0 200000 [Huawei-voice-pbxuser-sipat0-200000]quit #Configure outgoing prefixes. [Huawei-voice]callprefix at0-out [Huawei-voice-callprefix-at0-out]prefix 20 [Huawei-voice-callprefix-at0-out]call-type category basic-service attribute 1 [Huawei-voice-callprefix-at0-out]digit-length 4 32 [Huawei-voice-callprefix-at0-out]callroute at0-out [Huawei-voice-callprefix-at0-out]quit #Configure incoming prefixes. [Huawei-voice]callprefix at0-in [Huawei-voice-callprefix-at0-in]enterprise default dn-set proxy [Huawei-voice-callprefix-at0-in]prefix 20 [Huawei-voice-callprefix-at0-in]call-type category basic-service attribute 0 [Huawei-voice-callprefix-at0-in]digit-length 4 32 [Huawei-voice-callprefix-at0-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 ] |
Values in the command output are the specified values. |
Verify prefix configuration |
display voice callprefix [ callprefix-name ] |
Values in the command output are the specified values. |