SUR CETTE PAGE
Exemple : définition de la durée et des délais d’appel SIP ALG
Exemple : configuration de la protection contre les attaques doS SIP ALG
Exemple : configuration de la règle NAT source de l’interface pour les appels SIP entrants
Exemple : configuration d’un NAT statique pour les appels SIP entrants
Exemple : configuration du proxy SIP dans la zone privée et de la fonction NAT dans la zone publique
Exemple : Configuration d’un scénario SIP ALG et NAT à trois zones
SIP ALG
RÉSUMÉ Le protocole SIP (Session Initiation Protocol) est un protocole de signalisation permettant d’initier, de modifier et de mettre fin à des sessions multimédias sur Internet. Le SIP prend en charge les sessions multimédias et multimédias uniques.
Comprendre l’ALG SIP
Le protocole SIP (Session Initiation Protocol) est un protocole standard de l’IETF (Internet Engineering Task Force) permettant d’initier, de modifier et de mettre fin à des sessions multimédias sur Internet. Ces sessions peuvent inclure la conférence, la téléphonie ou le multimédia, avec des fonctionnalités telles que la messagerie instantanée et la mobilité au niveau des applications dans les environnements réseau.
Junos OS prend en charge le protocole SIP en tant que service, ce qui l’autorise et le refuse en fonction d’une stratégie que vous configurez. LE SIP est un service prédéfini dans Junos OS et utilise le port 5060 comme port de destination.
L’une des fonctions du SIP consiste à distribuer les informations de description des sessions et, pendant la session, à négocier et modifier les paramètres de la session. Le protocole SIP permet également de mettre fin à une session multimédia, de signaler un établissement d’appel, de fournir une indication de défaillance et de fournir des méthodes d’enregistrement des points d’extrémité.
Les informations relatives à la description des sessions sont incluses dans les messages INVITE et 200-OK ou dans les messages 200-OK et ACK, et indiquent le type multimédia de la session; par exemple, qu’il s’agisse de voix ou de vidéo. Bien que SIP puisse utiliser différents protocoles de description pour décrire la session, la passerelle de couche applicative SIP (ALG) de Juniper Networks prend uniquement en charge le protocole SDP (Session Description Protocol).
Le SDP fournit des informations qu’un système peut utiliser pour rejoindre une session multimédia. Le SDP peut inclure des informations telles que les adresses IP, les numéros de port, les heures et les dates. Notez que l’adresse IP et le numéro de port dans l’en-tête SDP (les champs c= et m= respectivement) sont l’adresse et le port où le client souhaite recevoir les flux multimédias, et non l’adresse IP et le numéro de port d’origine de la requête SIP (bien qu’ils puissent être les mêmes).
Les messages SIP consistent en requêtes d’un client à un serveur et en réponses à celles d’un serveur vers un client dans le but d’établir une session (ou un appel). Une application d’agent utilisateur (UA) s’exécute aux points de terminaison de l’appel en deux parties :
client d’agent utilisateur (UAC), qui envoie des requêtes SIP pour le compte de l’utilisateur
serveur d’agent utilisateur (UAS), qui écoute les réponses et informe l’utilisateur à son arrivée
Les services UAC et UAS sont définis par rapport au rôle qu’un agent particulier joue dans le cadre d’une négociation.
Les serveurs proxy SIP et les téléphones sont des exemples d’UAs.
Cette rubrique contient les sections suivantes :
Fonctionnement sip alg
Il existe deux types de trafic SIP, la signalisation et le flux multimédia. Le trafic de signalisation SIP consiste en messages de requête et de réponse entre le client et le serveur et utilise des protocoles de transport tels que UDP ou TCP. Le flux multimédia transporte les données (données audio, par exemple) à l’aide de protocoles de transport.
Depuis Junos OS version 12.3X48-D25 et Junos OS version 17.3R1, le SIP ALG prend en charge TCP. La prise en charge TCP sur l’ALG SIP réduit le trafic vers le serveur en éliminant le besoin de réenregistrer ou d’actualiser le serveur fréquemment.
Par défaut, Junos OS prend en charge les messages de signalisation SIP sur le port 5060. Vous pouvez configurer le port en créant une stratégie autorisant le service SIP, et le logiciel filtre le trafic de signalisation SIP comme n’importe quel autre type de trafic, ce qui le permet ou le refuse. Le flux multimédia utilise toutefois des numéros de port affectés de façon dynamique qui peuvent changer plusieurs fois au cours d’un appel. Sans ports fixes, il est insécurisé de créer une stratégie statique de contrôle du trafic multimédia. Dans ce cas, l’unité appelle le protocole ALG SIP. Les ports de transport de l’équipement utilisés pour les sessions multimédias ne sont pas connus à l’avance ; cependant, les ports utilisés pour la négociation SIP sont bien connus (ou prédéfinis). L’ALG enregistre un intérêt pour les paquets de la session de contrôle, qu’il peut facilement distinguer des autres paquets, et inspecte les négociations concernant les informations de transport utilisées pour la session multimédia (adresses IP et ports).
L’ALG SIP crée un trou d’épingle lorsqu’il détermine une adresse IP, un port, une adresse de transport et un protocole correspondant, qui sont identifiés avec toutes les informations connues au moment de l’ouverture du trou d’épingle.
L’ALG SIP surveille les transactions SIP et crée et gère dynamiquement les trous d’épingle en fonction des informations qu’il extrait de ces transactions. L’ALG SIP de Juniper Networks prend en charge toutes les méthodes et réponses SIP. Vous pouvez autoriser les transactions SIP à traverser le pare-feu Juniper Networks en créant une stratégie statique autorisant le service SIP. Si la stratégie est configurée pour inspecter le trafic SIP (ou, plus précisément, si la stratégie envoie un certain trafic à l’ALG SIP pour inspection), les actions autorisées doivent autoriser le trafic (auquel cas les trous d’épingle appropriés sont ouverts) ou refuser le trafic.
L’ALG SIP intercepte les messages SIP qui contiennent SDP et, à l’aide d’un analyseur, extrait les informations dont il a besoin pour créer des trous d’épingle. L’ALG SIP examine la partie SDP du paquet et un parser extrait des informations telles que les adresses IP et les numéros de port, que le SIP ALG enregistre dans une table de trou d’épingle. L’ALG SIP utilise les adresses IP et les numéros de ports enregistrés dans la table de trou d’épingle pour ouvrir les trous d’épingle et permettre aux flux multimédias de traverser l’équipement.
Lorsque l’équipement effectue un nat, les adresses de transport que les UAS utilisent sont incorrectes. Le SIP ALG modifie les adresses de transport en fonction des ports traduits et des adresses attribuées par l’équipement traduisant les adresses réseau. Lorsque le SDP est chiffré, l’équipement ne peut ni extraire ni modifier le contenu du message et ne peut donc pas corriger les adresses de transport. Pour contourner le problème, le protocole STUN a été déployé (obligeant les équipements NAT à effectuer une forme de cône NAT), ce qui permet aux clients de déterminer les adresses traduites et d’utiliser les adresses récemment découvertes dans les messages SDP.
Les produits SIP NEC sont pris en charge sous condition.
Descriptions des sessions SDP
Une description de session SDP est un format bien défini qui permet de transmettre suffisamment d’informations pour découvrir et participer à une session multimédia. Une session est décrite par une série de paires attribut/valeur, une par ligne. Les attributs sont des caractères uniques, suivis de =et d’une valeur. Les valeurs facultatives sont spécifiées avec =*. Les valeurs sont soit une chaîne ASCII, soit une séquence de types spécifiques séparés par des espaces. Les noms d’attributs ne sont uniques qu’au sein de la structure syntaxique associée, par exemple au sein de la session, du temps ou du support uniquement.
Dans la description de la session SDP, les informations de niveau multimédia commencent par le champ m=.
Parmi les nombreux champs de la description SDP, deux sont particulièrement utiles pour le protocole SIP ALG, car ils contiennent des informations sur la couche transport.
c=
pour les informations de connexionCe champ peut s’afficher au niveau de la session ou du média. Il apparaît dans ce format :
c=<><adresse><connexion>
Junos OS prend uniquement en charge « IN » (pour Internet) comme type de réseau, « IPv4 » comme type d’adresse, et une adresse IP unicast ou un nom de domaine comme adresse IP de destination (connexion). À partir de Junos OS version 15.1X49-D40 et de Junos OS version 17.3R1, le type d’adresse « IPv6 » est également pris en charge.
Si l’adresse IP de destination est une adresse IP unicast, le SIP ALG crée des trous d’épingle à l’aide de l’adresse IP et des numéros de port spécifiés dans le champ de description multimédia m=.
m=
à l’annonce de la presseCe champ s’affiche au niveau des médias et contient la description des médias. Il apparaît dans ce format :
m=liste <media><port><transport><fmt>
Actuellement, Junos OS prend en charge « RTP » en tant que protocole de transport de la couche applicative. Le numéro de port indique le port de destination du flux multimédia (l’origine est attribuée par l’UA distant). La liste des formats (liste fmt) fournit des informations sur le protocole Application Layer utilisé par le support.
Le logiciel ouvre uniquement les ports pour RTP et RTCP (Real-Time Control Protocol). Chaque session RTP comporte une session RTCP correspondante. Par conséquent, chaque fois qu’un flux multimédia utilise RTP, le SIP ALG doit réserver des ports (créer des trous d’épingle) pour le trafic RTP et RTCP. Par défaut, le numéro de port rtcp est supérieur à celui du port RTP.
Création de trou d’épingle
Chaque trou d’épingle (un pour le trafic RTP et l’autre pour le trafic RTCP) partagent la même adresse IP de destination. L’adresse IP provient du champ c= dans la description de session SDP. Comme le champ c= peut s’afficher au niveau de la session ou au niveau multimédia de la description de session SDP, l’analyseur détermine l’adresse IP en fonction des règles suivantes (conformément aux conventions SDP) :
Tout d’abord, le parser SIP ALG recherche un champ c= contenant une adresse IP au niveau multimédia. S’il y a un tel champ, l’analyseur extrait cette adresse IP, et le SIP ALG utilise cette adresse pour créer un trou d’épingle pour le support.
S’il n’y a pas de champ c= au niveau du support, l’analyseur SIP ALG extrait l’adresse IP du champ c= au niveau de la session, et l’ALG SIP utilise cette adresse IP pour créer un trou d’épingle pour le support. Si la description de la session ne contient pas de champ c= dans les deux niveaux, cela indique une erreur dans la pile de protocoles, et l’équipement abandonne le paquet et consigne l’événement.
L’ALG SIP ouvre également des trous d’épingle pour le trafic de signal. Ces trous d’épingle de signal sont utiles après le délai d’expiration de session de signal précédent, et ils sont également utiles pour le trafic de signal envoyé à une adresse tierce qui ne correspond pas à la session de signal précédente. Les trous d’épingles du signal ALG SIP ne vieillissent jamais, contrairement aux trous d’épingle RTP ou RTCP, où seuls les ports IP de destination et de destination sont spécifiés.
L’ALG SIP ouvre des trous d’épingles de signal pour les en-têtes suivants, si nécessaire :
Via
CONTACT
ROUTAGE
ROUTAGE D’ENREGISTREMENT
Le SIP ALG a besoin des informations suivantes pour créer un trou d’épingle. Ces informations proviennent de la description de session SDP ou des en-têtes SIP (tels que répertoriés ci-dessus).
Protocole :UDP ou TCP.
IP source : inconnue.
Port source : inconnu.
ADRESSE IP de destination : l’analyseur extrait l’adresse IP de destination du champ c= au niveau du support ou de la session.
Port de destination : le parser extrait le numéro de port de destination pour RTP du champ m= du niveau multimédia et calcule le numéro de port de destination pour RTCP à l’aide de la formule suivante :
Numéro de port RTP + un
Durée de vie : cette valeur indique la durée (en secondes) pendant laquelle un trou d’épingle est ouvert pour laisser passer un paquet. Un paquet doit traverser le trou d’épingle avant l’expiration de sa durée de vie. Lorsque la durée de vie expire, l’ALG SIP retire le trou d’épingle.
Lorsqu’un paquet traverse le trou d’épingle au cours de la période de vie, immédiatement après quoi le ALG SIP retire le trou d’épingle pour déterminer la direction à partir de laquelle le paquet est venu.
La figure 1 décrit une configuration d’appel entre deux clients SIP et la façon dont le SIP ALG crée des trous d’épingle pour autoriser le trafic RTP et RTCP. L’illustration part du principe que l’équipement dispose d’une stratégie autorisant le protocole SIP, ouvrant ainsi le port 5060 pour les messages de signalisation SIP.
Figure 1 : Configurationdes appels SIP ALG
L’ALG SIP ne crée pas de trou d’épingle pour le trafic RTP et RTCP lorsque l’adresse IP de destination est 0.0.0.0, ce qui indique que la session est en attente. Pour mettre une session en attente pendant une communication téléphonique, par exemple, le client A envoie au client B un message SIP dans lequel l’adresse IP de destination est 0.0.0.0. Ce faisant, il indique au client B qu’il ne doit pas envoyer de média avant nouvel avis. Si le client B envoie des contenus multimédias de toute façon, l’équipement supprime les paquets.
- Comprendre la prise en charge d’IPv6 pour SIP ALG
- Understanding Scaling Busy Lamp Field Support for the UDP-Based SIP ALG
- Comprendre les méthodes de demande d’ALG SIP
- Présentation de la configuration SIP ALG
- Comprendre la protection contre les attaques par doS SIP ALG
- Comprendre les types de messages INCONNUS SIP ALG
- Comprendre la durée et les délais d’expiration des appels SIP ALG
Comprendre la prise en charge d’IPv6 pour SIP ALG
IPv6 est pris en charge sur l’ALG SIP avec le mode NAT-PT et la traduction d’adresses NAT64.
Le SIP ALG traite l’adresse IPv6 de la même manière qu’il traite l’adresse IPv4 pour la mise à jour de la charge utile si le NAT est configuré et ouvre des trous d’épingle pour le trafic futur.
Un traitement spécial est effectué pour les formats suivants :
IPv6 in SIP URIs— L’URI SIP ressemble à un URI avec des adresses IPv4. Comme dans toutes les URL, une adresse IPv6 est incluse entre des supports carrés. Les blocs d’adresses IPv6 sont séparés par des points de terminaison. Dans de nombreuses notations, un colon sépare le nom de l’hôte ou l’adresse IP du port de protocole. Pour analyser l’adresse IPv6 complète et séparer le port, l’adresse est encapsulée entre les supports carrés
IPv6 in SDP— Les adresses IPv6 du protocole SDP (Session Description Protocol) ont le marqueur IP6.
La prise en charge du SIP ALG avec IPv6 présente les limites suivantes :
Lorsque nat64 avec NAT persistant est implémenté, le SIP ALG ajoute la traduction NAT à la table de liaison NAT persistante si le NAT est configuré sur l’adresse d’enregistrement (AOR). Étant donné que la traduction NAT persistante ne peut pas faire double emploi avec l’adresse configurée, la coexistence des nat66 et NAT64 configurés sur la même adresse n’est pas prise en charge.
Une seule liaison est créée pour la même adresse IP source.
Understanding Scaling Busy Lamp Field Support for the UDP-Based SIP ALG
Le champ de feu occupé (BLF) est une lumière sur un téléphone IP qui indique si une autre extension connectée au même système PBX (Private Branch Exchange) est occupée ou non. Vous pouvez configurer manuellement le BLF à l’aide d’une interface Web. Lorsque BLF est configuré, le téléphone s’abonne à une liste de ressources disponible sur le PBX IP pour être informé des informations d’état pour les autres extensions. BLF fonctionne via le protocole SIP (Session Initiation Protocol) et utilise les messages SUBSCRIBE et NOTIFY. Habituellement, le téléphone est l’abonné et le PBX IP est le notifiant.
Lorsqu’un téléphone est enregistré auprès du PBX IP, le PBX IP informe le téléphone de l’état de la liste de ressources. Par exemple, si la liste de ressources est énorme, le corps du message NOTIFY sera également énorme. Étant donné que le SIP ALG ne prend en charge que les messages SIP de 3 000 octets, il contourne l’énorme message NOTIFY. S’il y a trop d’instances de BLF dans le corps du message, la charge utile ne sera pas modifiée et la porte ne sera pas ouverte.
Depuis Junos OS version 12.3X48-D15 et Junos OS version 17.3R1, le SIP ALG prend en charge les messages SIP de 65 000 octets sur le protocole UDP. Dans l’application BLF évolutive, si chaque instance est d’environ 500 octets, l’ALG SIP prend en charge 100 instances dans un message SIP UDP.
La prise en charge BLF du SIP ALG basé sur UDP inclut les fonctionnalités suivantes :
L’équipement peut envoyer et recevoir des messages SIP de 65 000 octets.
Le SIP ALG peut analyser les messages SIP de 65 000 octets et ouvrir le trou d’épingle si nécessaire.
L’ALG SIP régénére le nouveau message SIP jumbo si le NAT est configuré et que la charge utile est modifiée.
Comprendre les méthodes de demande d’ALG SIP
Le modèle de transaction SIP (Session Initiation Protocol) comprend un certain nombre de messages de requête et de réponse, chacun contenant un method champ indiquant l’objectif du message.
Junos OS prend en charge les types de méthode et les codes de réponse suivants :
INVITE : un utilisateur envoie une demande d’INVITATION pour inviter un autre utilisateur à participer à une session. Le corps d’une requête d’INVITATION peut contenir la description de la session.
ACK : l’utilisateur à l’origine de l’INVITATION envoie une demande ACK afin de confirmer la réception de la réponse finale à la demande d’INVITATION. Si la requête INVITE originale ne contient pas la description de la session, la requête ACK doit l’inclure.
OPTIONS : l’agent utilisateur (UA) obtient des informations sur les capacités du proxy SIP. Un serveur répond par des informations sur les méthodes, les protocoles de description de session et l’encodage de messages qu’il prend en charge.
BYE : un utilisateur envoie une requête BYE pour l’abandon d’une session. Une demande BYE de l’un ou l’autre utilisateur met automatiquement fin à la session.
ANNULER : un utilisateur envoie une requête CANCEL pour annuler une demande d’INVITATION en attente. Une demande CANCEL n’a aucun effet si le serveur SIP traitant l’INVITE avait envoyé une réponse finale à l’INVITE avant de recevoir l’ANNULATION.
S’INSCRIRE : un utilisateur envoie une demande D’INSCRIPTION à un serveur d’enregistrement SIP afin de l’informer de l’emplacement actuel de l’utilisateur. Un serveur de registrar SIP enregistre toutes les informations qu’il reçoit dans les requêtes REGISTER et met ces informations à la disposition de tout serveur SIP tentant de localiser un utilisateur.
Informations : utilisées pour communiquer les informations de signalisation de mi-session le long du chemin de signalisation de l’appel.
S’abonner : permet de demander les mises à jour d’état et d’état actuelles à partir d’un nœud distant.
Notification : envoyée pour informer les abonnés des changements d’état auxquels l’abonné dispose d’un abonnement.
Se référer : utilisé pour diriger le destinataire (identifié par l’URI de la requête) vers un tiers par les coordonnées fournies dans la demande.
Par exemple, si l’utilisateur A dans un réseau privé renvoie l’utilisateur B, dans un réseau public, à l’utilisateur C, qui se trouve également sur le réseau privé, la passerelle de couche applicative SIP (ALG) alloue une nouvelle adresse IP et un nouveau numéro de port à l’utilisateur C afin que l’utilisateur C puisse être contacté par l’utilisateur B. Si l’utilisateur C est enregistré auprès d’un registrar, son mappage de ports est stocké dans la table NAT (Network Address Translation) ALG et est réutilisé pour effectuer la traduction.
Mise à jour : utilisée pour ouvrir le trou d’épingle pour obtenir des informations SDP nouvelles ou mises à jour. Les champs Via:, From:, To:, Call-ID:, Contact:, Route:et Record-Route: sont modifiés.
1xx, 202, 2xx, 3xx, 4xx, 5xx, 6xx Codes de réponse : utilisés pour indiquer le statut d’une transaction. Les champs d’en-tête sont modifiés.
Présentation de la configuration SIP ALG
La passerelle SIP ALG (Session Initiation Protocol Application Layer Gateway) est désactivée par défaut sur l’équipement SRX. Si nécessaire, elle doit être activée à l’aide de l’interface de ligne de commande. Sur les autres équipements, il est activé par défaut. Pour affiner les opérations ALG SIP, suivez les instructions suivantes :
Contrôlez l’activité des appels SIP. Pour obtenir des instructions, reportez-vous à l’exemple suivant : Définition de la durée et des délais d’expiration des appels SIP ALG.
Protégez le serveur proxy SIP contre les attaques par déni de service (DoS). Pour obtenir des instructions, reportez-vous à l’exemple suivant : Configuration de la protection contre les attaques DoS SIP ALG.
Activez la transmission de messages inconnus lorsque la session est en mode nat (Network Address Translation) et en mode de routage. Pour obtenir des instructions, reportez-vous à l’exemple suivant : Autoriser les types de messages ALG SIP inconnus.
Prendre en charge les flux d’appels SIP propriétaires. Pour obtenir des instructions, reportez-vous à Conserver les ressources de conservation SIP ALG (procédure CLI)
Comprendre la protection contre les attaques par doS SIP ALG
La capacité du serveur proxy SIP (Session Initiation Protocol) à traiter les appels peut être impactée par des requêtes d’INVITATION SIP répétées, requêtes qu’il a initialement refusées. La fonctionnalité de protection contre les dénis de service (DoS) vous permet de configurer l’équipement afin de surveiller les requêtes d’INVITATION et les réponses du serveur proxy. Si une réponse contient un code de réponse 3xx, 4xx ou 5xx autres que 401, 407, 487 et 488 qui ne sont pas des réponses réelles en cas de défaillance, la requête ne doit pas être bloquée. Découvrez Understanding the SIP ALG and NAT. L’ALG stocke l’adresse IP source de la requête et l’adresse IP du serveur proxy dans une table. Par la suite, l’équipement vérifie toutes les requêtes d’INVITATION en fonction de ce tableau et, pour un nombre configurable de secondes (la valeur par défaut est 3), rejette tous les paquets correspondant aux entrées de la table. Vous pouvez configurer l’équipement de manière à surveiller et refuser les requêtes d’INVITATION répétées à tous les serveurs proxy, ou vous pouvez protéger un serveur proxy spécifique en spécifiant l’adresse IP de destination. La protection contre les attaques SIP est configurée globalement.
Comprendre les types de messages INCONNUS SIP ALG
Cette fonctionnalité vous permet de spécifier la manière dont les messages SIP (Session Initiation Protocol) non identifiés sont gérés par l’équipement. La valeur par défaut est d’abandonner les messages inconnus (non pris en charge).
Nous déconseillent l’autorisation des messages inconnus, car ils peuvent compromettre la sécurité. Toutefois, dans un environnement de test ou de production sécurisé, cette commande peut être utile pour résoudre les problèmes d’interopérabilité avec des équipements différents du fournisseur. Autoriser les messages SIP inconnus peut vous aider à rendre votre réseau opérationnel afin que vous puissiez analyser plus tard votre trafic VoIP (Voice-over-IP) pour déterminer la raison de la chute de certains messages. La fonction de type de message SIP inconnue vous permet de configurer l’équipement pour qu’il accepte le trafic SIP contenant des types de messages inconnus, en mode NAT (Network Address Translation) et en mode de routage.
Cette option s’applique uniquement aux paquets reçus identifiés comme étant des paquets VoIP pris en charge. Si un paquet ne peut pas être identifié, il est toujours abandonné. Si un paquet est identifié comme un protocole pris en charge et que vous avez configuré l’équipement pour autoriser les types de messages inconnus, le message est transféré sans traitement.
Comprendre la durée et les délais d’expiration des appels SIP ALG
Les fonctionnalités de durée et d’expiration d’appel vous permettent de contrôler l’activité des appels SIP (Session Initiation Protocol) et vous aident à gérer les ressources réseau.
En règle générale, un appel se termine lorsque l’un des clients envoie une demande BYE ou CANCEL. La passerelle de couche applicative SIP (ALG) intercepte la requête BYE ou CANCEL et supprime toutes les sessions multimédias pour cet appel. Il peut y avoir des raisons ou des problèmes empêchant les clients lors d’un appel d’envoyer des demandes BYE ou CANCEL, par exemple une panne d’alimentation. Dans ce cas, l’appel peut continuer indéfiniment, consommant des ressources sur l’équipement.
Un appel peut avoir un ou plusieurs canaux vocaux. Chaque canal vocal comporte deux sessions (ou deux flux multimédias), une pour le trafic RTP (Real-Time Transport Protocol) et une pour la signalisation RTCP (Real-Time Control Protocol). Lors de la gestion des sessions, l’équipement considère les sessions de chaque canal vocal comme un groupe. Les délais d’expiration et les paramètres de durée d’appel s’appliquent à un groupe par opposition à chaque session.
Les paramètres suivants régissent l’activité des appels SIP :
inactive-media-timeout
— Ce paramètre indique la durée maximale (en secondes) qu’un appel peut rester actif sans trafic multimédia (RTP ou RTCP) au sein d’un groupe. Chaque fois qu’un paquet RTP ou RTCP se produit au sein d’un appel, ce délai d’expiration se réinitialise. Lorsque la période d’inactivité dépasse ce paramètre, les ouvertures temporaires (trous d’épingle) du pare-feu que l’ALG SIP ouvert pour les médias est fermée. Le paramètre par défaut est de 120 secondes et la plage est de 10 à 2 550 secondes. Notez qu’une fois le délai d’expiration terminé, les ressources pour les contenus multimédias (sessions et trous d’épingle) sont supprimées et les appels SIP sur l’équipement seront également interrompus si toutes les ressources multimédia de cet appel sont supprimées.maximum-call-duration
— Ce paramètre définit la longueur maximale absolue d’un appel. Lorsqu’un appel dépasse ce paramètre, le protocole ALG SIP déchire l’appel et publie les sessions multimédias. Le paramètre par défaut est de 720 minutes et la plage est de 3 à 720 minutes.t1-interval
— Ce paramètre spécifie l’estimation du temps aller-retour, en secondes, d’une transaction entre les points de terminaison. La valeur par défaut est 500 millisecondes. Étant donné que de nombreux timers SIP évoluent en fonction de l’intervalle t1 (décrit dans le document RFC 3261), lorsque vous modifiez la valeur de l’intervalle t1, ces timers SIP sont également ajustés.t4-interval
— Ce paramètre spécifie l’heure maximale pendant lequel un message reste sur le réseau. La valeur par défaut est de 5 secondes et la plage est de 5 à 10 secondes. Étant donné que de nombreux timers SIP évoluent en fonction de l’intervalle t4 (tel que décrit dans le document RFC 3261), lorsque vous modifiez la valeur de l’intervalle t4, ces timers SIP sont également ajustés.c-timeout
— Ce paramètre spécifie le délai d’expiration de la transaction INVITE au niveau du proxy, en minutes ; la valeur par défaut est 3. Étant donné que l’ALG SIP se trouve au milieu, au lieu d’utiliser la valeur du minuteur de transaction INVITE B (qui est (64 * T1) = 32 secondes), le SIP ALG obtient sa valeur de minuteur à partir du proxy.
Comprendre les ressources de retenue SIP ALG
Lorsqu’un utilisateur met un appel en attente, la passerelle SIP ALG (Session Initiation Protocol Application Layer Gateway) libère des ressources multimédias SDP (Session Description Protocol), telles que des trous d’épingle et des contextes de traduction. Lorsque l’utilisateur relance l’appel, un message de demande d’INVITATION négocie une nouvelle offre et réponse SDP et le SIP ALG réattribue les ressources pour le flux multimédia. Cela peut se traduire par de nouvelles adresses IP traduites et des numéros de ports pour la description du média, même lorsque la description du média est la même que la description précédente. Il est conforme au RFC 3264 An Offer/Answer Model with the Session Description Protocol (SDP).
Certaines implémentations SIP propriétaires ont conçu des flux d’appel de sorte que le module Agent utilisateur (UA) ignore la nouvelle offre SDP INVITE et continue à utiliser l’offre SDP des négociations précédentes. Pour accueillir cette fonctionnalité, vous devez configurer l’équipement afin de conserver les ressources multimédias SDP lorsqu’un appel est mis en attente pour être réutilisé lors de la reprise de l’appel.
Conserver les ressources de maintenez le protocole SIP ALG (procédure CLI)
Pour prendre en charge les flux d’appels SIP propriétaires :
user@host# set security alg sip retain-hold-resource
Comprendre les protocoles SIP ALG et NAT
Le protocole NAT (Network Address Translation) permet à plusieurs hôtes d’un sous-réseau privé de partager une seule adresse IP publique pour accéder à Internet. Pour le trafic sortant, la règle NAT remplace l’adresse IP privée de l’hôte dans le sous-réseau privé par l’adresse IP publique. Pour le trafic entrant, l’adresse IP publique est reconvertie en adresse privée et le message est acheminé vers l’hôte approprié dans le sous-réseau privé.
L’utilisation de NAT avec le service SIP (Session Initiation Protocol) est plus compliquée car les messages SIP contiennent des adresses IP dans les en-têtes SIP ainsi que dans le corps du SIP. Lors de l’utilisation de nat avec le service SIP, les en-têtes SIP contiennent des informations sur l’appelant et le récepteur, et l’équipement traduit ces informations pour les masquer du réseau extérieur. Le corps du SIP contient les informations SDP (Session Description Protocol), qui incluent des adresses IP et des numéros de port pour la transmission du support. L’équipement traduit les informations SDP pour allouer des ressources afin d’envoyer et de recevoir le média.
Le remplacement des adresses IP et des numéros de port dans les messages SIP dépend de la direction du message. Pour un message sortant, l’adresse IP privée et le numéro de port du client sont remplacés par l’adresse IP publique et le numéro de port du pare-feu Juniper Networks. Pour un message entrant, l’adresse publique du pare-feu est remplacée par l’adresse privée du client.
Lorsqu’un message d’INVITATION est envoyé sur l’ensemble du pare-feu, la passerelle de couche applicative SIP (ALG) collecte des informations de l’en-tête du message dans une table d’appels, qu’elle utilise pour transférer les messages ultérieurs vers le point de terminaison approprié. Lorsqu’un nouveau message arrive, par exemple un ACK ou un 200 OK, l’ALG compare les champs « From:, To:, and Call-ID: » avec la table d’appels pour identifier le contexte d’appel du message. Si un nouveau message INVITE correspond à l’appel existant, l’ALG le traite comme un REINVITE.
Lorsqu’un message contenant des informations SDP arrive, l’ALG alloue les ports et crée un mappage NAT entre eux et les ports du SDP. Comme le SDP nécessite des ports séquentiels pour les canaux RTP (Real-Time Transport Protocol) et RTCP (Real-Time Control Protocol), l’ALG fournit des ports pairs consécutifs pairs. S’il n’est pas en mesure de trouver une paire de ports, il rejette le message SIP.
IPv6 est pris en charge sur l’ALG SIP avec le mode NAT-PT et la traduction d’adresses NAT64.
Cette rubrique contient les sections suivantes :
- Appels sortants
- Appels entrants
- Appels transféré
- Terminaison d’appel
- Messages de re-INVITE d’appel
- Timers de session d’appel
- Annulation d’appel
- Bifurquer
- SIP Messages
- En-têtes SIP
- Corps SIP
- Scénario NAT SIP
- Classes de réponses SIP
- Mode NAT en mode IPv6 pur (NAT66) pour SIP ALG IPv6
- NAT-PT
- NAT64
- STUN et SIP ALG
Appels sortants
Lorsqu’un appel SIP est lancé avec un message de requête SIP de l’interne vers le réseau externe, nat remplace les adresses IP et les numéros de port dans le SDP et lie les adresses IP et les numéros de port au pare-feu Juniper Networks. Si elles sont présentes, les champs d’en-tête SIP Via, Contact, Route et Record-Route sont également liés à l’adresse IP du pare-feu. L’ALG stocke ces mappages pour les utiliser dans les retransmissions et pour les messages de réponse SIP.
L’ALG SIP ouvre ensuite des trous d’épingle dans le pare-feu afin d’autoriser le support via l’équipement sur les ports affectés dynamiquement, négociés en fonction des informations contenues dans les champs d’en-tête Via, Contact et Record-Route. Les trous d’épingle permettent également aux paquets entrants d’atteindre les adresses ET ports Contact, Via et Record-Route. Lors du traitement du trafic de retour, l’ALG réentère les champs SIP d’origine Contact, Via, Route et Record-Route dans les paquets.
Appels entrants
Les appels entrants sont lancés à partir du réseau public vers des adresses NAT statiques publiques ou vers des adresses IP d’interface sur l’équipement. Les NAT statiques sont des adresses IP à configuration statique qui pointent vers les hôtes internes ; les adresses IP d’interface sont enregistrées de manière dynamique par l’ALG, qui surveille les messages REGISTER envoyés par les hôtes internes au registrar SIP. Lorsque l’équipement reçoit un paquet SIP entrant, il définit une session et transfère la charge utile du paquet vers l’ALG SIP.
L’ALG examine le message de requête SIP (initialement une INVITATION) et, en fonction des informations du SDP, ouvre des portes pour les contenus multimédias sortants. Lorsqu’un message de réponse 200 OK arrive, le protocole SIP ALG exécute la règle NAT sur les adresses IP et les ports, puis ouvre des trous d’épingle dans la direction sortante. (Les portes ouvertes ont un temps de mise en service court et ils ont un temps d’ouverture si un message de réponse DE 200 OK n’est pas reçu rapidement.)
Lorsqu’une réponse 200 OK arrive, le proxy SIP examine les informations SDP et lit les adresses IP et les numéros de port pour chaque session multimédia. L’ALG SIP de l’unité exécute la fonction NAT sur les adresses et les numéros de ports, ouvre des trous d’épingle pour le trafic sortant et actualise le délai d’expiration pour les portes dans la direction entrante.
Lorsque l’ACK arrive pour le 200 OK, il passe également par l’ALG SIP. Si le message contient des informations SDP, l’ALG SIP s’assure que les adresses IP et les numéros de port ne sont pas modifiés par rapport à l’INVITATION précédente. Le cas échéant, l’ALG supprime les anciens trous d’épingle et crée de nouveaux trous d’épingle pour permettre au support de passer. L’ALG surveille également les champs SIP Via, Contact et Record-Route et ouvre de nouveaux trous d’épingle s’il détermine que ces champs ont changé.
Appels transféré
Un appel transféré est, par exemple, lorsque l’utilisateur A à l’extérieur du réseau appelle l’utilisateur B à l’intérieur du réseau, et l’utilisateur B transfère l’appel à l’utilisateur C à l’extérieur du réseau. Le SIP ALG traite l’INVITATION de l’utilisateur A comme un appel entrant normal. Mais lorsque l’ALG examine l’appel transféré de B à C à l’extérieur du réseau et remarque que B et C sont atteints à l’aide de la même interface, il n’ouvre pas de trous d’épingle dans le pare-feu, car le support circule directement entre l’utilisateur A et l’utilisateur C.
Terminaison d’appel
Le message BYE met fin à un appel. Lorsque l’équipement reçoit un message BYE, il traduit les champs d’en-tête comme il le fait pour n’importe quel autre message. Mais comme un message BYE doit être reconnu par le destinataire avec un 200 OK, l’appel ALG retarde pendant 5 secondes pour laisser le temps de transmission du 200 OK.
Messages de re-INVITE d’appel
Les messages de nouvelle INVITATION ajoutent de nouvelles sessions multimédias à un appel et suppriment les sessions multimédias existantes. Lorsque de nouvelles sessions multimédias sont ajoutées à un appel, de nouveaux trous d’épingle sont ouverts dans le pare-feu et de nouvelles liaisons d’adresses sont créées. Le processus est identique à la configuration d’appel d’origine. Lorsque toutes les sessions multimédias ou points d’épingle multimédia sont retirés d’un appel, l’appel est supprimé lors de la réception d’un message BYE.
Timers de session d’appel
Par mesure de précaution, l’ALG SIP utilise des valeurs de délai d’expiration difficiles pour définir la durée maximale d’un appel. Cela garantit la protection de l’équipement si l’un des événements suivants se produit :
Les systèmes finaux se bloquent lors d’un appel et un message BYE n’est pas reçu.
Les utilisateurs malveillants n’envoient jamais un BYE pour tenter d’attaquer un ALG SIP.
Les implémentations médiocres du proxy SIP ne parviennent pas à traiter Record-Route et n’envoient jamais de message BYE.
Les pannes réseau empêchent la réception d’un message BYE.
Annulation d’appel
Chaque partie peut annuler un appel en envoyant un message CANCEL. Une fois le message CANCEL reçu, le ALG SIP ferme les trous d’épingle par le pare-feu (le cas échéant) et met à jour les liaisons d’adresses. Avant de publier les ressources, l’ALG retarde l’âge du canal de contrôle pendant environ 5 secondes pour laisser passer le 200 OK final. L’appel est interrompu lorsque le délai d’expiration de 5 secondes expire, qu’une réponse 487 ou non soit arrivée.
Bifurquer
Forking permet à un proxy SIP d’envoyer simultanément un message d’INVITATION à plusieurs destinations. Lorsque les 200 messages de réponse OK multiples arrivent pour l’appel unique, l’analyse ALG SIP, mais met à jour les informations d’appel avec les 200 premiers messages OK qu’il reçoit.
SIP Messages
Le format du message SIP se compose d’une section d’en-tête SIP et du corps sip. Dans les messages de demande, la première ligne de la section d’en-tête est la ligne de requête, qui comprend le type de méthode, l’URI de requête et la version du protocole. Dans les messages de réponse, la première ligne est la ligne d’état, qui contient un code d’état. Les en-têtes SIP contiennent des adresses IP et des numéros de port utilisés pour la signalisation. Le corps SIP, séparé de la section d’en-tête par une ligne blanche, est réservé aux informations de description de session, ce qui est facultatif. Junos OS prend actuellement en charge le SDP uniquement. Le corps SIP contient les adresses IP et les numéros de ports utilisés pour transporter le support.
En-têtes SIP
Dans l’exemple de message de requête SIP suivant, nat remplace les adresses IP dans les champs d’en-tête pour les masquer du réseau externe.
INVITE bob@10.150.20.5
SIP/2.0 Via: SIP/2.0/UDP10.150.20.3
:5434 From: alice@10.150.20.3
To: bob@10.150.20.5
Call-ID: a12abcde@10.150.20.3
Contact: alice@10.150.20.3
:5434 Route: <sip:netscreen@10.150.20.3
:5060> Record-Route: <sip:netscreen@10.150.20.3
:5060>
La traduction d’adresse IP est effectuée en fonction du type et de la direction du message. Un message peut être l’un des éléments suivants :
Requête entrante
Réponse sortante
Requête sortante
Réponse entrante
Le tableau 1 illustre l’exécution de la traduction d’adresses réseau (NAT) dans chacun de ces cas. Notez que pour plusieurs des champs d’en-tête, l’ALG détermine plus que simplement si les messages viennent de l’intérieur ou de l’extérieur du réseau. Il doit également déterminer le client qui a lancé l’appel et s’il s’agit d’une requête ou d’une réponse.
Requête entrante (du public au privé) |
À: |
Remplacez le domaine par une adresse locale |
De: |
Aucun |
|
Id d’appel : |
Aucun |
|
Via: |
Aucun |
|
Request-URI : |
Remplacer l’adresse ALG par une adresse locale |
|
Contact: |
Aucun |
|
Routage d’enregistrement : |
Aucun |
|
Routage : |
Aucun |
|
Réponse sortante (du privé au public) |
À: |
Remplacer l’adresse ALG par une adresse locale |
De: |
Aucun |
|
Id d’appel : |
Aucun |
|
Via: |
Aucun |
|
Request-URI : |
S/O |
|
Contact: |
Remplacez l’adresse locale par une adresse ALG |
|
Routage d’enregistrement : |
Remplacez l’adresse locale par une adresse ALG |
|
Routage : |
Aucun |
|
Requête sortante (du privé au public) |
À: |
Aucun |
De: |
Remplacez l’adresse locale par une adresse ALG |
|
Id d’appel : |
Aucun |
|
Via: |
Remplacez l’adresse locale par une adresse ALG |
|
Request-URI : |
Aucun |
|
Contact: |
Remplacez l’adresse locale par une adresse ALG |
|
Routage d’enregistrement : |
Remplacez l’adresse locale par une adresse ALG |
|
Routage : |
Remplacez l’adresse locale par une adresse ALG |
|
Réponse sortante (du public au privé) |
À: |
Aucun |
De: |
Remplacer l’adresse ALG par une adresse locale |
|
Id d’appel : |
Aucun |
|
Via: |
Remplacer l’adresse ALG par une adresse locale |
|
Request-URI : |
S/O |
|
Contact: |
Aucun |
|
Routage d’enregistrement : |
Remplacer l’adresse ALG par une adresse locale |
|
Routage : |
Remplacer l’adresse ALG par une adresse locale |
Corps SIP
Les informations SDP du corps SIP incluent des adresses IP que l’ALG utilise pour créer des canaux pour le flux multimédia. La traduction de la section SDP alloue également les ressources, c’est-à-dire les numéros de port à envoyer et à recevoir le support.
Les extraits suivants d’un exemple de section SDP affichent les champs traduits pour l’allocation des ressources.
o=user 2344234 55234434 IN IP410.150.20.3
c=IN IP410.150.20.3
m=audio43249
RTP/AVP 0
Les messages SIP peuvent contenir plusieurs flux multimédias. Le concept est similaire à la connexion de plusieurs fichiers à un message électronique. Par exemple, un message INVITE envoyé d’un client SIP à un serveur SIP peut comporter les champs suivants :
c=IN IP410.123.33.4
m=audio33445
RTP/AVP 0 c=IN IP410.123.33.4
m=audio33447
RTP/AVP 0 c=IN IP410.123.33.4
m=audio33449
RTP/AVP 0
Junos OS prend en charge jusqu’à 6 canaux SDP négociés pour chaque direction, pour un total de 12 canaux par appel. Pour plus d’informations, consultez Understanding the SIP ALG.
Scénario NAT SIP
Les figures 2 et 3 affichent une INVITATION d’appel SIP et 200 OK. Sur la Figure 2, le ph1 envoie un message SIP INVITE au ph2. Notez la manière dont les adresses IP des champs d’en-tête (indiquées dans la police en gras) sont traduites par l’équipement.
La section SDP du message INVITE indique où l’appelant est disposé à recevoir des contenus multimédias. Notez que le trou d’épingle multimédia contient deux numéros de port, 52002 et 52003, pour RTCP et RTP. Le trou d’épingle Via/Contact fournit le port 5060 pour la signalisation SIP.
Observez comment, dans le message de réponse 200 OK de la figure 3, les traductions effectuées dans le message INVITE sont inversées. Les adresses IP de ce message, étant publiques, ne sont pas traduites, mais des passerelles sont ouvertes pour permettre au flux multimédia d’accéder au réseau privé.


Classes de réponses SIP
Les réponses SIP fournissent des informations sur l’état des transactions SIP et incluent un code de réponse et une expression de raison. Les réponses SIP sont regroupées dans les classes suivantes :
Information (100 à 199) : demande reçue, suite au traitement de la demande.
Réussite (200 à 299) : action reçue, comprise et acceptée avec succès.
Redirection (300 à 399) : actions supplémentaires requises pour terminer la demande.
Erreur client (400 à 499) : la requête contient une syntaxe incorrecte ou ne peut pas être satisfaite sur ce serveur.
Erreur de serveur (500 à 599) : le serveur n’a pas répondu à une demande apparemment valide.
Échec global (600 à 699) : la demande ne peut être satisfaite sur aucun serveur.
Le tableau 2 fournit une liste complète des réponses SIP actuelles.
Information |
100 Essayage |
180 sonneries |
Transfert de l’appel 181 |
182 files d’attente |
183 Sessions avancées |
|
|
Succès |
200 OK |
202 Acceptée |
|
Redirection |
300 Choix multiples |
301 déplacé en permanence |
302 Moved temporairement |
305 Utilisation du proxy |
380 services alternatifs |
|
|
Erreur client |
400 Requête erronée |
401 Non autorisé |
402 Paiement requis |
403 Interdit |
404 Introuvable |
405 Méthode non autorisée |
|
406 Non acceptable |
407 Authentification proxy requise |
408 Délai de délai de demande |
|
409 Conflit |
410 disparus |
411 longueur requise |
|
413 Demander une entité trop importante |
414 Demander une URL trop importante |
415 Type de support non pris en charge |
|
420 Extension malveillante |
480 Temporairement non disponible |
481 Le processus/transaction d’appel n’existe pas |
|
Boucle 482 détectée |
483 Trop de sauts |
484 Adresse incomplète |
|
485 Ambiguïté |
486 Occupé ici |
487 Demande annulée |
|
488 Non acceptable ici |
|
|
|
Erreur de serveur |
Erreur interne au serveur 500 |
501 Non mis en œuvre |
502 Passerelle malveillante |
502 Service indisponible |
Délai d’ouverture de 504 passerelles |
Version SIP 505 non prise en charge |
|
Échec global |
600 occupés partout |
603 Déclin |
604 N’existe nulle part |
606 Non acceptable |
|
|
Mode NAT en mode IPv6 pur (NAT66) pour SIP ALG IPv6
L’ALG SIP IPv6 prend en charge NAT66 tout comme NAT44. Le NAT66 (NAT IPv6) fournit des fonctions NAT source et NAT statiques similaires à NAT44 (NAT IPv4).
NAT-PT
La traduction des adresses réseau (NAT-PT) (RFC 2766) est un mécanisme de traduction de protocole qui permet la communication entre les nœuds IPv6 uniquement et les nœuds IPv4 uniquement par le biais de la traduction indépendante du protocole des datagrammes IPv4 et IPv6, ne nécessitant aucune information d’état pour la session.
Nat-PT est implémenté par NAT normal d’une adresse IPv6 à une adresse IPv4 et vice versa. L’ALG SIP traite les traductions d’adresses dans la charge utile tout comme les adresses sont traitées dans un NAT normal.
Nat-PT lie les adresses du réseau IPv6 avec les adresses du réseau IPv4, et vice versa pour fournir un routage transparent pour les datagrammes traversant les domaines d’adresses.
L’avantage principal de NAT-PT est que les équipements finaux et les réseaux peuvent exécuter des adresses IPv4 ou IPv6 et le trafic peut être démarré de n’importe quel côté.
NAT64
Le nat64 est un mécanisme permettant aux hôtes IPv6 de communiquer avec les serveurs IPv4. La règle NAT64 est requise pour conserver le mappage d’adresses IPv6/IPv4. Ce mappage d’adresses est soit configuré de manière statique par l’administrateur système (traduction sans état), soit plus fréquemment, créé automatiquement lorsque le premier paquet du réseau IPv6 atteint le NAT64 pour être traduit (dynamique).
LE NAT64 est implémenté sur les équipements à l’aide d’un NAT persistant. Lorsque le premier message de requête SIP (le premier paquet doit être uniquement issu d’IPv6) transverse le DUT, la liaison d’adresse est créée, puis les paquets peuvent circuler dans les deux directions.
Le mécanisme NAT64 traduit les paquets IPv6 en paquets IPv4 et vice versa, ce qui permet aux clients IPv6 de contacter les serveurs IPv4 à l’aide d’UDP, TCP ou ICMP unicast. Les comportements NAT-PT et NAT64 semblent similaires, mais ces mécanismes sont implémentés différemment.
Lorsque NAT64 avec NAT persistant est implémenté, la prise en charge de SIP ALG avec IPv6 ajoute la traduction NAT à la table de liaison NAT persistante si nat est configuré sur l’adresse d’enregistrement. Étant donné que la traduction NAT persistante ne peut pas faire double emploi avec l’adresse configurée, la coexistence des nat66 et NAT64 configurés sur la même adresse n’est pas prise en charge.
Une seule liaison est créée pour la même adresse IP source.
STUN et SIP ALG
Session Traversal Utilities for NAT (STUN) est une solution permettant de faire fonctionner la VoIP via la traduction d’adresses réseau (NAT) et le pare-feu.
Auparavant, STUN fonctionnait sans le SIP ALG. Cela signifie que l’ALG SIP n’était pas impliqué lors de la configuration NAT persistante.
STUN peut coexister avec le SIP ALG et l’ALG SIP est impliqué lorsque la traduction d’adresses réseau (NAT) persistante est configurée.
Understanding Incoming SIP ALG Call Support Using the SIP Registrar and NAT
L’enregistrement SIP (Session Initiation Protocol) permet aux proxys SIP et aux serveurs de localisation d’identifier l’emplacement ou les emplacements auxquels les utilisateurs souhaitent être contactés. Un utilisateur enregistre un ou plusieurs sites de contact en envoyant un message REGISTER au registrar. Les champs To et Contact du message REGISTER contiennent l’adresse d’enregistrement URI (Uniform Resource Identifier) et un ou plusieurs URI de contact, comme illustré sur la figure 4. L’enregistrement crée des liaisons dans un service de localisation qui associe l’adresse d’enregistrement à l’adresse ou à l’adresse de contact.
L’équipement surveille les messages REGISTER sortants, effectue la traduction des adresses réseau (NAT) sur ces adresses et stocke les informations dans une table NAT entrante. Ensuite, lorsqu’un message d’INVITATION est reçu de l’extérieur du réseau, l’équipement utilise la table NAT entrante pour identifier l’hôte interne auquel acheminer le message INVITE. Vous pouvez tirer parti du service d’enregistrement de proxy SIP pour autoriser les appels entrants en configurant les pools NAT source de l’interface ou NAT sur l’interface de sortie de l’équipement. La fonction NAT source de l’interface est suffisante pour gérer les appels entrants dans un petit bureau, alors que nous recommandons de configurer des pools NAT source pour les réseaux plus grands ou un environnement d’entreprise.
La prise en charge des appels entrants à l’aide d’un NAT source d’interface ou d’un pool NAT source est prise en charge uniquement pour les services SIP et H.323. Pour les appels entrants, Junos OS prend actuellement en charge les protocoles UDP et TCP uniquement. La résolution des noms de domaine n’est pas prise en charge à l’heure actuelle. par conséquent, les URI doivent contenir des adresses IP, comme illustré sur la figure 4.

