Browsed by
Category: Howto

What is ENUM? ENUM Syntax

What is ENUM? ENUM Syntax

ENUM (Telephone Number Mapping, E.164 Number to URI Mapping) is an addressing protocol that converts telephone numbers to URI format (name@domain). This allows you to access a SIP, H.323 or other Internet phone user by dialing a phone number.

The ENUM function aims to ensure that users can be accessed anywhere in the world with the same number, best quality and the cheapest way. ENUM maps a phone number to an Internet address in the DNS system. Thus, a user with an ENUM number can broadcast the DNS record to which the call will be routed. Even different routes can be defined for different types of calls (fax, video, etc.).

It is possible to obtain an ENUM record as if it were a domain name. Nowadays, you can obtain this registration free of charge through many registration services and VoIP service providers.

ENUM Syntax

ENUM allows normal phone (E.164) numbers to be displayed as DNS names ending in e164.arpa. A number can be decoded for one or more predefined services.

For example, a telephone number + 90-312-555-1234 will be displayed as 4.3.2.1.5.5.5.2.1.3.0.9.e164.arpa after issuing rules defined in RFC 3761 and below:

  1. All characters except digits are removed. (“+90-312-555-1234” becomes “903125551234″)
  2. A period (“.”) Is placed between each number. (“9.0.3.1.2.5.5.5.1.2.3.4”)
  3. The order of the numbers is reversed. (“4.3.2.1.5.5.5.2.1.3.0.9”)
  4. .e164.arpa is added to the end of the array. (“4.3.2.1.5.5.5.2.1.3.0.9.arp a”)

To respond to this syntax, the DNS server must have a record that looks like this:

$ ORIGIN 4.3.2.1.5.5.5.2.1.3.0.9.barley.
   NAPTR 10 100 "u" "E2U + sip" "! ^. * $! Sip: fatih.erikci@fatiherikci.com!" .
   NAPTR 10 101 & quot; u & quot; & quot; E2U + h323 & quot; .
   NAPTR 10 102 "u" "E2U + msg" "! ^. * $! Mailto: fatih.erikci@fatiherikci.com!" .

In this record you see three different routing sequences for the address 4.3.2.1.5.5.5.2.1.3.0.9. The first is SIP, the second is H.323 and the third is the SMTP response. Device selects which service to communicate by using these records.

How It Works?

The operating principle of ENUM is similar to the DNS queries we use on the Internet. DNS NAPTR resource records are used in queries.

ENUM Query and Call
ENUM Query and Call
  1. The phone calls an E.164 number (+90-312-555-1234)
  2. Gateway translates it (4.3.2.1.5.5.5.2.1.3.0.9.e164.arpa) and asks the DNS server.
  3. The DNS server responds to this query with a URI (sip: fatih.erikci@fatiherikci.com).
  4. The gateway sends the call to the SIP server as a SIP URI call.
  5. The SIP server rings the IP phone registered with the URI.
How to Install Jitsi Meet on Debian 10

How to Install Jitsi Meet on Debian 10

Jitsi Meet is a very usable and simple WebRTC based open-source multi-platform video conferencing solution. It can be even cloud based solution or you can install it on your premises. In this blog post, I will explain how to install Jitsi server on your Debian or Ubuntu based linux platform.

Before starting, if you are curious about the video calling experience, just click this URL and go to my video call page powered by meet.jit.si.

Installing Jitsi Meet is very easy if you want to install it on Ubuntu or Debian linux platform. In this guide you can find how to install Jitsi Meet on Debian 10 by using .deb packages.

I prefer installing Debian from net installer package (netinst), since it is a minimal installation with up-to-date packages. I assume that you can install a Debian linux and I will continue from that point.

First, let’s install base packages like sudo & ssh, so set that up first. Log in from console as root, then install the necessary packets.

apt-get install -y ssh sudo ufw apt-transport-https

Add your non-root user (mine is ferikci) to /etc/sudoers file.

 ferikci  ALL=(ALL:ALL) ALL 

Now you can continue with your user by using sudo commands.

(Optional) Enable UFW firewall and open the needed ports:

ufw allow in ssh
ufw allow in http
ufw allow in https
ufw allow in 10000:20000/udp
ufw enable

I have to warn you that if you are connected to your linux machine via SSH, enter “ufw enable” command after entering “ufw allow in ssh” command, otherwise you may lose your current SSH connection.

