ENUM is an IETF standard (RFC 2916) for mapping the public telephone number address space into the Domain Name System (DNS). In the iLabs, we use ENUM to centralize our call routing information in a standards based format.
Most people think of as telephone numbers as 11-digit sequences that follow this pattern: +1 702 555-1212. These telephone numbers are part of a global numbering plan specified by the International Telecommunications Union (ITU) in Recommendation E.164. ENUM specifies how to use DNS to locate services associated with E.164 addresses. Not all telephone numbers are complete E.164 addresses, but for simplicity's sake, we'll use both terms interchangeably in this paper. While ENUM specifies methods for locating many different type of services, such as those provided by mail or Web servers, in the iLabs, we are mainly concerned with using ENUM for IP telephony, and specifically the Session Initiation Protocol (SIP).
In SIP, the closest equivalent to a typical phone number is the SIP URI (Uniform Resource Identifier). Inside of SIP, these are used to make calls. A few typical SIP URIs are:
sip:3110@sip.ilabs.interop.net
sip:voicemail@sip.ilabs.interop.net
The part to the left of the "@" sign (local part) in the first example is numeric. SIP URIs often have numeric local parts
because most phones only have numeric keypads. However, SIP URIs do not have to be numeric, as the second example shows.
When used internally to the SIP network, or when dialed with a "soft phone" from a laptop, the alphanumeric format poses no
user interface problems.
The problem ENUM tries to solve is the mapping between a standard telephone number and a SIP URI. When dialed in the context of a single enterprise SIP network, this mapping can be built into the SIP infrastructure (such as "automatically append @sip.ilabs.interop.net to every 4 digit number dialed"). When dialing between SIP networks, a directory service is needed to map dialed numbers to SIP URIs. You can put that directory anywhere. With ENUM, the directory is stored in the DNS.
Once ENUM is widely deployed, the idea is that you should be able to dial any "phone number," and have your SIP infrastructure look it up using DNS. If a SIP URI exists for that phone number, the call could be routed directly via IP. If no URI exists, the call would have to be routed over the normal PSTN.
When ENUM is used, international phone numbers are stored in the DNS to enable SIP-to-SIP calls within and across enterprises using E.164 addresses. These E.164 addresses are in the global DNS in the domain e164.arpa in a special naming format. To create the name we start with a form of the telephone number, including the country code (for example, the US has country code 1):
+1 702 555-1212
Notice the most specific part of a telephone number is on the right and the least specific part, the country code (1) and the area code (702) are on the left. Next, we remove all the characters except for the digits: