Inhoud

Inleiding

Voorwaarden

Vereisten

Gebruikte componenten

Doel van de functie

Configureren

Netwerkdiagram

Installatieproces

Gebruik na de installatie de webpagina OS Admin

Gebruik na installatie de opdrachtregelinterface

Problemen oplossen

Te verzamelen gegevens

Voorbeeldanalyse

PCAP review voor CUCM - No File

PCAP review voor CUCM - With File

CLI-uitgangsbeoordeling voor CUCM

Verdere overwegingen

Gerelateerde informatie

Inleiding

Dit document beschrijft Network Time Protocol (NTP) voor Cisco Unified Communications Manager (CUCM).

Voorwaarden

Vereisten

Er zijn geen specifieke vereisten van toepassing op dit document.

Gebruikte componenten

Dit document is niet beperkt tot specifieke software- en hardware-versies.

De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.

Doel van de functie

Dit document behandelt het doel van NTP met CUCM, de configuratie van NTP, welke gegevens om te verzamelen om problemen op te lossen, voorbeeldanalyse van de gegevens, en verwante middelen voor extra onderzoek.

Het doel van de NTP met CUCM is ervoor te zorgen dat de servers zich bewust zijn van de juiste tijd. De tijd in de CUCM-servers is belangrijk omdat Voice over Internet Protocol (VOIP) uiterst gevoelig is voor tijdsvariaties. Het CUCM-cluster moet een tijdsynchronisatie onderhouden die dicht bij de andere servers in het cluster blijft, dit is te wijten aan vereisten voor databasereplicatie.

Tot slot is tijd om problemen op te lossen belangrijk aangezien u de juiste tijdstempels in de logboeken wilt hebben.

Configureren

Het is belangrijk om op te merken dat de CUCM bepaalde NTP-servers vereist.

De Windows NTP-server wordt niet ondersteund voor CUCM; andere typen zoals Linux NTP-bronnen, Cisco IOS® NTP-bronnen en Nexus OS NTP-bronnen zijn echter acceptabel. Hoewel andere Cisco-oplossingen Windows servers kunnen gebruiken voor de NTP-oplossing, zijn UC-oplossingen zoals CallManager, Cisco Unity en Instant Messaging and Presence niet in staat dit te doen en vereisen zij een op Linux gebaseerde of Cisco IOS® gebaseerde NTP-oplossing. Dit komt doordat Windows Time Services vaak SNTP gebruikt waarmee Linux systemen moeilijk kunnen synchroniseren.

Netwerkdiagram

De CUCM-uitgever heeft een NTP-bron nodig die geen lid is van de CUCM-cluster; daarom synchroniseert de CUCM-uitgever zijn tijd met de NTP-server. In deze uitwisseling is de CUCM-uitgever een NTP-client.

De CUCM-abonnees synchroniseren hun tijd met de CUCM-uitgever. In deze uitwisseling is de CUCM-uitgever een NTP-server waar de CUCM-abonnees NTP-clients zijn.

Waarschuwing: houd er rekening mee dat de Cisco Instant Messaging & Presence (IM&P)-servers ook als abonnees van het CUCM-cluster worden beschouwd, en vertrouwen zij daarom ook op de NTP van de CUCM. Met andere woorden, als het NTP op de IM&P-server niet synchroon is, veroorzaakt het problemen in het systeem met zijn Databasereplicatie en Hoge Beschikbaarheid.

Installatieproces

Wanneer CUCM is geïnstalleerd, wordt er gevraagd of de server de eerste knooppunt in het cluster is.

Als de server niet de eerste knooppunt in het cluster is, beweegt de installatiewizard zich voorbij de NTP-configuratiefase; u wordt echter gevraagd om de NTP-server(s) als dit de eerste knooppunt in het cluster is.

Gebruik na de installatie de webpagina OS Admin

Gebruik na installatie de opdrachtregelinterface

Zoals in de afbeeldingen wordt getoond, kunt u de opdrachten vinden die worden gebruikt om de NTP-servers binnen de CUCM-server te openen en aan te passen.

- De opdracht maakt gebruik van ntp serverlijst toont de NTP servers die op uw systeem zijn geconfigureerd.

- De opdracht maakt gebruik van ntp server add ntp_address en voegt een nieuwe NTP server toe aan het systeem.

Opmerking: Houd in gedachten dat als u een nieuwe NTP-server wilt toevoegen, de CUCM-server bereikbaarheid test voordat het toevoegt, als het mislukt, de volgende fout wordt gezien.

- Met de opdracht utils ntp server delete kunt u een van de NTP's die al binnen het systeem zijn geconfigureerd, verwijderen.

Problemen oplossen

Te verzamelen gegevens

Wanneer u een probleem met NTP oplost, moet u deze gegevens verzamelen van welke CUCM-server(s) de NTP-problemen hebben:

- De uitvoer van de opdrachthulpprogramma's diagnostiseert test

- De uitvoer van bestanden met de status ntp

- De NTP-logbestanden uit de CUCM die is verzameld uit de Cisco Real-Time Monitor Tool (RTMT)

Voorbeeldanalyse

De volgende informatie van de CUCM Publisher en het NTP is bijvoorbeeld gebruikt:

CUCM Publisher

Versie: 11.5(1) SU5

FQDN: cucm-115.home.lab

IP-adres begint met 192.X.X.X

NTP

Van Google NTP-server

FQDN: time1.example.com.ntp

IP-adres begint met 216.X.X.X

PCAP review voor CUCM - No File

Let op: het poortnummer is 123. Dit is de poort voor NTP. In de output van het bevel in het tekstvakje, kunt u zien de versie NTP 4 zoals die door "NTPv4"wordt genoteerd is. U kunt ook nota nemen van de uitgever, die als een klant optreedt wanneer het zijn communicatie met "time1.example.com" vestigt; het werkt echter als een server wanneer het communicatie met cucm-sub1, cucm-sub2 en cucm-sub3.

From the CLI of the publisher run the command "utils network capture port 123"

Wait until you see traffic (this can take a little time, or it may be instant) then hit

ctrl+c. Look in the traffic to find where your publisher is communicating with its NTP

server and the NTP server is communication with the publisher (if the NTP server isn't

replying then it is an issue in the network or with the NTP server). The primary focus of

this output is the NTP version. In CUCM 9 and later NTP version 3 (NTPv3) can cause issues

and an NTP source using NTPv4 should be the NTP server for the publisher.

admin:utils network capture size all count 10000000 port 123

Executing command with options:

size=128                count=1000              interface=eth0

src=dest=                   port=123

ip=

16:08:43.199710 IP cucm-sub3.home.lab.39417 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:08:43.199737 IP cucm-115.home.lab.ntp > cucm-sub3.home.lab.39417: NTPv4, Server, length 48

16:08:43.199823 IP cucm-sub3.home.lab.39417 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:08:43.199859 IP cucm-115.home.lab.ntp > cucm-sub3.home.lab.39417: NTPv4, Server, length 48

16:09:01.640980 IP cucm-115.home.lab.50141 > time1.example.com.ntp: NTPv4, Client, length 48

16:09:01.654675 IP time1.example.com.ntp > cucm-115.home.lab.50141: NTPv4, Server, length 48

16:09:01.654733 IP cucm-115.home.lab.50141 > time1.example.com.ntp: NTPv4, Client, length 48

16:09:01.667368 IP time1.example.com.ntp > cucm-115.home.lab.50141: NTPv4, Server, length 48

16:09:01.668612 IP cucm-115.home.lab.50141 > time1.example.com.ntp: NTPv4, Client, length 48

16:09:01.681366 IP time1.example.com.ntp > cucm-115.home.lab.50141: NTPv4, Server, length 48

16:09:01.681518 IP cucm-115.home.lab.50141 > time1.google.com.ntp: NTPv4, Client, length 48

16:09:01.694108 IP time1.google.com.ntp > cucm-115.home.lab.50141: NTPv4, Server, length 48

16:09:01.875016 IP cucm-115.home.lab.48422 > time1.google.com.ntp: NTPv4, Client, length 48

16:09:01.884476 IP cucm-sub3.home.lab.58072 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:01.884568 IP cucm-115.home.lab.ntp > cucm-sub3.home.lab.58072: NTPv4, Server, length 48

16:09:01.884954 IP cucm-sub3.home.lab.58072 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:01.884999 IP cucm-115.home.lab.ntp > cucm-sub3.home.lab.58072: NTPv4, Server, length 48

