Dans une configuration standard PAT statique, où une combinaison IP: Port est toujours mappée à une autre combinaison IP: Port, il existe trois combinaisons possibles de l'intérieur / extérieur / source / destination qui peuvent être configurées.
Par exemple, ceci est un exemple de configuration:
ip nat inside source static tcp 10.0.20.13 8080 2.2.2.33 80
^^^^^^^^^^^^^
En termes simples, cette configuration permet à tout hôte extérieur d'établir une connexion TCP à l'IP 2.2.2.33 sur le port 80. Lorsque ce paquet atteint le routeur, l' adresse IP et le port ( 2.2.2.33:80
) de destination sont traduits en 10.0.20.13:8080
.
L'inverse se produirait également, si l'hôte interne 10.0.20.13 envoie un paquet TCP avec un port source de 8080, alors que ce paquet traverse le routeur, l' IP source et Port ( 10.0.20.13:8080
) sont traduits en 2.2.2.33:80
. (il s'agit généralement d'un paquet de réponses , plutôt que d'un paquet initié à partir de l'hôte Inside)
Voici les trois options de configuration pour la partie marquée ci-dessus:
Router(config)#ip nat inside ?
destination Destination address translation
source Source address translation
Router(config)#ip nat outside ?
source Source address translation
En effet, vous pouvez configurer:
- ip nat dans le tcp statique source {IP} {Port} {IP} {Port}
- ip nat dans la destination statique tcp {IP} {Port} {IP} {Port}
- ip nat en dehors de la source statique tcp {IP} {Port} {IP} {Port}
En quoi ces options sont-elles différentes et quand utiliserait-on chacune des trois options? Veuillez utiliser les termes profanes comme je l'ai fait ci-dessus pour décrire comment chacun manipulerait les paquets qui transitaient par l'appareil.
De plus, quelqu'un peut-il me dire pourquoi il n'y a pas d' option de destination extérieure ?
Réponses:
Réfléchissez bien à cela.
La source interne signifie que vous souhaitez traduire l'adresse source du trafic provenant de votre réseau. C'est l'arrangement typique de "réseautage à domicile" qui vous permet d'utiliser des adresses privées sur Internet public. Bien sûr, ce n'est pas la seule utilisation de cette version.
La destination interne signifie que vous souhaitez que le trafic provenant d'une adresse externe vers un protocole et un port de transport de destination particuliers soit dirigé vers une adresse interne particulière. C'est ce que font les utilisateurs à domicile pour permettre d'accéder à quelque chose comme un serveur Web avec une adresse privée à partir d'Internet public. Bien sûr, ce n'est pas la seule utilisation de cette version.
La source externe traduit le trafic provenant de l'extérieur pour donner l'impression qu'il provient d'une adresse interne. Il peut être utile dans les cas où les entreprises dont les plages d'adresses IP se chevauchent fusionnent et doivent commencer à se connecter aux réseaux. Vous pouvez convertir les adresses source du trafic provenant de l'extérieur, qui auraient normalement des adresses source externes en conflit avec les adresses internes, en adresses d'adresses source dans une plage d'adresses internes disponible.
La destination extérieure n'a pas vraiment de sens car c'est l'inverse de la redirection de port. Cela limiterait tout trafic provenant de l'intérieur, destiné à un protocole et un port de transport extérieur particulier, à une seule adresse extérieure.
la source
inside destination
semble correspondre à mon "explication du profane" pourinside source
. Sauf que mon exemple a changé le port de destination # pour le trafic entrant de80
à8080
. Votre description semble impliquer que le numéro de port ne change pas? Quoi qu'il en soit, cela ne peut pas être la seule différence entreinside destination
etinside source
, n'est-ce pas?inside source
flux de trafic provient de l'intérieur et leinside destination
flux de trafic provient de l'extérieur. Si le trafic provenant deinside source
nécessite une réponse, uninside destination
processus de type temporaire se produit pour la réponse. Le numéro de port peut être modifié à mesure que le trafic circule d'un côté à l'autre, mais tous les routeurs (en particulier les routeurs domestiques) ne le prennent pas en charge.Nous devons partir des bases, revoyons donc la terminologie NAT. NAT traduit les adresses IP en paquets IP, non? Qu'est-ce que ça veut dire? Que cela crée essentiellement des mirages - oui, des illusions d'optique, vous savez. Par exemple, dans une configuration NAT typique lorsque des hôtes LAN à adresse privée accèdent à Internet en utilisant l'adresse IP publique de l'interface de routeur externe, ces hôtes apparaissent pour les serveurs Internet comme ayant cette IP publique (ou les IP provenant d'un pool d'adresses IP publiques). NAT ne crée pas de nouveaux hôtes physiques, bien sûr - mais il crée une sorte de nouvelles entités virtuelles - dans cet exemple, les hôtes LAN se considèrent comme, disons 192.168.1.x mais les serveurs Internet les voient comme 203.0.113.x - un ensemble d'hôtes physiques mais deux ensembles d'adresses IP. Deux ensembles distincts d'hôtes (logiques). Illusion d'optique. Et la terminologie est la suivante:
Et comme vous pouvez le constater, nous sommes obligés de faire une distinction entre notre réseau et Internet ou un autre réseau externe. Nous faisons cela en marquant les interfaces IP de notre routeur comme ip nat à l'intérieur ou ip nat à l'extérieur , d'accord?
Maintenant, rappelons-nous comment NAT est généralement implémenté: il maintient des tables spéciales qui contiennent des entrées sur les traductions. Et le point important est que ces entrées peuvent être créées de manière statique ou dynamique . Pour les entrées créées dynamiquement, la direction du trafic est importante - le trafic est-il initié de l'intérieur vers l'extérieur ou vice versa? Pour les entrées statiques, ce n'est pas le cas - elles sont symétriques . Les instructions de configuration NAT qui contiennent le mot clé statique créent des entrées statiques immédiatement après les avoir placées dans la configuration en cours d'exécution; ceux avec le mot clé dynamique surveillent le trafic intéressant et créent dynamiquement des entrées de traduction, qui finiront par expirer.
Nous pouvons déjà spéculer sur votre dernière question: pourquoi il n'y a pas d' option de destination extérieure ? ip nat à l'intérieur de la source statique crée une entrée NAT statique qui se traduit exactement comme vous l'avez décrit, mais cela inclut non seulement le trafic initié d'un côté particulier - les entrées NAT statiques sont symétriques. Donc, ip statique nat destination extérieur créerait une entrée statique pour traduire destination des adresses IP de trafic entrant dans votre réseau à partir de l' extérieur et la source des adresses IP pour le trafic allant de l' intérieur - mais c'est exactement ce que ip nat statique source à l' intérieurcommande fait! Il est donc tout simplement redondant d'avoir cette commande. La seule différence est que vous échangeriez la source avec l'adresse IP de destination lorsque vous utilisez l'une ou l'autre forme de la même commande.
En ce qui concerne votre première déclaration, "il y a trois combinaisons possibles de l'intérieur / extérieur / source / destination qui peuvent être configurées" - ce n'est pas tout à fait le cas. Le fait est que, d'une manière générale, les instructions de configuration NAT ne sont pas des «formules mathématiques» et doivent être considérées entièrement, et non comme construites logiquement à partir de mots clés indépendants. Ainsi, chaque "combinaison" présente une solution pour une tâche particulière, par exemple, ip nat dans la liste de destination est utilisé pour configurer l'équilibrage de charge TCP du serveur qui utilise un algorithme spécifique et ne fonctionne pas avec UDP. De plus, (dans les IOS modernes), il n'y a pas de commande ip nat dans la destination statique de destination - l'avez-vous réellement essayé avec l' option statique ?
Vous pouvez voir certains scénarios particuliers d'utilisation de NAT, y compris des exemples de configuration dans ce document Cisco: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_nat/configuration/12-2sx /nat-12-2sx-book/iadnat-addr-consv.html
Enfin, je voudrais mentionner que parfois le NAT n'est pas ce que vous voulez, par exemple, regardez ma réponse pour cette "question canonique": /server/55611/loopback-to-forwarded-public- adresse IP à partir d'un réseau local en épingle à cheveux-nat / 733532 # 733532
PS Dois-je entrer dans plus de détails?
la source