In dem Dokumentationssatz für dieses Produkt wird die Verwendung inklusiver Sprache angestrebt. Für die Zwecke dieses Dokumentationssatzes wird Sprache als „inklusiv“ verstanden, wenn sie keine Diskriminierung aufgrund von Alter, körperlicher und/oder geistiger Behinderung, Geschlechtszugehörigkeit und -identität, ethnischer Identität, sexueller Orientierung, sozioökonomischem Status und Intersektionalität impliziert. Dennoch können in der Dokumentation stilistische Abweichungen von diesem Bemühen auftreten, wenn Text verwendet wird, der in Benutzeroberflächen der Produktsoftware fest codiert ist, auf RFP-Dokumentation basiert oder von einem genannten Drittanbieterprodukt verwendet wird. Hier erfahren Sie mehr darüber, wie Cisco inklusive Sprache verwendet.
Cisco hat dieses Dokument maschinell übersetzen und von einem menschlichen Übersetzer editieren und korrigieren lassen, um unseren Benutzern auf der ganzen Welt Support-Inhalte in ihrer eigenen Sprache zu bieten. Bitte beachten Sie, dass selbst die beste maschinelle Übersetzung nicht so genau ist wie eine von einem professionellen Übersetzer angefertigte. Cisco Systems, Inc. übernimmt keine Haftung für die Richtigkeit dieser Übersetzungen und empfiehlt, immer das englische Originaldokument (siehe bereitgestellter Link) heranzuziehen.
Dieses Dokument beschreibt das NAT-Verhalten (Network Address Translation) bei Routern, die als CUBE (Cisco Unified Border Element), CME oder CUCME (Cisco Unified Communication Manager Express), Gateways und CUSP (Cisco Unified SIP Proxy) arbeiten.
Cisco empfiehlt, dass Sie über Kenntnisse in folgenden Bereichen verfügen:
Die Informationen in diesem Dokument basieren auf
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netz Live ist, überprüfen Sie, ob Sie die mögliche Auswirkung jedes möglichen Befehls verstehen.
Network Address Translation ist eine häufig verwendete Technik zum Übersetzen von IP-Adressen in Paketen, die über unterschiedliche Adressräume zwischen Netzwerken übertragen werden. NAT soll in diesem Dokument nicht behandelt werden. Vielmehr soll das Dokument eine umfassende Überprüfung der NAT ermöglichen, wie sie in Cisco VoIP-Netzwerken verwendet wird. Außerdem ist der Umfang auf Komponenten beschränkt, aus denen die MS-Voice-Technologie besteht.
Abbildung 1
Hinweis: NAT kann dabei helfen, IP-Pakete mithilfe von privatem Adressraum zum Netzwerk hin- und herzuleiten. Mit anderen Worten: NAT macht nicht routbare Adressen routbar
Abbildung 2 zeigt die Topologie, auf die in den folgenden Abbildungen verwiesen wird.
Abbildung 2
Dieses Glossar ist grundlegend für das Verständnis und die Beschreibung von NAT.
Hinweis: Machen Sie sich mit diesen Bedingungen vertraut. Jede Anmerkung oder jedes Dokument zu NAT bezieht sich auf sie
Dies ist die einfachste Form der NAT, bei der jede interne Adresse statisch in eine externe Adresse übersetzt wird (und umgekehrt).
Abbildung 3
Die CLI für die obige Übersetzung muss wie folgt konfiguriert werden:
Schnittstelle Ethernet0/0
ip address 10.1.1.1.3 255.255.255.0
ip nat innen
!
interface Serial0/0
ip address 200.1.1.1.251 255.255.255.252
ip nat outside <— Erforderlich![2]
ip nat inside source static 10.1.1.2 200.1.1.2
ip nat inside source static 10.1.1.1 200.1.1.1
Bei der dynamischen NAT wird jeder interne Host einer Adresse aus einem Adresspool zugeordnet.
Die folgende CLI veranschaulicht die Konfiguration der dynamischen NAT.
Wenn der Pool (mit IP-Adressen) kleiner ist als der Satz von Adressen, die übersetzt werden müssen, ist diese Funktion praktisch.
Abbildung 4 zeigt die PAT.
Abbildung 4
Die Cisco NAT-Implementierung ist sehr vielseitig und bietet eine Vielzahl von Optionen. Einige der nachfolgend aufgeführten Funktionen sind verfügbar. Eine vollständige Liste der Verbesserungen finden Sie unter http://www.cisco.com/en/US/partner/technologies/tk648/tk361/tk438/technologies_white_paper09186a0080091cb9.html.
Ein Nadelloch in der NAT-Sprache bezieht sich auf die Zuordnung zwischen den <Host-IP, Port> und <globale Adresse, globaler Port>-Tupeln. Es ermöglicht dem NAT-Gerät, die Zielportnummer (d. h. den globalen Port) eingehender Nachrichten zu verwenden, um das Ziel wieder der Host-IP und dem Port zuzuordnen, von dem die Sitzung gestartet wurde. Beachten Sie, dass die Zeitüberschreitung bei den Pinholes nach einer bestimmten Zeit der Nichtbenutzung auftritt und die öffentliche Adresse an den NAT-Pool zurückgegeben wird.
Worin bestehen also die Probleme und Bedenken bezüglich NAT in VoIP-Netzwerken? Nun, erinnern Sie sich, dass NAT, die wir bisher besprochen haben (lose bezeichnet als grundlegende NAT) nur übersetzt die IP-Adresse im IP-Paket-Header und berechnet die Prüfsumme, natürlich, aber VoIP-Signalisierung tragen Adressen in den Körper der Signalisierungsnachrichten eingebettet. Mit anderen Worten, auf Layer 5
Abbildung 5 veranschaulicht die Auswirkungen, die auftreten, wenn die eingebetteten IP-Adressen nicht übersetzt werden. Die Anrufsignalisierung wurde erfolgreich abgeschlossen, aber der SIP-Proxy des Service Providers versucht nicht, Medienpakete (RTP) an die vom Anruf-Agenten gesendete Medienadresse weiterzuleiten.
Abbildung 5
Ein weiteres Beispiel wäre die Verwendung des Kontakts durch das SIP-Endgerät: -Feld in SDP ein, um die Adresse mitzuteilen, an der der Endpunkt Signalisierungsnachrichten für neue Anforderungen empfangen möchte.
Diese Probleme werden durch die Funktion Application Layer Gateway (ALG) behoben.
Ein ALG versteht das Protokoll, das von den spezifischen Anwendungen verwendet wird, die es unterstützt (z. B. SIP), und führt eine Protokollpaketprüfung und die Korrektur des Datenverkehrs durch dieses Protokoll durch. Eine gute Beschreibung der verschiedenen Felder für die SIP-Anrufsignalisierung finden Sie unter http://www.voip-info.org/wiki/view/Routers+SIP+ALG.
Auf Cisco Routern ist die Unterstützung für ALG SIP auf dem standardmäßigen TCP-Port 5060 standardmäßig aktiviert. Es ist möglich, das ALG so zu konfigurieren, dass nicht standardmäßige Ports für die SIP-Signalisierung unterstützt werden. Weitere Informationen finden Sie unter http://www.cisco.com/en/US/docs/ios-xml/ios/ipaddr_nat/configuration/15-mt/nat-tcp-sip-alg.html.
Achtung: Vorsicht! Es gibt weder RFC noch einen anderen Standard, der genau festlegt, welche eingebetteten Felder für die verschiedenen VoIP-Protokolle übersetzt werden sollen. Daher unterscheiden sich die Implementierungen je nach Gerätehersteller, was zu Interoperabilitätsproblemen (und TAC-Fällen) führt.
Da Gateways definitionsgemäß keine IP-to-IP-Geräte sind, kann NAT nicht angewendet werden.
In diesem Abschnitt des Dokuments werden Anrufszenarien mit CME erörtert, um zu verstehen, warum NAT verwendet werden muss.
Szenario 1. Lokale Telefone
Szenario 2. Remote-Telefone (mit öffentlichen IP-Adressen)
Szenario 3. Telearbeiter
Hinweis: In allen Fällen muss die CME-IP-Adresse routingfähig sein, damit Audio übertragen werden kann.
In diesem Szenario (Abbildung 6) handelt es sich bei den beiden am Anruf beteiligten Telefonen um Skinny-Telefone mit privaten IP-Adressen.
Abbildung 6
Hinweis: Denken Sie daran, dass das Skinny-Telefon, das in einem Gespräch mit einem anderen Skinny-Telefon im gleichen CME-System verbunden ist, seine Medienpakete direkt an das andere Telefon sendet. d. h. RTP für "local-phone" zu "local-phone" läuft NICHT über CME.
NAT ist daher in diesem Fall nicht anwendbar oder erforderlich.
Hinweis: CME legt fest, ob Medien (RTP) direkt oder indirekt genutzt werden sollen. Dies hängt davon ab, ob die beiden an einem Anruf beteiligten Telefone dünn sind und sich im gleichen Netzwerksegment befinden. Andernfalls fügt CME sich selbst in den RTP-Pfad ein.
In diesem Szenario (Abbildung 7) fügt CME sich selbst in den RTP-Stream ein, sodass RTP von den Telefonen auf dem CME terminiert wird. CME leitet die Streams zum anderen Telefon zurück. Da CME sowohl im internen (privaten) Netzwerk als auch im externen Netzwerk sitzt und seine interne Adresse an das interne Telefon und seine externe (öffentliche) Adresse an das externe Telefon sendet, ist auch hier keine NAT erforderlich.
Beachten Sie jedoch, dass die UDP-/TCP-Ports (Signalisierung sowie RTP) zwischen dem Remote-IP-Telefon und der CME-Quell-IP-Adresse offen sein müssen. Dies bedeutet, dass die Firewalls oder andere Filtergeräte so konfiguriert sind, dass sie die betreffenden Ports zulassen.
Abbildung 7
Hinweis: Beachten Sie, dass die Signalisierung [Nachrichten] am CM immer beendet wird.
Dies bezieht sich auf IP-Telefone, die über ein WAN mit CME verbunden sind, um Telearbeiter mit Zweigstellen am CME-Router zu unterstützen. Die gängigsten Designs sind Telefone mit routbaren IP-Adressen und Telefone mit privaten IP-Adressen.
Wenn beide am Anruf beteiligten Telefone mit öffentlichen, routbaren IP-Adressen konfiguriert sind, können Medien direkt zwischen den Telefonen übertragen werden (Abbildung 8). Daher wieder einmal keine Notwendigkeit für NAT!
Abbildung 8
In diesem Szenario wird der Anruf zwischen Skinny-Telefonen signalisiert, die mit privaten IP-Adressen konfiguriert sind. Die Router im Heimbüro (SOHO) sind im Allgemeinen nicht "SCCP-fähig". d. h. die in den SCCP-Nachrichten eingebetteten IP-Adressen nicht übersetzen können. Das bedeutet, dass die Telefone nach Abschluss der Anrufeinrichtung jeweils die private IP-Adresse des anderen Telefons erhalten. Da beide Telefone privat sind, signalisiert CME den Anruf so, dass die Audioübertragung direkt zwischen den Telefonen stattfindet. Dies führt jedoch zu unidirektionalem oder undirektionalem Audio (da private IP-Adressen per Definition nicht über das Internet angesprochen werden können!), es sei denn, eine der folgenden Abhilfemaßnahmen ist implementiert-
・ Konfigurieren statischer Routen auf den SOHO-Routern
・ eine IPsec-VPN-Verbindung zu den Telefonen herstellen
Eine bessere Möglichkeit, dies zu beheben, wäre die Konfiguration von "mtp". Der Befehl mtp stellt sicher, dass RTP-Pakete (Media Packets) von Remote-Telefonen den CME-Router passieren (Abbildung 9).
Abbildung 9
Die MTP-Lösung ist besser, da Probleme beim Öffnen von Firewall-Ports auftreten. Die Medienpakete, die über ein WAN übertragen werden, können durch eine Firewall blockiert werden. Das bedeutet, dass Sie Ports auf der Firewall öffnen müssen, aber welche? Wenn CME die Audiodaten weiterleitet, können die Firewalls auf einfache Weise für die Weiterleitung der RTP-Pakete konfiguriert werden. Der CME-Router verwendet einen bestimmten UDP-Port (2000!) für Medienpakete. Wenn also nur Pakete von und zu Port 2000 zugelassen werden, kann der GESAMTE RTP-Verkehr weitergeleitet werden.
Abbildung 10 zeigt die Konfiguration von MTP.
ePhone 1
Mac 1111 2222 3333
Typ 7965
MTP
Taste 1:1
Abbildung 10
Mit mtp ist nicht alles wunderbar. Es gibt Situationen, in denen MTP nicht wünschenswert ist.
Wenn Sie also eine WAN-Konfiguration haben, die Multicast-Pakete weiterleiten kann, und Sie RTP-Pakete über Ihre Firewall zulassen können, können Sie sich gegen die Verwendung von MTP entscheiden.
Beachten Sie, dass SIP-Telefone in den obigen Szenarien nicht erwähnt wurden. Dies liegt daran, dass CME sich in den Audiopfad einfügt, wenn eines der Telefone ein SIP-Telefon ist. Dies wird dann zu dem zuvor beschriebenen Szenario, bei dem eine lokale Anbindung an eine entfernte Verbindung nicht erforderlich ist.
Das CUBE führt NAT- und PAT-Funktionen automatisch aus, da es alle Sitzungen beendet und ihren Ursprung erneut festlegt. Das CUBE ersetzt seine eigene Adresse durch die Adresse jedes Endpunkts, mit dem es kommuniziert. Auf diese Weise wird die Adresse dieses Endpunkts effektiv ausgeblendet (übersetzt).
Bei der CUBE-Funktion ist daher keine NAT erforderlich. Es gibt ein VoIP-Service-Szenario, in dem für das CUBE eine NAT erforderlich ist, wie im nächsten Abschnitt beschrieben.
Ein kurzer Hintergrund zum gehosteten Telefoniedienst hilft Ihnen, die Gründe für diese Funktion zu verstehen.
Ein gehosteter Telefoniedienst ist eine neue Form des VoIP-Dienstes, bei dem sich der Großteil des Geräts am Standort des Service Providers befindet. Sie arbeiten mit den Home-Gateways (HGW) zusammen, die nur eine grundlegende NAT implementieren (d. h. NAT auf L3/L4). Verizon installiert z. B. das Optical Network Terminal (ONT), das Wi-FiOS-Dienste im Haus bereitstellt. Sprachanrufe werden mithilfe eines in die ONT integrierten SIP-Prozesses signalisiert. Die SIP-Signalisierung wird über das private IP-Netzwerk von Verizon an neue Soft-Switches übertragen, die den Service und die Steuerung für die Sprachkommunikation mit anderen FiOS Digital Voice-Kunden oder herkömmlichen Telefonkunden bereitstellen.
Zu den wichtigsten Anforderungen an die Anbieter gehosteter Telefoniedienste gehören:
Welche Möglichkeiten gibt es in Anbetracht der obigen Ausführungen, einen solchen Dienst zu implementieren?
Die NAT-SBC-Option erfüllt die oben genannten Anbieteranforderungen.
Der NAT-SBC funktioniert wie folgt (Abbildung 11)
Abbildung 11
Nachfolgend finden Sie eine Beispielkonfiguration für einen typischen NAT-SBC.
ip nat sip-sbc
Proxy 200.200.200.10 5060 15.3.33.22 5060 Protokoll udp
Anruf-ID-Pool Anruf-ID-Pool
Sitzungs-Timeout 300
Betriebszuflussbegrenzung
Überschreibport
!
ip nat pool sbc1 15,3,33,61 15,3,33,69 netmask 255,255,0,0
ip nat pool sbc2 15.3.33.91 15.3.33.99 netmask 255.255.0.0
ip nat pool call-id-pool 1.1.1.1 1.1.255.254 netmask 255.255.0.0
ip nat pool outside-pool 200.200.200.100 200.200.200.200 netmask 255.255.255.0
ip nat innerhalb der Quellliste 1 pool sbc1 overload
ip nat innerhalb der Quellliste 2 pool sbc2
ip nat outside source list 3 pool outside-pool add-route
ip nat inside source list 4 pool anruf-id-pool
!
access-list 1 permit 10.1.1.0 0.0.0.255
access-list 1 permit 171.1.1.0 0.0.0.255
access-list 2 permit 20.1.1.0 0.0.0.255
access-list 2 permit 172.1.1.0 0.0.0.255
access-list 3 permit 15.4.0.0 0.0.255.255
access-list 3 permit 15.5.0.0 0.0.255.255
access-list 4 permit 10.1.0.0 0.0.255.255
access-list 4 permit 20.1.0.0 0.0.255.255
Abbildung 13 und Abbildung 14 zeigen den Anruffluss in Bezug auf die Übersetzungen. Folgende Punkte sind zu beachten:
— SIP-Telefon A - 15.3.33.62 2001
— SIP-Telefon B - 15.3.33.62 2002
Abbildung 13
Abbildung 14
In früheren Versionen (von SBC NAT) mussten SIP-Endpunkte Keep-Alive-Pakete senden, um das Pinhole der SIP-Registrierung offen zu halten (damit Out->in-Datenverkehr fließen kann, z. B. eingehende Anrufe). Keep-Alive-Pakete können vom Endpunkt oder vom Registrar gesendete SIP-Pakete sein (Soft-Switch). Neuere Versionen machen dies überflüssig, da der NAT-SBC selbst (im Gegensatz zu Soft-Switches) die Endpunkte zwingt, sich häufig neu zu registrieren, um die Pinholes offen zu halten.
Anmerkung: Die Symptome eines abgelaufenen Registrierungsstiftlochs können unklar sein und zufällige Anrufsignalisierungsfehler aufweisen.
Der CUSP hat den Begriff eines logischen Netzwerks, der sich auf eine Reihe von lokalen Schnittstellen bezieht, die ähnlich behandelt werden (z. Schnittstelle, Port, Transport zum Abhören). Wenn Sie ein logisches Netzwerk auf CUSP konfigurieren, können Sie es für die Verwendung von NAT konfigurieren. Nach der Konfiguration wird SIP ALG automatisch aktiviert. Dies ist nützlich, wenn bestimmte logische Netzwerke verwendet werden.
Ein offensichtliches Symptom kann sein, dass ein Anruf in eine oder beide Richtungen fehlschlägt. Zu den weniger offensichtlichen Symptomen gehören
Die Debug-Ausgabe für einige Szenarien ist unten dargestellt. Sie sind meist selbsterklärend!
Konfigurations- und Debug-Zeilen für grundlegende NAT sind unten dargestellt.
Ausgabeleitungen von debug ip nat sip werden angezeigt. In diesem Fall wird die eingebettete IP-Adresse eines ausgehenden Pakets übersetzt.
Übersicht:
VoiP und NAT
NAT-Funktionsmatrix
Gehostete NAT-Überbrückung:
NAT-SBC
ALG:
CME
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
23-May-2017 |
Erstveröffentlichung |