16:09:01.885381 IP cucm-sub3.home.lab.58072 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:01.885423 IP cucm-115.home.lab.ntp > cucm-sub3.home.lab.58072: NTPv4, Server, length 48

16:09:01.886147 IP cucm-sub3.home.lab.58072 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:01.886184 IP cucm-115.home.lab.ntp > cucm-sub3.home.lab.58072: NTPv4, Server, length 48

16:09:01.888555 IP time1.google.com.ntp > cucm-115.home.lab.48422: NTPv4, Server, length 48

16:09:01.888642 IP cucm-115.home.lab.48422 > time1.google.com.ntp: NTPv4, Client, length 48

16:09:01.900926 IP time1.google.com.ntp > cucm-115.home.lab.48422: NTPv4, Server, length 48

16:09:01.901017 IP cucm-115.home.lab.48422 > time1.google.com.ntp: NTPv4, Client, length 48

16:09:01.913497 IP time1.google.com.ntp > cucm-115.home.lab.48422: NTPv4, Server, length 48

16:09:01.913566 IP cucm-115.home.lab.48422 > time1.google.com.ntp: NTPv4, Client, length 48

16:09:01.926693 IP time1.google.com.ntp > cucm-115.home.lab.48422: NTPv4, Server, length 48

16:09:02.038981 IP cucm-sub2.home.lab.42078 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:02.039117 IP cucm-115.home.lab.ntp > cucm-sub2.home.lab.42078: NTPv4, Server, length 48

16:09:02.039281 IP cucm-sub2.home.lab.42078 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:02.039345 IP cucm-115.home.lab.ntp > cucm-sub2.home.lab.42078: NTPv4, Server, length 48

16:09:02.039434 IP cucm-sub2.home.lab.42078 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:02.039535 IP cucm-115.home.lab.ntp > cucm-sub2.home.lab.42078: NTPv4, Server, length 48

16:09:02.039607 IP cucm-sub2.home.lab.42078 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:02.039814 IP cucm-115.home.lab.ntp > cucm-sub2.home.lab.42078: NTPv4, Server, length 48

16:09:02.066544 IP cucm-sub1.home.lab.46400 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:02.066622 IP cucm-115.home.lab.ntp > cucm-sub1.home.lab.46400: NTPv4, Server, length 48

16:09:02.066751 IP cucm-sub1.home.lab.46400 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:02.066892 IP cucm-115.home.lab.ntp > cucm-sub1.home.lab.46400: NTPv4, Server, length 48

16:09:02.066968 IP cucm-sub1.home.lab.46400 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:02.067104 IP cucm-115.home.lab.ntp > cucm-sub1.home.lab.46400: NTPv4, Server, length 48

16:09:02.067155 IP cucm-sub1.home.lab.46400 > cucm-115.home.lab.ntp: NTPv4, Client, length 48

16:09:02.067189 IP cucm-115.home.lab.ntp > cucm-sub1.home.lab.46400: NTPv4, Server, length 48

PCAP review voor CUCM - With File

De filter die wordt gebruikt om de NTP-kwestie in de pakketopname op te lossen is: udp.port == 123. Met dat filter kon je zien dat de CUCM-uitgever communicatie opzette met de Google NTP-server en dat de CUCM-uitgever ook communiceerde met de CUCM-abonnees.

CLI-uitgangsbeoordeling voor CUCM

hulpprogramma's voor ntp-status

NOTE: All nodes will show the current time in UTC regardless of the time zone of the server

(listed in UTC time). This makes it easy to compare times on the different CUCM nodes.

NOTE: If there is a time difference of 15 minutes or more, it is expected that DB replication

will be broken

1) If the publisher is ahead by 15 minutes, this can result in the pub send data to the

sub and the sub would have a delay to process the data because it has not yet reached the time

in the timestamp of the packets from the publisher (this is expected behavior in this type of situation)

2) If  the subscriber is ahead by 15 minutes, this would result in the subscriber drop

the data from the publisher because the subscriber sees it as old data (15 minutes old)

admin:utils ntp status

ntpd (pid 28435) is running...

remote           refid      st t when poll reach   delay   offset  jitter

==============================================================================

203.0.113.0    .GOOG.           1 u   44   64    3   11.724   -0.021   0.064

unsynchronised