Now re-login with your non-root user via SSH for the rest of the setup.

Add the Jitsi GPG key.

wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -

Add the Jitsi repository and update apt

sudo sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list"
sudo apt-get -y update

Install Jitsi-Meet

Now you’re ready for Jitsi server installation. Use the command below to install jitsi-meet with dependencies:

sudo apt-get -y install jitsi-meet

You will be asked your hostname but do not only write your hostname, you MUST write as FQDN, otherwise you will encounter with problems. By the way, be sure that the FQDN can be addressable with your DNS server (Or you can insert the FQDN to your host file.).

Jitsi Hostname Configuration

After that you will be asked for certificate. In this installation I will use self-signed SSL certificate, so select the first option.

Jitsi SSL Certificate Configuration Menu

The installation will be completed after a while and it will put you to the command prompt. Reboot your linux machine:

sudo reboot

Now it’s time to connect to your video conference GUI. Use https://FQDN to go to the main page of Jitsi server:

https://jitsi.test.local

You will see a greeting page with a room name input field. Just enter a room name and click Go button.

Jitsi Meet Greeting Page

That’s it! You can add more participants with the same procedure or by using URL https://FQDN/roomname

https://jitsi.test.local/testroom
Finally Jitsi Meet is Alive!

Running Jitsi Meet Behind a NAT

If you wish to use your Jitsi server behind a NAT, you must configure your router to forward the following ports to your Jitsi Meet server:

  • 80/TCP
  • 443/TCP
  • 10000-20000/UDP

Next you have to add following lines to /etc/jitsi/videobridge/sip-communicator.properties file:

org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=[INTERNAL.IP.ADDRESS]
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=[PUBLIC.IP.ADDRESS]

For example, here is my configuration:

org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=192.168.1.20
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=95.9.74.32
CUCM Common Partition – How to Clean?

CUCM Common Partition – How to Clean?

Sometimes when you go through RTMT logs on a Cisco Unified Communicatios Manager (CUCM), you can see a critical warning of “LogPartitionLowWaterMarkExceeded“. This happens when free space in CUCM common partition becomes low.

In most cases this problem doesn’t affect the whole system to function, but the low space on disk may cause problems if you want to do some installation (eg. device pack) or upgrades.

CUCM common partition is also called as log partition and is mostly filled with CDRs, CUCM traces and phone firmware files from TFTP server. LogPartitionLowWaterMarkExceeded alarm is occured when the log partition disk space percentage reaches the “Low WaterMark” treshold. You can take this alarm as an early notification to clean up the disk space. CUCM doesn’t have such kind of automated cleanup process until the “High WaterMark” value is reached.

What Should I Do To Clean CUCM Common Partition?

To clean up and free some space in the common partition, you can do the following:

  • Change the threshold values of LogPartitionLowWaterMarkExceeded to 50% and LogPartitionHighWaterMarkExceeded to 60%, and then restart “Cisco Log Partition Monitoring Tool” service and after couple of hours you should see that the used space is decreased.
  • Delete unused log by using RTMT Trace/Log Central to collect logs/traces with “Delete Collected Log Files from Server” option.(this is for both active and inactive partitions). Select relateive range as 8-9 years to delete all unused logs.
  • Delete the old unused phone firmware files from the TFTP server.
  • Use CUCM script called ciscocm.free_common_space_v1.1.cop.sgn (you can find & download it in cisco.com) that deletes all files from the inactive common partition. But please be informed that after using this script, you won’t be able to switch to previous CUCM version.

If you want to reduce the CUCM common partition usage, you can do the following:

  • Deactivate Detail/Debug trace level.
  • Reduce the number of trace files to be stored.
  • For CDR: reduce the High Water Mark, reduce the occupied disk space, and reduce the number of days to store CDRs.

Taking a Screenshot of a Cisco IP Phone

Taking a Screenshot of a Cisco IP Phone

The screen capture function which is available on Cisco IP Phone models can be very useful, especially in some situations that require remote support. In the following article, you can find the procedure for taking screenshots for Cisco 7800 and 8800 series IP phones.

First, let’s verify some settings on Cisco Unified Communications Manager (CUCM).

CUCM Settings

In order to take a screenshot of a Cisco IP phone, the phone first must be paired with a CUCM user (End User) and web access must be enabled in the phone settings page. You can make these settings from the CUCM Administration page using the Device -> Phone menu and selecting the corresponding phone.