Exemple : définition de la durée et des délais d’appel SIP ALG
Cet exemple montre comment définir la durée de l’appel et le délai d’inactivité du média.
Exigences
Avant de commencer, consultez les fonctionnalités de durée et de délai d’expiration d’appel utilisées pour contrôler l’activité des appels SIP. Consultez Understanding SIP ALG Call Duration and Timeouts.
Aperçu
Les fonctionnalités de délai d’expiration des contenus multimédias de la durée et de l’inactivité des appels vous aident à conserver les ressources réseau et à optimiser le débit.
Ce maximum-call-duration
paramètre définit la durée maximale d’activité d’un appel. Lorsque la durée est dépassée, l’ALG SIP déchire l’appel et publie les sessions multimédias. Le paramètre par défaut est de 720 minutes et la plage est de 3 à 720 minutes. Cette configuration libère également de la bande passante en cas de défaillance des appels.
Le inactive-media-timeout
paramètre indique la durée maximale (en secondes) qu’un appel peut rester actif sans trafic multimédia (RTP ou RTPC) au sein d’un groupe. Chaque fois qu’un paquet RTP ou RTCP se produit au sein d’un appel, ce délai d’expiration se réinitialise. Lorsque la période d’inactivité dépasse ce paramètre, les ouvertures temporaires (trous d’épingle) SIP des supports du pare-feu sont fermées. Le paramètre par défaut est de 120 secondes et la plage est de 10 à 2 550 secondes. Une fois le délai d’expiration terminé, alors que les ressources pour les médias (sessions et trous d’épingle) sont supprimées, l’appel n’est pas interrompu.
Dans cet exemple, la durée de l’appel est définie sur 36 000 secondes et le délai d’inactivité du média sur 90 secondes.
Configuration
Procédure
Configuration rapide de l’interface graphique
Procédure étape par étape
Pour définir la durée de l’appel SIP ALG et le délai d’inactivité du média :
Sélectionnez Configurer >Security >ALG.
Sélectionnez l’onglet SIP .
Dans le champ Durée maximale de l’appel, saisissez
600
.Dans le champ Délai d’expiration du support inactif, saisissez
90
.Cliquez sur OK pour vérifier votre configuration et l’enregistrer comme configuration de candidature.
Si vous avez terminé la configuration de l’équipement, cliquez sur Commit Options >Commit.
Procédure étape par étape
Pour définir la durée de l’appel SIP ALG et le délai d’inactivité du média :
Configurez la durée de l’appel SIP ALG.
[edit] user@host# set security alg sip maximum-call-duration 600
Configurez le délai d’expiration du support d’inactivité SIP ALG.
[edit] user@host# set security alg sip inactive-media-timeout 90
Si vous avez terminé la configuration de l’unité, validez la configuration.
[edit] user@host# commit
Vérification
Pour vérifier que la configuration fonctionne correctement, saisissez la show security alg sip
commande.
Exemple : configuration de la protection contre les attaques doS SIP ALG
Cet exemple montre comment configurer la fonctionnalité de protection contre les attaques DoS.
Exigences
Avant de commencer, examinez la fonction de protection contre les attaques DoS utilisée pour contrôler l’activité des appels SIP. Découvrez la protection contre les attaques par doS SIP ALG.
Aperçu
La capacité du serveur proxy SIP à traiter les appels peut être impactée par les requêtes d’INVITATION SIP répétées, requêtes que le serveur a initialement refusées. La fonctionnalité de protection contre les doS vous permet de configurer l’équipement afin de surveiller les demandes d’INVITATION et les réponses du serveur proxy à ces requêtes.
Dans cet exemple, l’équipement est configuré pour protéger un serveur proxy SIP unique (10.1.1.3) contre les demandes d’INVITATION répétées auxquelles le service lui a déjà été refusé. Les paquets sont abandonnés pendant une période de 5 secondes, après quoi l’équipement reprend le transfert des requêtes d’INVITATION à partir de ces sources.
Configuration
Procédure
Configuration rapide de l’interface graphique
Procédure étape par étape
Pour configurer la protection contre les attaques DoS SIP ALG :
-
Sélectionnez Configurer>Security>ALG.
-
Sélectionnez l’onglet SIP .
-
Dans la zone Activer la protection contre les attaques, cliquez sur l’option Serveurs sélectionnés .
-
Dans la zone IP de destination, saisissez
10.1.1.3
et cliquez sur Ajouter. -
Cliquez sur OK pour vérifier votre configuration et l’enregistrer comme configuration de candidature.
-
Si vous avez terminé la configuration de l’équipement, cliquez sur Commit Options>Commit.
Procédure étape par étape
Pour configurer la protection contre les attaques DoS SIP ALG :
-
Configurez l’équipement pour protéger un serveur proxy SIP unique.
[edit] user@host# set security alg sip application-screen protect deny destination-ip 10.1.1.3
Note:IPv6 est pris en charge sur l’ALG SIP avec le mode NAT-PT (Network Address Translation Protocol Translation) et la traduction d’adresses NAT64.
Le type de l’adresse ip de <destination> est passé de l’adresse IPv4 au préfixe IP pour prendre en charge toutes sortes d’adresses IP, et un préfixe est pris en charge pour autoriser plusieurs adresses IP.
-
Configurez l’unité pour la période d’expiration de refus.
[edit] user@host# set security alg sip application-screen protect deny timeout 5
-
Si vous avez terminé la configuration de l’unité, validez la configuration.
[edit] user@host# commit
Vérification
Pour vérifier que la configuration fonctionne correctement, saisissez la show security alg sip
commande.
Exemple : Autoriser les types de messages ALG SIP inconnus
Cet exemple montre comment autoriser les types de messages inconnus.
Exigences
Avant de commencer, vérifiez comment les messages SIP non identifiés sont traités par l’équipement. Voir Understanding SIP ALG Unknown Message Types.
Aperçu
Dans cet exemple, vous configurez l’unité de manière à autoriser les types de messages inconnus dans le trafic SIP en mode NAT et en mode de routage. La valeur par défaut est d’abandonner les messages inconnus (non pris en charge).
Configuration
Procédure
Configuration rapide de l’interface graphique
Procédure étape par étape
Pour autoriser les types de messages ALG SIP inconnus :
Sélectionnez Configurer>Security>ALG.
Sélectionnez l’onglet SIP .
Cochez la case Activer la règle NAT d’autorisation .
Cochez la case Activer le routage d’autorisation .
Cliquez sur OK pour vérifier votre configuration et l’enregistrer comme configuration de candidature.
Si vous avez terminé la configuration de l’équipement, cliquez sur Commit Options>Commit.
Procédure étape par étape
Pour autoriser les types de messages ALG SIP inconnus :
Configurez l’unité pour autoriser les types de messages inconnus dans le trafic SIP.
[edit] user@host# set security alg sip application-screen unknown-message permit-nat-applied permit-routed
Si vous avez terminé la configuration de l’unité, validez la configuration.
[edit] user@host# commit
Vérification
Pour vérifier que la configuration fonctionne correctement, saisissez la show security alg sip
commande.
Exemple : configuration de la règle NAT source de l’interface pour les appels SIP entrants
Cet exemple montre comment configurer une règle NAT source sur une interface de zone publique permettant l’utilisation de NAT pour les appels SIP entrants.
Exigences
Avant de commencer, comprenez comment nat fonctionne avec le SIP ALG. Découvrez Understanding the SIP ALG and NAT.
Aperçu
Dans un scénario à deux zones avec le serveur proxy SIP dans une zone externe, vous pouvez utiliser nat pour les appels entrants en configurant une règle NAT source sur l’interface dans la zone publique ou externe.
Dans cet exemple (voir figure 5), phone1 se trouve sur l’interface ge-0/0/0/0 dans la zone privée, et phone2 et le serveur proxy se trouvent sur l’interface ge-0/0/2 dans la zone publique. Vous configurez une règle NAT source sur l’interface publique ge-0/0/2.0.
Topologie
La figure 5 illustre la règle NAT source pour les appels SIP entrants.