polling server every 8 s

Current time in UTC is : Fri Sep  6 20:54:50 UTC 2019

Current time in America/New_York is : Fri Sep  6 16:54:50 EDT 2019

admin:

Lees de volgende informatie, aangezien het de vorige output in detail verklaart.

The very first column contains the "tally code" character. Short overview:

* the source you are synchronized to (syspeer)

# source selected, distance exceeds maximum value

o the PPS(Pulse Per Second) source if your ntpd (ppspeer, only if you have a PPS capable system and refclock)

+ candidate, i.e. it is considered a good source

- outlyer, i.e. quality is not good enough

x falseticker, i.e. this one is considered to distribute bad time

blank: source discarded, failed sanity

See the Select field of the Peer status word on the NTP Event Messages and

Status Words page for more information on the tally codes.

remote

the hostname or IP of the remote machine.

refid

the identification of the time source to which the remote machines is synced.

May be (for example) a radio clock or another ntp server)

st

the stratum of the remote machine. 16 is "unsynchronized". 0 is the best

value, that could be (for example) a radio clock or the ntp servers private

caesium clock (see http://www.eecis.udel.edu/~mills/ntp/html/index.html#intro

for more information about ntp in general).

t

types available:

l = local (such as a GPS, WWVB)

u = unicast (most common)

m = multicast

b = broadcast

- = netaddr

when

how many seconds since the last poll of the remote machine.

poll

the polling interval in seconds.

reach

an 8-bit left-rotating register. Any 1 bit means that a "time packet" was

received. The right most bit indicate the status of the last connection

with the NTP server. It is Octal number. Use calculator in progammer

interface to translate from OCT to BIN: For example 377 translates to

11111111. Each 1 means a successful connection to the NTP server. If you

just start a NTP service, and it connects successfully with its server, this

number will change as follows (if connectivity is good):

00000001 = 001

00000011 = 003

00000111 = 007

00001111 = 017

00011111 = 037

00111111 = 077

01111111 = 177

11111111 = 377

delay

the time delay (in milliseconds) to communicate with the remote.

offset

the offset (in milliseconds) between our time and that of the remote.

jitter

the observed jitter (in milliseconds) of time with the remote.

hulpprogramma's diagnosticeren testuitvoer

admin:utils diagnose test

Log file: platform/log/diag1.log

Starting diagnostic test(s)

===========================

test - disk_space          : Passed (available: 6463 MB, used: 12681 MB)

skip - disk_files          : This module must be run directly and off hours

test - service_manager     : Passed

test - tomcat              : Passed

test - tomcat_deadlocks    : Passed

test - tomcat_keystore     : Passed

test - tomcat_connectors   : Passed

test - tomcat_threads      : Passed

test - tomcat_memory       : Passed

test - tomcat_sessions     : Passed

skip - tomcat_heapdump     : This module must be run directly and off hours

test - validate_network    : Passed

test - raid                : Passed

test - system_info         : Passed (Collected system information in diagnostic log)

test - ntp_reachability    : Passed

test - ntp_clock_drift     : Passed

test - ntp_stratum         : Passed

skip - sdl_fragmentation   : This module must be run directly and off hours

skip - sdi_fragmentation   : This module must be run directly and off hours

Diagnostics Completed

The final output will be in Log file: platform/log/diag1.log

Please use 'file view activelog platform/log/diag1.log' command to see the output

admin:

Als NTP in de hulpmiddelen ontbreekt diagnoseer testoutput zou u iets gelijkend op dit zien:

admin:utils diagnose test

Log file: platform/log/diag1.log

Starting diagnostic test(s)

===========================

test - disk_space          : Passed (available: 6463 MB, used: 12681 MB)

skip - disk_files          : This module must be run directly and off hours

test - service_manager     : Passed

test - tomcat              : Passed

test - tomcat_deadlocks    : Passed

test - tomcat_keystore     : Passed

test - tomcat_connectors   : Passed

test - tomcat_threads      : Passed

test - tomcat_memory       : Passed

test - tomcat_sessions     : Passed

skip - tomcat_heapdump     : This module must be run directly and off hours

test - validate_network    : Passed

test - raid                : Passed

test - system_info         : Passed (Collected system information in diagnostic log)

test - ntp_reachability    : Warning