First you need to open the web interface of the phone. To do so, enable Web Access in the Product Specific Configuration Layout section.

Cisco IP Phone Web Access Settings

Then we need to pair the IP phone with an end user. Select the end user in Owner User ID section on the same settings page.

Pairing End User With Cisco IP Phone

After selecting the end user, select the relevant user from the User Management -> End User menu and ensure that the corresponding phone is added in the Controlled Devices field of Device Information section.

User – IP Phone Matching under End User Settings

After applying these settings, go to System -> Enterprise Parameters menu and check the user authentication URLs that the phone will use when accessing the web interface. Related settings can be found in the Phone URL Parameters and Secure Phone URL Parameters.

Service Authentication URL Settings in Enterprise Parameters

Authentication on IP phones uses the URL format below:

http(s)://cucmcip/authenticate.jsp?UserID=<id>&Password=<password>&devicename=<nameofthedevice>

If the information entered is appropriate, browser displays a simple AUTHORIZED message, and if there is inconsistency in the information, UN-AUTHORIZED message is displayed. Below is a sample URL and its output:

You Can Check Your CUCM End User & Password This Way

Tip: If you want to by-pass authentication on IP phones, you can redirect the Authentication URLs under Enterprise Parameters to a webpage that will always respond as “AUTHORIZED” 🙂

Taking a Screenshot of a Cisco IP Phone From a Web Browser

If you have done all of the above steps properly, you can now take a screenshot of your IP phone. To do so, you can use the following URL:

 http://cucmip/CGI/Screenshot 

After entering the username and password, you will see an image like the following:

Cisco 7821 IP Phone Screenshot Tkane From a Web Browser

Troubleshooting

If you get an error message like this in your web browser:

 <CiscoIPPhoneError Number=”4” /> 

This problem is probably related to authentication. Verify that the IP phone is in control of an end user and that the user’s credentials are correct. To see this easily, you can test and adapt the above authentication URL format to your phone. If the URL works but the phone’s web page still shows the same error, reset the phone and try again.

 <CiscoIPPhoneError Number=”0” /> 

This error indicates that the phone cannot connect to the URL provided in CUCM for authentication. There can be many things that can cause this issue, and almost all of them are about the accessibility. Please check the settings like routing from IP telephones to CUCM (or authentication server), DNS etc.

Cisco Serial Number Analyis in Detail

Cisco Serial Number Analyis in Detail

In this article you will find a detailed analysis of the serial numbers of your Cisco devices. This allows you to learn where and when your device was manufactured with the Cisco serial number.

Cisco Serial Number Format

The common serial number format in Cisco is:

LLLYYHHXXX

Now let’s explain these letters one by one:

LLL: Company and Country (Location) Codes:

Indicates which company produced the device and where. Below you will find the relevant companies and locations:

CTH – Celestica – Thailand
FOC – Foxconn – Shenzhen, China
JAB – Jabil – Florida, United States
JPE – Jabil – Malaysia
JSH – Jabil in Shanghai, China
TAU – Solectron – Texas, United States
PEN – Solectron – Malaysia

YY: Year Codes

This two-digit code indicates the year of manufacture. There is a nuance that needs attention. To find the year of manufacture, you must add 1996 to the specified number. For example, if it says 20, the device was manufactured in 20 + 1996 = 2016.

Below you will find code and year information for your convenience:

01 = 1997
02 = 1998
03 = 1999
04 = 2000
05 = 2001
06 = 2002
07 = 2003
08 = 2004
09 = 2005
10 = 2006
11 = 2007
12 = 2008
13 = 2009
14 = 2010
15 = 2011
16 = 2012
17 = 2013
18 = 2014
19 = 2015
20 = 2016
21 = 2017
22 = 2018
23 = 2019

HH: Week Codes

This section indicates which week of the year the device was manufactured. For convenience, you can find the week-to-month matching below:

1-5: January
6-9: February
10-14: March
15-18: April
19-22: May
23-27: June
28-31: July
32-35: August
36-40: September
41-44: October
45-48: November
49-52: December

XXXX: Serial Number

The last 4 digits are the device-specific serial number. 0-9 and A-Z (except for I and O). With these 4 digits, approximately 1.3 million combinations can be produced.

An Example: FOC18240VLV

Company and Place Foxconn – Shenzhen, China
Year of Production 18 + 1996 = 2014
Production Week 24 (June)
Serial No 0VLV