Dans cet exemple, après avoir créé des zones appelées « privées et publiques » et les avoir affectées aux interfaces, vous configurez les carnets d’adresses à utiliser dans le jeu de règles NAT source. Vous configurez ensuite la règle NAT source en définissant un ensemble de règles appelé sip-phones et une règle appelée phone1 qui correspond à tous les paquets de l’adresse source 10.1.1.2/32.
Enfin, vous créez des stratégies de sécurité pour autoriser l’ensemble du trafic SIP entre les zones privées et publiques.
Configuration
Procédure
Configuration rapide CLI
Pour configurer rapidement cette section de l’exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour correspondre à votre configuration réseau, copiez et collez les commandes dans l’interface de ligne de commande au [edit]
niveau hiérarchique, puis entrez commit
à partir du mode de configuration.
set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set security zones security-zone private address-book address phone1 10.1.1.2/32 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone public address-book address proxy 172.16.1.3/32 set security zones security-zone public address-book address phone2 172.16.1.2/32 set security zones security-zone public interfaces ge-0/0/2.0 set security nat source rule-set sip-phones from zone private set security nat source rule-set sip-phones to zone public set security nat source rule-set sip-phones rule phone1 match source-address 10.1.1.2/32 set security nat source rule-set sip-phones rule phone1 then source-nat interface set security policies from-zone private to-zone public policy outgoing match source-address phone1 set security policies from-zone private to-zone public policy outgoing match destination-address phone2 set security policies from-zone private to-zone public policy outgoing match destination-address proxy set security policies from-zone private to-zone public policy outgoing match application junos-sip set security policies from-zone private to-zone public policy outgoing then permit set security policies from-zone public to-zone private policy incoming match source-address phone2 set security policies from-zone public to-zone private policy incoming match destination-address phone1 set security policies from-zone public to-zone private policy incoming match source-address proxy set security policies from-zone public to-zone private policy incoming match application junos-sip set security policies from-zone public to-zone private policy incoming then permit
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour obtenir des instructions sur cette méthode, reportez-vous à Using the CLI Editor in Configuration Mode dans le GUIDE DE L’UTILISATEUR CLI.
Pour configurer une règle NAT source sur une interface de zone publique :
-
Configurez les interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24
-
Configurez les zones et attribuez-les aux interfaces.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0
-
Configurez les carnets d’adresses et créez des adresses.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.2/32 user@host# set security-zone public address-book address proxy 172.16.1.3/32 user@host# set security-zone public address-book address phone2 172.16.1.2/32
-
Configurez un ensemble de règles NAT source.
[edit security nat source] user@host# set rule-set sip-phones from zone private user@host# set rule-set sip-phones to zone public user@host# set rule-set sip-phones rule phone1 match source-address 10.1.1.2/32 user@host# set rule-set sip-phones rule phone1 then source-nat interface
-
Activez la traduction NAT source persistante.
[edit security nat source] user@host# set address-persistent
-
Configurez une stratégie de sécurité pour autoriser le trafic SIP sortant.
[edit security policies from-zone private to-zone public policy outgoing] user@host# set match source-address phone1 user@host# set match destination-address phone2 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
-
Configurez une stratégie de sécurité pour autoriser le trafic SIP entrant.
[edit security policies from-zone public to-zone private policy incoming] user@host# set match source-address phone2 user@host# set match destination-address phone1 user@host# set match source-address proxy user@host# set match application junos-sip user@host# set then permit
Résultats
À partir du mode de configuration, confirmez votre configuration en entrant les show interfaces
commandes , show security zones
et show security policies
show security nat
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration fournies dans cet exemple pour la corriger.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/2 { unit 0 { family inet { address 172.16.1.1/24; } } }
[edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.2/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address proxy 172.16.1.3/32; address phone2 172.16.1.2/32; } interfaces { ge-0/0/2.0; } } [edit] user@host# show security nat source { rule-set sip-phones { from zone private; to zone public; rule phone1 { match { source-address 10.1.1.2/32; } then { source-nat { interface; } } } } } [edit] user@host# show security policies from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address [ phone2 proxy ]; application junos-sip; } then { permit; } } } from-zone public to-zone private { policy incoming { match { source-address [ phone2 proxy ]; destination-address phone1 ; application junos-sip; } then { permit; } } }
Si vous avez terminé la configuration de l’unité, entrez commit
dans le mode de configuration.
Vérification
Pour vérifier que la configuration fonctionne correctement, effectuez les tâches suivantes :
Vérification de l’utilisation des règles NAT source
But
Vérifiez que le trafic correspond à la règle NAT source.
Action
Dans le mode opérationnel, saisissez la show security nat source rule all
commande. Afficher le champ Traduction atteint pour vérifier que le trafic correspond à la règle.
user@host> show security nat source rule all source NAT rule: phone1 Rule-set: sip-phones Rule-Id : 1 Rule position : 1 From zone : private To zone : public Match Source addresses : 0.0.0.0 - 255.255.255.255 Destination port : 0 - 0 Action : interface Persistent NAT type : N/A Persistent NAT mapping type : address-port-mapping Inactivity timeout : 0 Max session number : 0 Translation hits : 0 Successful sessions : 0 Failed sessions : 0 Number of sessions : 0
Sens
Le Translation hits
champ indique qu’aucun trafic ne correspond à la règle NAT source.
Vérification de l’état de l’ALG SIP
But
Vérifiez que le protocole SIP ALG est activé sur votre système.
Action
Dans le mode opérationnel, saisissez la show security alg status
commande.
user@host> show security alg status ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Sens
Le résultat affiche l’état du SIP ALG comme suit :
-
Activé : affiche l’activation de l’ALG SIP.
-
Désactivé : indique que l’ALG SIP est désactivé.
Exemple : Réduire la complexité du réseau en configurant un pool NAT source pour les appels SIP entrants
Cet exemple montre comment réduire la complexité du réseau en configurant un pool NAT source sur une interface externe afin d’activer la traduction d’adresses réseau (NAT) pour les appels SIP entrants.
Exigences
Avant de commencer, comprenez comment nat fonctionne avec le SIP ALG. Découvrez Understanding the SIP ALG and NAT.
Aperçu
Dans un scénario à deux zones avec le serveur proxy SIP dans une zone externe ou publique, vous pouvez utiliser nat pour les appels entrants en configurant un pool NAT sur l’interface vers la zone publique.
Dans cet exemple (voir Figure 6), le téléphone1 se trouve dans la zone privée, le téléphone2 et le serveur proxy dans la zone publique. Vous configurez un pool NAT source pour qu’il fasse la traduction d’adresses réseau (NAT). Vous créez également une stratégie qui autorise le trafic SIP depuis la zone privée vers la zone publique. Cela permet à Phone1 dans la zone privée de s’inscrire auprès du serveur proxy dans la zone publique, et permet également d’appeler la zone publique vers la zone privée.
Topologie
La figure 6 montre le pool NAT source pour les appels entrants.