The NTP service is restarting, it can take about 5 minutes.

test - ntp_clock_drift     : Warning

The local clock is not synchronised.

None of the designated NTP servers are reachable/functioning or legitimate.

test - ntp_stratum         : Warning

The local clock is not synchronised.

None of the designated NTP servers are reachable/functioning or legitimate.

skip - sdl_fragmentation   : This module must be run directly and off hours

Bevestig dat NTP goed was op het moment van de installatie. Start de opdracht:

run sql selecteer kid, name, dbinfo('utc_to_datetime', cdrtime) als CDRTIME van apparaat waar cdrtime > getCurrTime()

Met deze opdracht wordt de huidige tijd vergeleken met de cdrtime (toen de tabel werd gewijzigd). Als u een slechte NTP in de installatie/upgrade gebruikte en vervolgens de NTP bijwerkte, gaat de database uit synchronisatie telkens wanneer een wijziging wordt aangebracht. Dit probleem zou niet worden gezien wanneer u de typische NTP-opdrachten uitvoert (bijvoorbeeld gebruikt ntp-status) omdat u bent verhuisd van de slechte NTP-bron naar een goede.

Het zou goed zijn dat je van de slechte NTP naar een goede verhuisde; echter, een beweging naar een goede NTP bron zou niet de tabellen repareren die zijn gemaakt tijdens de installatie/upgrade.

Wanneer men deze opdracht uitvoert is de verwachte output dit:

admin:run sql select pkid,name,dbinfo('utc_to_datetime', cdrtime) as CDRTIME  from device where cdrtime > getCurrTime()

pkid name cdrtime

==== ==== =======

admin:

Als u een gelijkaardige output aan volgende hebt, is het een teken dat NTP dat voor wordt gebruikt installeert/upgrade niet is gebruikt en problemen veroorzaakt die de gegevensbestandreplicatie beïnvloeden:

admin:run sql select pkid,name,dbinfo('utc_to_datetime', cdrtime) as CDRTIME from device where cdrtime > getCurrTime()

pkid                                    name          cdrtime

=============================           =====         =====================

bf80dd31-9911-43ce-81fd-a99ec0333fb5    MTP_2         2016-09-11 14:38:14.0

4c38fc05-760d-4afb-96e8-69333c195e74    CFB_2         2016-09-11 14:38:14.0

90878c80-e213-4c7e-82b9-6c780aac72f3    ANN_2         2016-09-11 14:38:14.0

08b5bff4-da94-4dfb-88af-ea9ffa96872c    MOH_2         2016-09-11 14:38:14.0

93320e4d-1b73-4099-9a7c-c4cddfadb5d9    MTP_3         2016-09-11 14:38:14.0

a6850d42-5f0a-49ce-9fa3-80d45b800e23    CFB_3         2016-09-11 14:38:14.0

9963c9cb-58b0-4191-93e1-8676584f6461    ANN_3         2016-09-11 14:38:14.0

def79fb7-c801-4fb3-85fb-4e94310bf0bd    MOH_3         2016-09-11 14:38:14.0

4cd64584-089b-4331-9291-79774330cbc     2 MTP_4       2016-09-11 14:38:14.0

27b18882-db83-4d14-8bce-d3f8dc439610    CFB_4         2016-09-11 14:38:14.0

a40da882-e04f-4649-b2eb-2f79d1289e81    ANN_4         2016-09-11 14:38:14.0

36575ff4-cdea-4945-87e7-638cc555463e    MOH_4         2016-09-11 14:38:14.0

Verdere overwegingen

1) Als u de ESXi-hosts upgradt zonder rekening te houden met de VM-hardware-overwegingen, kunt u NTP-problemen ervaren.

2) Zorg ervoor dat de ESXi-versie in overeenstemming is met de virtualisatiematrix.

3) Controleer of de ESXi-versie en de hardwareversie compatibel zijn

Gerelateerde informatie

- Technische ondersteuning en documentatie - Cisco SysteemO

- Cisco Collaboration System 10.x Solution Reference Network Designs (SRND)

- De NTP-bron in CUCM wijzigen van CLI en andere nuttige informatie

- NTP-probleemoplossing voor Cisco Unified Communications Manager

- Network Time Protocol: Best Practices-witboek

- Packet Capture op CUCM-applicatie model