SIP permet d’établir une communication audio
ou multimédia entre les postes à l’aide
des différentes adresses IP et numéros de
port implantés dans le corps du message SIP. Tandis
que le routeur NAT permet de transiter les paquets issus
du réseau privé, à travers Internet
grâce à allocation d'une adresse publique.
Cette méthode permet de sécuriser le réseau
local
Cependant quelques difficultés existent en utilisant
SIP et les routeurs NAT. En effet le routeur NAT avant d’envoyer
un paquet sur le réseau Internet va modifier l’adresse
IP de la machine source en une adresse IP et numéro
de port publics. Mais celui-ci le modifie uniquement dans
l’entête du message.
Prenons un exemple:
Deux personnes Mohadina et Dalentino Souhaitent communiquer.
C'est Mohadina qui va appeler Dalentino.
Dans le cas ou le NAT est placé au niveau de la machine
qui souhaite établir une communication.
Mohadina envoie un INVITE à Dalentino. Cet INVITE
va passer par le routeur NAT qui va lui attribuer une adresse
IP public et un numéro de port. Il va arriver sur
la machine de Dalentino. Mais Dalentino ne peut pas établir
la communication avec Mohadina. En effet le routeur NAT
à modifier l'adresse et le numéro de port
de Mohadina, mais uniquement dans l'en-tête du message
mais pas dans le corps du message INVITE, par conséquent
l'adresse de Mohadina n'est pas valide.
Prenons le cas ou c'est Dalentino qui souhaite établir
une communication avec Mohadina.
Dalentino envoie donc un INVITE pour établir une
communication avec Mohadina. Le problème est que
vu de l'extérieur l'adresse IP privé de Mohadina
n'est pas connue car seul le NAT permet de faire la transition
des paquets. Par conséquent Dalentino ne peut pas
communiquer avec Mohadina.