Dans cet exemple, vous configurez la règle NAT source comme suit :
-
Définir un pool NAT source appelé sip-nat-pool pour contenir la plage d’adresses IP comprise entre 172.16.1.20/32 et 172.16.1.40/32.
-
Créez un ensemble de règles NAT source appelé sip-nat avec une règle sip-r1 afin de faire correspondre les paquets de la zone privée à la zone publique avec l’adresse IP source 10.1.1.3/24. Pour les paquets correspondants, l’adresse source est traduite en une adresse IP dans sip-nat-pool.
-
Configurez l’ARP proxy pour les adresses 172.16.1.20/32 à 172.16.1.40/32 sur l’interface ge-0/0/2.0. Cela permet au système de répondre aux requêtes ARP reçues sur l’interface pour ces adresses.
Configuration
Procédure
Configuration rapide CLI
Pour configurer rapidement cette section de l’exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour correspondre à votre configuration réseau, copiez et collez les commandes dans l’interface de ligne de commande au [edit]
niveau hiérarchique, puis entrez commit
à partir du mode de configuration.
set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set security zones security-zone private address-book address phone1 10.1.1.3/32 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone public address-book address proxy 172.16.1.3/32 set security zones security-zone public address-book address phone2 172.16.1.4/32 set security zones security-zone public interfaces ge-0/0/2.0 set security nat source pool sip-nat-pool address 172.16.1.20/32 to 172.16.1.40/32 set security nat source address-persistent set security nat source rule-set sip-nat from zone private set security nat source rule-set sip-nat to zone public set security nat source rule-set sip-nat rule sip-r1 match source-address 10.1.1.3/24 set security nat source rule-set sip-nat rule sip-r1 then source-nat pool sip-nat-pool set security nat proxy-arp interface ge-0/0/2.0 address 172.16.1.20/32 to 172.16.1.40/32 set security policies from-zone private to-zone public policy outgoing match source-address phone1 set security policies from-zone private to-zone public policy outgoing match destination-address any set security policies from-zone private to-zone public policy outgoing match application junos-sip set security policies from-zone private to-zone public policy outgoing then permit set security policies from-zone public to-zone private policy incoming match source-address phone2 set security policies from-zone public to-zone private policy incoming match destination-address phone1 set security policies from-zone public to-zone private policy incoming match application junos-sip set security policies from-zone public to-zone private policy incoming then permit
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour obtenir des instructions sur cette méthode, reportez-vous à Using the CLI Editor in Configuration Mode dans le GUIDE DE L’UTILISATEUR CLI.
Pour configurer un pool NAT source pour les appels entrants :
-
Configurez les interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24
-
Configurez les zones et attribuez-leur des interfaces.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0
-
Configurez les carnets d’adresses.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.3/32 user@host# set security-zone public address-book address proxy 172.16.1.3/32 user@host# set security-zone public address-book address phone2 172.16.1.4/32
-
Configurez un pool NAT source.
[edit security nat] user@host# set source pool sip-nat-pool address 172.16.1.20/32 to 172.16.1.40/32
-
Configurez une règle NAT source définie avec une règle.
[edit security nat source rule-set sip-nat] user@host# set from zone private user@host# set to zone public user@host# set rule sip-r1 match source-address 10.1.1.3/24 user@host# set rule sip-r1 then source-nat pool sip-nat-pool
-
Activez la traduction d’adresses réseau (NAT) persistante.
[edit security nat] user@host# set source address-persistent
-
Configurez le proxy ARP.
[edit security nat] user@host# set proxy-arp interface ge-0/0/2.0 address 172.16.1.20/32 to 172.16.1.40/32
-
Configurez une stratégie de sécurité pour autoriser le trafic SIP sortant.
[edit security policies from-zone private to-zone public policy outgoing] set match source-address phone1 set match destination-address any set match application junos-sip set then permit
-
Configurez une stratégie de sécurité pour autoriser le trafic SIP entrant.
[edit security policies from-zone public to-zone private policy incoming] set match source-address phone2 set match destination-address phone1 set match application junos-sip set then permit
Résultats
À partir du mode de configuration, confirmez votre configuration en entrant les show interfaces
commandes , show security zones
et show security nat
show security policies
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration fournies dans cet exemple pour la corriger.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/2 { unit 0 { family inet { address 172.16.1.1/24; } } } [edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.3/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address proxy 172.16.1.3/32; address phone2 172.16.1.4/32; } interfaces { ge-0/0/2.0; } } user@host# show security nat source { pool sip-nat-pool { address { 172.16.1.20/32 to 172.16.1.40/32; } } address-persistent; rule-set sip-nat { from zone private; to zone public; rule sip-r1 { match { source-address 10.1.1.3/24; } then { source-nat { pool { sip-nat-pool; } } } } } } proxy-arp { interface ge-0/0/2.0 { address { 172.16.1.20/32 to 172.16.1.40/32; } } } [edit] user@host# show security policies from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address any; application junos-sip; } then { permit; } } } from-zone public to-zone private { policy incoming { match { source-address phone2; destination-address phone1; application junos-sip; } then { permit; } } }
Si vous avez terminé la configuration de l’unité, entrez commit
dans le mode de configuration.
Vérification
Pour vérifier que la configuration fonctionne correctement, effectuez les tâches suivantes :
- Vérification de l’utilisation du pool NAT source
- Vérification de l’utilisation des règles NAT source
- Vérification de l’état de l’ALG SIP
- Vérification des polices de sécurité de SIP ALG
Vérification de l’utilisation du pool NAT source
But
Vérifiez qu’il y a du trafic à l’aide d’adresses IP provenant du pool NAT source.
Action
Dans le mode opérationnel, saisissez la show security nat source pool all
commande.
user@host> show security nat source pool all
Total pools: 1 Pool name : sip-nat-pool Pool id : 4 Routing instance : default Host address base : 0.0.0.0 Port : [1024, 63487] port overloading : 1 Total addresses : 21 Translation hits : 0 Address range Single Ports Twin Ports 172.16.1.20 - 172.16.1.40 0 0
Sens
Le Translation hits
champ indique qu’aucun trafic n’est utilisé par les adresses IP à partir du pool NAT source.
Vérification de l’utilisation des règles NAT source
But
Vérifiez que le trafic correspond à la règle NAT source.
Action
Dans le mode opérationnel, saisissez la show security nat source rule all
commande.
user@host> show security nat source rule all
source NAT rule: sip-r1 Rule-set: sip-nat Rule-Id : 1 Rule position : 1 From zone : private To zone : public Match Source addresses : 0.0.0.0 - 255.255.255.255 Destination port : 0 - 0 Action : interface Persistent NAT type : N/A Persistent NAT mapping type : address-port-mapping Inactivity timeout : 0 Max session number : 0 Translation hits : 0 Successful sessions : 0 Failed sessions : 0 Number of sessions : 0
Sens
Le Translation hits
champ indique qu’aucun trafic ne correspond à la règle NAT source.
Vérification de l’état de l’ALG SIP
But
Vérifiez que le protocole SIP ALG est activé sur votre système.
Action
Dans le mode opérationnel, saisissez la show security alg status
commande.
user@host> show security alg status
ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Sens
Le résultat affiche l’état du SIP ALG comme suit :
-
•Activé : affiche l’activation de l’ALG SIP.
-
•Désactivé : indique que l’ALG SIP est désactivé.
Vérification des polices de sécurité de SIP ALG
But
Vérifiez que la règle NAT source entre la zone publique et la zone privée est définie.
Action
Dans le mode opérationnel, saisissez la show security policies
commande.
user@host> show security policies
from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address any; application junos-sip; } then { permit; } } from-zone public to-zone private { policy incoming { match { source-address phone2; destination-address phone1; application junos-sip; } then { permit; } }
Sens
Le résultat de l’exemple montre que la règle NAT source entre la zone publique et la zone privée est définie.
Exemple : configuration d’un NAT statique pour les appels SIP entrants
Cet exemple montre comment configurer un mappage NAT statique qui permet aux appelants de la zone privée de s’inscrire auprès du serveur proxy dans la zone publique.
Exigences
Avant de commencer, comprenez comment nat fonctionne avec le SIP ALG. Découvrez Understanding the SIP ALG and NAT.
Aperçu
Lorsqu’un serveur proxy SIP se trouve dans une zone externe ou publique, vous pouvez configurer un NAT statique sur l’interface publique pour permettre aux appelants de la zone privée de s’enregistrer auprès du serveur proxy.
Dans cet exemple (voir figure 7), phone1 se trouve sur l’interface ge-0/0/0/0 dans la zone privée, et phone2 et le serveur proxy se trouvent sur l’interface ge-0/0/2 dans la zone publique. Vous créez un ensemble de règles NAT statiques appelée incoming-sip avec une règle appelée phone1 afin de correspondre aux paquets de la zone publique avec l’adresse de destination 172.16.1.3/32. Pour les paquets correspondants, l’adresse IP de destination est traduite vers l’adresse privée 10.1.1.3/32. Vous créez également un proxy ARP pour l’adresse 172.16.1.3/32 sur l’interface ge-0/0/2.0. Cela permet au système de répondre aux requêtes ARP reçues sur l’interface pour ces adresses. Enfin, vous créez une stratégie de sécurité appelée entrante qui autorise le trafic SIP de la zone publique vers la zone privée.
Lors de la configuration d’un NAT statique pour les appels SIP entrants, assurez-vous de configurer une adresse publique pour chaque adresse privée dans la zone privée.
Topologie
La figure 7 montre un NAT statique pour les appels entrants.

Configuration
Procédure
Configuration rapide CLI
Pour configurer rapidement cette section de l’exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour correspondre à votre configuration réseau, copiez et collez les commandes dans l’interface de ligne de commande au [edit]
niveau hiérarchique, puis entrez commit
à partir du mode de configuration.
set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone private address-book address phone1 10.1.1.5/32 set security zones security-zone public interfaces ge-0/0/2.0 set security zones security-zone public address-book address proxy 172.16.1.3/32 set security zones security-zone public address-book address phone2 172.16.1.4/32 set security nat static rule-set incoming-sip from zone public set security nat static rule-set incoming-sip rule phone1 match destination-address 172.16.1.3/32 set security nat static rule-set incoming-sip rule phone1 then static-nat prefix 10.1.1.3/32 set security nat proxy-arp interface ge-0/0/2.0 address 172.16.1.3/32 set security policies from-zone public to-zone private policy incoming match source-address phone2 set security policies from-zone public to-zone private policy incoming match source-address proxy set security policies from-zone public to-zone private policy incoming match destination-address phone1 set security policies from-zone public to-zone private policy incoming match application junos-sip set security policies from-zone public to-zone private policy incoming then permit set security policies from-zone private to-zone public policy outgoing match source-address phone1 set security policies from-zone private to-zone public policy outgoing match destination-address phone2 set security policies from-zone private to-zone public policy outgoing match destination-address proxy set security policies from-zone private to-zone public policy outgoing match application junos-sip set security policies from-zone private to-zone public policy outgoing then permit
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour obtenir des instructions sur cette méthode, reportez-vous à Using the CLI Editor in Configuration Mode dans le GUIDE DE L’UTILISATEUR CLI.
Pour configurer la règle NAT statique pour les appels entrants :
-
Configurez les interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24
-
Créez des zones de sécurité.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0
-
Attribuez des adresses aux zones de sécurité.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.5/32 user@host# set security-zone public address-book address proxy 172.16.1.3/32 user@host# set security-zone public address-book address phone2 172.16.1.4/32
-
Créez un ensemble de règles NAT statiques avec une règle.
[edit security nat static rule-set incoming-sip] user@host# set from zone public user@host# set rule phone1 match destination-address 172.16.1.3/32 user@host# set rule phone1 then static-nat prefix 10.1.1.3/32
-
Configurez le proxy ARP.
[edit security nat] user@host# set proxy-arp interface ge-0/0/2.0 address 172.16.1.3/32
-
Définissez une stratégie de sécurité pour autoriser le trafic SIP entrant.
[edit security policies from-zone public to-zone private policy incoming] user@host# set match source-address phone2 user@host# set match source-address proxy user@host# set match destination-address phone1 user@host# set match application junos-sip user@host# set then permit
-
Définissez une stratégie de sécurité pour autoriser le trafic SIP sortant.
[edit security policies from-zone private to-zone public policy outgoing] user@host# set match source-address phone1 user@host# set match destination-address phone2 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
Résultats
À partir du mode de configuration, confirmez votre configuration en entrant les show interfaces
commandes , show security zones
et show security nat
show security policies
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration fournies dans cet exemple pour la corriger.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/2 { unit 0 { family inet { address 172.16.1.1/24; } } }
[edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.5/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address proxy 172.16.1.3/32; address phone2 172.16.1.4/32; } interfaces { ge-0/0/2.0; } }
[edit] user@host# show security nat static { rule-set incoming-sip { from zone public; rule phone1 { match { destination-address 172.16.1.3/32; } then { static-nat prefix 10.1.1.3/32; } } } } proxy-arp { interface ge-0/0/2.0 { address { 172.16.1.3/32; } } }
[edit] user@host# show security policies from-zone public to-zone private { policy incoming { match { source-address phone2; destination-address phone1; application junos-sip; } then { permit; } } } from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address [phone2 proxy]; application junos-sip; } then { permit; } } }
Si vous avez terminé la configuration de l’unité, entrez commit
dans le mode de configuration.
Vérification
Pour vérifier que la configuration fonctionne correctement, effectuez les tâches suivantes :
- Vérification de la configuration NAT statique
- Vérification de l’état de l’ALG SIP
- Vérification des polices de sécurité de SIP ALG
Vérification de la configuration NAT statique
But
Vérifiez que le trafic correspond à l’ensemble de règles NAT statiques.
Action
Dans le mode opérationnel, saisissez la show security nat static rule all
commande.
user@host> show security nat static rule all
Static NAT rule: phone1 Rule-set: incoming-sip Rule-Id : 1 Rule position : 1 From zone : public Destination addresses : 172.16.1.3 Host addresses : 172.16.1.4 Netmask : 24 Host routing-instance : N/A Translation hits : 4 Successful sessions : 4 Failed sessions : 0 Number of sessions : 4
Sens
Le Translation hits
champ indique que le trafic correspond à l’ensemble de règles NAT statiques.
Vérification de l’état de l’ALG SIP
But
Vérifiez que le protocole SIP ALG est activé sur votre système.
Action
Dans le mode opérationnel, saisissez la show security alg status
commande.
user@host> show security alg status
ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Sens
Le résultat affiche l’état du SIP ALG comme suit :
-
•Activé : affiche l’activation de l’ALG SIP.
-
•Désactivé : indique que l’ALG SIP est désactivé.
Vérification des polices de sécurité de SIP ALG
But
Vérifiez que la règle NAT statique entre la zone publique et la zone privée est définie.
Action
Dans le mode opérationnel, saisissez la show security policies
commande.
user@host> show security policies
from-zone public to-zone private { policy incoming { match { source-address [ phone2 proxy ]; destination-address phone1; application junos-sip; } then { permit; } } } from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address [ phone2 proxy ]; application junos-sip; } then { permit; } } }
Sens
Le résultat de l’exemple montre que la règle NAT statique entre la zone publique et la zone privée est définie.
Exemple : configuration du proxy SIP dans la zone privée et de la fonction NAT dans la zone publique
Cet exemple montre comment configurer un serveur proxy SIP dans une zone privée et un NAT statique dans une zone publique pour permettre aux appelants de la zone publique de s’enregistrer auprès du serveur proxy.
Exigences
Avant de commencer, comprenez comment nat fonctionne avec le SIP ALG. Découvrez Understanding the SIP ALG and NAT.
Aperçu
Avec le serveur proxy SIP dans la zone privée, vous pouvez configurer un NAT statique sur l’interface externe ou publique afin que les appelants de la zone publique puissent s’enregistrer auprès du serveur proxy.
Dans cet exemple (voir Figure 8), phone1 et le serveur proxy SIP se trouvent sur l’interface ge-0/0/0 dans la zone privée, et phone2 sur l’interface ge-0/0/2 dans la zone publique. Vous configurez une règle NAT statique pour que le serveur proxy autorise phone2 à s’inscrire auprès du serveur proxy, puis créez une stratégie appelée sortante qui permet au trafic SIP du public vers la zone privée de permettre aux appelants de la zone publique de s’inscrire auprès du serveur proxy. Vous configurez également une stratégie appelée entrante de la zone privée vers la zone publique afin de permettre au téléphone1 d’appeler.
Topologie
La figure 8 illustre la configuration du proxy SIP dans la zone privée et de la traduction d’adresses réseau dans une zone publique.

