Ouvrez une gamme de ports TCP dans Cisco IOS NAT

13
ip nat inside source static 192.168.1.10 10.10.10.9 route-map RANGE
!
route-map RANGE permit 100
  match ip address 102
!
access-list 102 permit tcp host 192.168.1.10 range 3000 3389 any

La configuration ne semble pas fonctionner .. crée simplement un NAT statique un à un ...

Quelqu'un sait-il comment ouvrir une plage de ports?

J'ai plusieurs adresses IP externes et j'aimerais ouvrir les mêmes ports pour plusieurs hôtes à l'aide de plusieurs adresses IP externes et, à cause de cela, la méthode rotative ne fonctionne pas.

Luna
la source
n'oubliez pas de vérifier également les ACL ou les règles de pare-feu sur vos interfaces externes!
knotseh
Une réponse vous a-t-elle aidé? si c'est le cas, vous devez accepter la réponse afin que la question ne continue pas d'apparaître indéfiniment, à la recherche d'une réponse. Alternativement, vous pouvez fournir et accepter votre propre réponse.
Ron Maupin

Réponses:

9

(ÉDITER)

Il semble que l'intérieur-> extérieur fonctionne comme prévu, comme on le voit dans la réponse ci-dessous, mais l'extérieur-> intérieur ne le fait pas en fait, il permet tout, comme OP l'a suggéré.

En ajoutant 'réversible' dans la ligne NAT, cela commence à honorer la route-map pour l'extérieur-> l'intérieur, malheureusement cela ne semble pas fonctionner avec les ports:

  1. permettre ip tout hôte 194.100.7.226 fonctionne
  2. permettre à TCP toutes les œuvres
  3. permettre tcp tout tout eq 80 pas de correspondance, ne fonctionne pas
  4. permet tcp any eq 80 any match, ne fonctionne pas
  5. autoriser tcp toute correspondance de l'hôte eq 80 194.100.7.226 , ne fonctionne pas
  6. permettre tcp tout hôte eq 0 194.100.7.226 fonctionne

À '194.100.7.226' je fais 'telnet 91.198.120.222 80', c'est ma source est 194.100.7.226: la destination éphémère est 91.198.120.222:80. Comme l'exemple # 1 fonctionne, nous pouvons conclure que réversible «inverse» réellement l'ACL, de sorte qu'il fonctionne de la même manière dans les deux sens, ce qui est logique.

Lorsque la connexion correspond, mais ne fonctionne pas, en refusant toute ligne d'entrée de journal, j'obtiens ceci:

7 juillet 07: 58: 59.118 UTC:% SEC-6-IPACCESSLOGP: liste MOO refusée tcp 91.198.120.2 (0) (Tunnel101) -> 194.100.7.226 (0), 1 paquet

Il semble donc vraiment que le type de protocole L4 soit transporté, mais les ports ne sont pas transportés pendant l'inversion NAT. Donc les gammes extérieur-> intérieur ne fonctionnent pas.


Comme suggéré dans la question Gamme de ports UDP vers l'avant Cisco 867, cela fonctionne pour l'extérieur-> l'intérieur

ip nat pool MOO 91.198.120.2 91.198.120.2 prefix-length 30 type rotary
ip nat inside destination list MOO pool MOO
ip access-list extended MOO
 permit tcp any any range 22 100
 deny   ip any any log-input

C'est un peu ghetto, je pense, car vous n'avez pas un bon contrôle sur l'IP externe. Le pool est l'IP interne, l'IP externe est le routeur hors IP.


Réponse originale de l'intérieur-> extérieur travaillant avec les ports:

ip nat inside source static 91.198.120.2 91.198.120.222 route-map MOO
!
ip access-list extended MOO
 permit icmp any any
 permit tcp any any range 22 telnet
!
route-map MOO permit 100
 match ip address MOO
!
route-map MOO deny 200
!

@ 91.198.120.2 Je fais:

  • hôte de test telnet 22
  • hôte de test telnet 23
  • telnet testhost 24

Chez testhost, je peux observer:

1   0.000000 91.198.120.222 -> 194.100.7.226 TCP 74 50925 > ssh [SYN] Seq=0 Win=14600 Len=0 MSS=1350 SACK_PERM=1 TSval=7995067 TSecr=0 WS=128

2   9.838471 91.198.120.222 -> 194.100.7.226 TCP 74 41586 > telnet [SYN] Seq=0 Win=14600 Len=0 MSS=1350 SACK_PERM=1 TSval=7997586 TSecr=0 WS=128

5  16.773181 91.198.120.2 -> 194.100.7.226 TCP 74 53307 > 24 [SYN] Seq=0 Win=14600 Len=0 MSS=1350 SACK_PERM=1 TSval=7999327 TSecr=0 WS=128

Testé sur:

bu.ip.fi#sh ver | i ^Cisco
Cisco IOS Software, C880 Software (C880DATA-UNIVERSALK9-M), Version 15.1(2)T5, RELEASE SOFTWARE (fc1)
Cisco 881G (MPC8300) processor (revision 1.0) with 236544K/25600K bytes of memory.
bu.ip.fi#
ytti
la source
1

donc pour résoudre mon problème ce que je faisais était

ip nat inside source static 91.198.120.2 91.198.120.222 route-map MOO
!
ip access-list extended MOO
 permit icmp any any
 permit tcp any any range 22 telnet
!
route-map MOO permit 100
 match ip address MOO
!

et j'ai également inclus une liste d'accès 199 sur mon interface externe

access-list 199 permit tcp any host external_host eq 3389
access-list 199 deny   ip any host external_host

cette liste d'accès prend en charge le problème de tous les ports.

luna
la source
J'étais inquiet OP voulait diriger n1-n2 externe vers host1 et n3-n4 externe vers host2, ce qui empêcherait ACL en externe. Je me demande si les ports L4 DEVRAIENT fonctionner dans l'exemple ci-dessus, si c'est un bug ou un comportement prévu, d'autant plus qu'il n'est clairement pas ACL `` standard '', car il différencie UDP et TCP, seuls les ports sont `` 0 ''.
ytti
comment utiliseriez-vous la carte d'itinéraire pour mapper le port 3389 pour dire 90001
luna