Dans cet exemple, vous configurez la règle NAT comme suit :
-
Configurez la règle NAT statique sur l’interface ge-0/0/2 au serveur proxy avec un ensemble de règles appelé sip entrant avec une règle appelée proxy pour correspondre aux paquets de la zone publique avec l’adresse de destination 172.16.1.2/32. Pour les paquets correspondants, l’adresse IP de destination est traduite vers l’adresse privée 10.1.1.5/32.
-
Configurez un deuxième ensemble de règles appelé sip-phones avec une règle appelée phone1 afin d’activer l’interface NAT pour la communication entre le téléphone1 et le téléphone2.
Configuration
Procédure
Configuration rapide CLI
Pour configurer rapidement cette section de l’exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour correspondre à votre configuration réseau, copiez et collez les commandes dans l’interface de ligne de commande au [edit]
niveau hiérarchique, puis entrez commit
à partir du mode de configuration.
set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set interfaces ge-0/0/2 unit 0 proxy-arp set security zones security-zone private address-book address phone1 10.1.1.3/32 set security zones security-zone private address-book address proxy 10.1.1.5/32 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone public address-book address phone2 172.16.1.4/32 set security zones security-zone public interfaces ge-0/0/2.0 set security nat source rule-set sip-phones from zone private set security nat source rule-set sip-phones to zone public set security nat source rule-set sip-phones rule phone1 match source-address 10.1.1.3/32 set security nat source rule-set sip-phones rule phone1 then source-nat interface set security nat static rule-set incoming-sip from zone public set security nat static rule-set incoming-sip rule proxy match destination-address 172.16.1.2/32 set security nat static rule-set incoming-sip rule proxy then static-nat prefix 10.1.1.5/32 set security nat proxy-arp interface ge-0/0/2.0 address 172.16.1.2/32 set security policies from-zone private to-zone public policy outgoing match source-address any set security policies from-zone private to-zone public policy outgoing match destination-address phone2 set security policies from-zone private to-zone public policy outgoing match application junos-sip set security policies from-zone private to-zone public policy outgoing then permit set security policies from-zone public to-zone private policy incoming match source-address phone2 set security policies from-zone public to-zone private policy incoming match destination-address proxy set security policies from-zone public to-zone private policy incoming match application junos-sip set security policies from-zone public to-zone private policy incoming then permit
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour obtenir des instructions sur cette méthode, reportez-vous à Using the CLI Editor in Configuration Mode dans le GUIDE DE L’UTILISATEUR CLI.
Pour configurer la règle NAT statique pour les appels entrants :
-
Configurez les interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 proxy-arp
-
Configurez les zones de sécurité.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0
-
Attribuez des adresses aux zones de sécurité.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.3/32 user@host# set security-zone private address-book address proxy 10.1.1.5/32 user@host# set security-zone public address-book address phone2 172.16.1.4/32
-
Créez un ensemble de règles pour la règle NAT statique et attribuez-lui une règle.
[edit security nat static rule-set incoming-sip] user@host# set from zone public user@host# set rule proxy match destination-address 172.16.1.2/32 user@host# set rule proxy then static-nat prefix 10.1.1.5/32
-
Configurez proxy-arp pour l’adresse 172.16.1.2/32.
[edit security nat] user@host# proxy-arp interface ge-0/0/2.0 address 172.16.1.2/32
-
Configurez le deuxième ensemble de règles et attribuez-lui une règle.
[edit security nat source rule-set sip-phones] user@host# set from zone private user@host# set to zone public user@host# set rule phone1 match source-address 10.1.1.3/32 user@host# set rule phone1 then source-nat interface
-
Configurez une stratégie de sécurité pour le trafic sortant.
[edit security policies from-zone private to-zone public policy outgoing] user@host# set match source-address any user@host# set match destination-address phone2 user@host# set match application junos-sip user@host# set then permit
-
Configurez une stratégie de sécurité pour le trafic entrant.
[edit security policies from-zone public to-zone private policy incoming] user@host# set match source-address phone2 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
Résultats
À partir du mode de configuration, confirmez votre configuration en entrant les show interfaces
commandes , show security zones
et show security nat
show security policies
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration fournies dans cet exemple pour la corriger.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/2 { unit 0 { proxy-arp; family inet { address 172.16.1.1/24; } } } [edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.3/32; address proxy 10.1.1.5/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address phone2 172.16.1.4/32; } interfaces { ge-0/0/2.0; } } [edit] user@host# show security nat source { rule-set sip-phones { from zone private; to zone public; rule phone1 { match { source-address 10.1.1.3/32; } then { source-nat { interface; } } } } } static { rule-set incoming-sip { from zone public; rule proxy { match { destination-address 172.16.1.2/32; } then { static-nat prefix 10.1.1.5/32; } } } proxy-arp { interface ge-0/0/2.0 { address { 172.16.1.2/32; } } } } [edit] user@host# show security policies from-zone private to-zone public { policy outgoing { match { source-address any; destination-address phone2; application junos-sip; } then { permit; } } } from-zone public to-zone private { policy incoming { match { source-address phone2; destination-address proxy; application junos-sip; } then { permit; } } }
Si vous avez terminé la configuration de l’unité, entrez commit
dans le mode de configuration.
Vérification
Pour vérifier que la configuration fonctionne correctement, effectuez les tâches suivantes :
- Vérification de la configuration NAT statique
- Vérification de l’état de l’ALG SIP
- Vérification de la règle NAT source
- Vérification de la session Security Flow
Vérification de la configuration NAT statique
But
Vérifiez que le trafic correspond à l’ensemble de règles NAT statiques.
Action
Dans le mode opérationnel, saisissez la show security nat static rule all
commande. Afficher le champ Traduction atteint pour vérifier que le trafic correspond à la règle.
user@host> show security nat static rule all Total static-nat rules: 1 Total referenced IPv4/IPv6 ip-prefixes: 2/0 Static NAT rule: proxy Rule-set: incoming-sip Rule-Id : 2 Rule position : 1 From zone : public Destination addresses : 172.16.1.2 Host addresses : 10.1.1.5 Netmask : 32 Host routing-instance : N/A Translation hits : 23 Successful sessions : 23 Failed sessions : 0 Number of sessions : 0
Sens
Le Translation hits
champ indique que 23 trafics correspondent à la règle NAT statique.
Vérification de l’état de l’ALG SIP
But
Vérifiez que le protocole SIP ALG est activé sur votre système.
Action
Dans le mode opérationnel, saisissez la show security alg status
commande.
user@host> show security alg status ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Sens
Le résultat affiche l’état du SIP ALG comme suit :
-
Activé : affiche l’activation de l’ALG SIP.
-
Désactivé : indique que l’ALG SIP est désactivé.
Vérification de la règle NAT source
But
Vérifiez que la configuration de la règle NAT source.
Action
Dans le mode opérationnel, saisissez la show security nat source rule all
commande.
user@host> show security nat source rule all Total referenced IPv4/IPv6 ip-prefixes: 1/0 source NAT rule: phone1 Rule-set: sip-phones Rule-Id : 1 Rule position : 1 From zone : private To zone : public Match Source addresses : 10.1.1.3 - 10.1.1.3 Action : interface Persistent NAT type : N/A Persistent NAT mapping type : address-port-mapping Inactivity timeout : 0 Max session number : 0 Translation hits : 88 Successful sessions : 88 Failed sessions : 0 Number of sessions : 0
Sens
Le Translation hits
champ indique que 88 trafics correspondent à la règle NAT source.
Vérification de la session Security Flow
But
Vérifiez que la traduction NAT téléphone1 vers téléphone2.
Action
Dans le mode opérationnel, saisissez la run show security flow session
commande.
user@host> run show security flow session Session ID: 169, Policy name: allow-all/4, Timeout: 2, Valid In: 10.1.1.3/4 --> 172.16.1.4/52517;icmp, Conn Tag: 0x0, If: ge-0/0/0.0, Pkts: 1, Bytes: 84, Out: 172.16.1.4/52517 --> 172.16.1.1/25821;icmp, Conn Tag: 0x0, If: ge-0/0/1.0, Pkts: 1, Bytes: 84,
Sens
La sortie affiche la traduction NAT téléphone1 vers téléphone2.
Exemple : Configuration d’un scénario SIP ALG et NAT à trois zones
Cet exemple montre comment configurer un serveur proxy SIP dans une zone privée et un NAT statique dans une zone publique pour permettre aux appelants de la zone publique de s’enregistrer auprès du serveur proxy.
Exigences
Avant de commencer, comprenez comment nat fonctionne avec le SIP ALG. Découvrez Understanding the SIP ALG and NAT.
Aperçu
Dans une configuration SIP de trois zones, le serveur proxy SIP se trouve généralement dans une zone différente de l’appel et des systèmes appelés. Un tel scénario nécessite une configuration supplémentaire de l’adresse et de la zone, ainsi que des stratégies pour garantir que tous les systèmes ont accès les uns aux autres et au serveur proxy.
Dans cet exemple, phone1 est sur l’interface ge-0/0/0.0 dans la zone privée, phone2 est sur l’interface ge-0/0/2.0 dans la zone publique, et le serveur proxy est sur l’interface ge-0/0/1.0 dans la zone DMZ. Vous configurez la règle NAT statique pour phone1 dans la zone privée. Vous créez ensuite des stratégies pour le trafic transitant de la zone privée à la zone DMZ et de la zone privée, de la zone publique à la zone DMZ et de la zone publique, et de la zone privée à la zone publique. Les flèches de la figure 9 indiquent le flux de signalisation SIP lorsque phone2 dans la zone publique appelle le numéro1 dans la zone privée. Une fois la session lancée, les données transitent directement entre le téléphone1 et le téléphone2.

Dans cet exemple, vous configurez la règle NAT comme suit :
Configurez un ensemble de règles NAT statiques appelée incoming-sip avec un téléphone de règle1 afin de correspondre aux paquets de la zone publique avec l’adresse de destination 10.1.2.3/32. Pour les paquets correspondants, l’adresse IP de destination est traduite vers l’adresse privée 10.1.1.3/32.
Configurez le proxy ARP pour l’adresse 10.1.2.3/32 sur l’interface ge-0/0/1.0, ce qui permet au système de répondre aux requêtes ARP reçues sur l’interface pour cette adresse.
Configurez un deuxième ensemble de règles appelé sip-phones avec une règle r1 afin d’activer la règle NAT de l’interface pour la communication de phone1 vers le serveur proxy et de téléphone1 à téléphone2.
Configuration
Procédure
Configuration rapide CLI
Pour configurer rapidement cette section de l’exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour correspondre à votre configuration réseau, copiez et collez les commandes dans l’interface de ligne de commande au [edit]
niveau hiérarchique, puis entrez commit
à partir du mode de configuration.
set security nat static rule-set sip-phone from zone private set security nat static rule-set sip-phone from zone public set security nat static rule-set sip-phone rule phone1 match destination-address 10.1.2.3/32 set security nat static rule-set sip-phone rule phone1 then static-nat prefix 10.1.1.3/32 set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/1 unit 0 family inet address 10.1.2.2/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set security zones security-zone private address-book address phone1 10.1.1.3/32 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone public address-book address phone2 172.16.1.4/32 set security zones security-zone public interfaces ge-0/0/2.0 set security zones security-zone dmz address-book address proxy 10.1.2.4/32 set security zones security-zone dmz interfaces ge-0/0/1.0 set security nat source rule-set sip-phones from zone private set security nat source rule-set sip-phones to zone dmz set security nat source rule-set sip-phones rule r1 match source-address 10.1.1.3/32 set security nat source rule-set sip-phones rule r1 then source-nat interface set security policies from-zone private to-zone dmz policy private-to-proxy match source-address phone1 set security policies from-zone private to-zone dmz policy private-to-proxy match destination-address proxy set security policies from-zone private to-zone dmz policy private-to-proxy match application junos-sip set security policies from-zone private to-zone dmz policy private-to-proxy then permit set security policies from-zone public to-zone dmz policy public-to-proxy match source-address phone2 set security policies from-zone public to-zone dmz policy public-to-proxy match destination-address proxy set security policies from-zone public to-zone dmz policy public-to-proxy match application junos-sip set security policies from-zone public to-zone dmz policy public-to-proxy then permit set security policies from-zone public to-zone private policy public-to-private match source-address phone2 set security policies from-zone public to-zone private policy public-to-private match destination-address phone1 set security policies from-zone public to-zone private policy public-to-private match application junos-sip set security policies from-zone public to-zone private policy public-to-private then permit set security policies from-zone private to-zone public policy private-to-public match source-address phone1 set security policies from-zone private to-zone public policy private-to-public match destination-address phone2 set security policies from-zone private to-zone public policy private-to-public match application junos-sip set security policies from-zone private to-zone public policy private-to-public then permit set security policies from-zone dmz to-zone private policy proxy-to-private match source-address proxy set security policies from-zone dmz to-zone private policy proxy-to-private match destination-address phone1 set security policies from-zone dmz to-zone private policy proxy-to-private match application junos-sip set security policies from-zone dmz to-zone private policy proxy-to-private then permit set security policies from-zone dmz to-zone public policy proxy-to-public match source-address proxy set security policies from-zone dmz to-zone public policy proxy-to-public match destination-address phone2 set security policies from-zone dmz to-zone public policy proxy-to-public match application junos-sip set security policies from-zone dmz to-zone public policy proxy-to-public then permit
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration. Pour obtenir des instructions sur cette méthode, reportez-vous à Using the CLI Editor in Configuration Mode dans le GUIDE DE L’UTILISATEUR CLI.
Pour configurer un serveur proxy SIP dans une zone privée et un NAT statique dans une zone publique :
Créez un ensemble de règles pour la règle NAT statique et attribuez-lui une règle.
[edit security nat static rule-set] user@host# sip-phone from zone private user@host# sip-phone from zone public user@host# sip-phone rule phone1 match destination-address 10.1.2.3/32 user@host# phone1 then static-nat prefix 10.1.1.3/32
Configurez les interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/1 unit 0 family inet address 10.1.2.2/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24
Configurez les zones de sécurité.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0 user@host# set security-zone dmz interfaces ge-0/0/1.0
Attribuez des adresses aux zones de sécurité.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.3/32 user@host# set security-zone public address-book address phone2 172.16.1.4/32 user@host# set security-zone dmz address-book address proxy 10.1.2.4/32
Configurez le NAT de l’interface pour la communication du téléphone1 au proxy.
[edit security nat source rule-set sip-phones] user@host# set from zone private user@host# set to zone dmz user@host# set rule r1 match source-address 10.1.1.3/32 user@host# set rule r1 then source-nat interface
Configurez une stratégie de sécurité pour autoriser le trafic d’une zone privée à une zone DMZ.
[edit security policies from-zone private to-zone dmz policy private-to-proxy] user@host# set match source-address phone1 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
Configurez une stratégie de sécurité pour autoriser le trafic d’une zone publique à une zone DMZ.
[edit security policies from-zone public to-zone dmz policy public-to-proxy] user@host# set match source-address phone2 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
Configurez une stratégie de sécurité pour autoriser le trafic d’une zone privée à une zone publique.
[edit security policies from-zone private to-zone public policy private-to-public] user@host# set match source-address phone1 user@host# set match destination-address phone2 user@host# set match application junos-sip user@host# set then permit
Configurez une stratégie de sécurité pour autoriser le trafic d’une zone publique à une zone privée.
[edit security policies from-zone public to-zone private policy public-to-private] user@host# set match source-address phone2 user@host# set match destination-address phone1 user@host# set match application junos-sip user@host# set then permit
Configurez une stratégie de sécurité pour autoriser le trafic d’une zone DMZ à une zone privée.
[edit security policies from-zone dmz to-zone private policy proxy-to-private] user@host# set match source-address proxy user@host# set match destination-address phone1 user@host# set match application junos-sip user@host# set then permit
Configurez une stratégie de sécurité pour autoriser le trafic d’une zone DMZ à une zone publique.
[edit security policies from-zone dmz to-zone public policy proxy-to-public] user@host# set match source-address proxy user@host# set match destination-address phone2 user@host# set match application junos-sip user@host# set then permit
Résultats
À partir du mode de configuration, confirmez votre configuration en entrant les show interfaces
commandes , show security zones
et show security nat
show security policies
. Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration fournies dans cet exemple pour la corriger.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/1 { unit 0 { family inet { address 10.1.2.2/24; } } } ge-0/0/2 { unit 0 { family inet { address 172.16.1.1/24; } } }
[edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.3/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address phone2 172.16.1.4/32; } interfaces { ge-0/0/2.0; } } security-zone dmz { address-book { address proxy 10.1.2.4/32; } interfaces { ge-0/0/1.0; } }
[edit] user@host# show security nat static { rule-set sip-phone { from zone [ private public ]; rule phone1 { match { destination-address 10.1.2.3/32; } then { static-nat { prefix { 10.1.1.3/32; } } } } } } source { rule-set sip-phones { from zone private; to zone dmz; rule r1 { match { source-address 10.1.1.3/32; } then { source-nat { interface; } } } } } proxy-arp { interface ge-0/0/1.0 { address { 10.1.2.3/32; } } }
[edit] user@host# show security policies from-zone private to-zone dmz { policy private-to-proxy { match { source-address phone1; destination-address proxy; application junos-sip; } then { permit; } } } from-zone public to-zone dmz { policy public-to-proxy { match { source-address phone2; destination-address proxy; application junos-sip; } then { permit; } } } from-zone public to-zone private { policy public-to-private { match { source-address phone2; destination-address phone1; } then { permit; } } } from-zone private to-zone public { policy private to-zone public { match { source-address phone1; destination-address phone2; } then { permit; } } } from-zone dmz to-zone private { policy proxy-to-private { match { source-address proxy; destination-address phone2; application junos-sip; } then { permit; } } }
Si vous avez terminé la configuration de l’unité, entrez commit
dans le mode de configuration.
Vérification
Pour vérifier que la configuration fonctionne correctement, effectuez les tâches suivantes :
- Vérification de l’utilisation des règles NAT source
- Vérification de l’utilisation des règles NAT statiques
- Vérification de l’état de l’ALG SIP
Vérification de l’utilisation des règles NAT source
But
Vérifiez que le trafic correspond à la règle NAT source.
Action
Dans le mode opérationnel, saisissez la show security nat source rule all
commande. Afficher le champ Traduction atteint pour vérifier que le trafic correspond à la règle.
user@host> show security nat source rule all source NAT rule: r1 Rule-set: sip-phones Rule-Id : 1 Rule position : 1 From zone : private To zone : public Match Source addresses : 0.0.0.0 - 255.255.255.255 Destination port : 0 - 0 Action : interface Persistent NAT type : N/A Persistent NAT mapping type : address-port-mapping Inactivity timeout : 0 Max session number : 0 Translation hits : 0 Successful sessions : 0 Failed sessions : 0 Number of sessions : 0
Sens
Il Translation hits field
indique qu’aucun trafic ne correspond à la règle NAT source.
Vérification de l’utilisation des règles NAT statiques
But
Vérifiez que le trafic correspond à la règle NAT statique.
Action
Dans le mode opérationnel, saisissez la show security nat static rule all
commande. Afficher le champ Traduction atteint pour vérifier que le trafic correspond à la règle.
user@host> show security nat static rule all Total static-nat rules: 1 Total referenced IPv4/IPv6 ip-prefixes: 2/0 Static NAT rule: phone1 Rule-set: sip-phone Rule-Id : 1 Rule position : 1 From zone : private : public Destination addresses : 10.1.2.3 Host addresses : 10.1.2.4 Netmask : 32 Host routing-instance : N/A Translation hits : 127 Successful sessions : 127 Failed sessions : 0 Number of sessions : 0
Sens
Le Translation hits
champ indique que le trafic correspond à la règle NAT statique.
Vérification de l’état de l’ALG SIP
But
Vérifiez que le protocole SIP ALG est activé sur votre système.
Action
Dans le mode opérationnel, saisissez la show security alg status
commande.
user@host> show security alg status ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Sens
Le résultat affiche l’état du SIP ALG comme suit :
Activé : affiche l’activation de l’ALG SIP.
Désactivé : indique que l’ALG SIP est désactivé.