windows10gegner
Goto Top

Cisco IOS NAT64 Pool mit nur einer WAN-IP

Hallo zusammen!

Ich bin gerade dabei ein Testnetz für NAT64 aufzusetzen unter IOS 15.9(3)M7.

Ein Problem ist jedoch der Pool für die Ipv4-Adressen:
xxx(config)#nat64 v4 pool nat64-pool <WAN-IP> <WAN-IP>
%Pool nat64-pool prefix length 32 too large; should be no more than 30

Ich bekomme vom ISP nur eine statische IPv4, nicht mehrere. Für normales stateful NAT44 reicht das problemlos, hier meckert der. Er übernimmt aber die Option in den Pool und versucht diesen auch zu nutzen.
Auf dem Dialer0 ist die IP mit /32 eingetragen (wird per IPCP erfragt, ist aber statisch).

Dynamic Mapping Statistics
        access-list nat64-erlaubt pool nat64-pool refcount 0
        pool nat64-pool:
                start 82.139.xxx end 82.139.xxx #die gleiche IP
                total addresses 1, allocated 0 (0%)
                address exhaustion packet count 14

Er weigert sich jedoch, diese IP zu nutzen. Das Resultiert in einem ICMP administratively prohibited.
Gibt es hier eine Option, das Verhalten zu ändern?
Eine Übersetzung auf private Adressen will ich vermeiden, weil dann 2x NAT stattfindet, was eigentlich sinnfrei ist und mehr Ressourcen benötigen wird.

--
Gruß
Marco

Content-ID: 7393963463

Url: https://administrator.de/contentid/7393963463

Ausgedruckt am: 21.11.2024 um 13:11 Uhr

aqui
aqui 02.06.2023 um 10:07:38 Uhr
Goto Top
Das Cisco Dokument zu der Thematik kennst du?
https://www.cisco.com/c/en/us/support/docs/ip/network-address-translatio ...
Es sind etwas wenig Infos um zielgerichtet antworten zu können. face-sad
  • Vermutllich stateful NAT64? (oder doch stateless?)
  • Was ist dein Ziel? v6 Client auf v4 Host oder v4 Client auf v6 Host?
  • Die Interface Konfig wäre hilfreich
Windows10Gegner
Windows10Gegner 02.06.2023 um 11:18:02 Uhr
Goto Top
Ja, stateful NAT64. Ziel: VLAN nur mit IPv6, Erreichbarkeit von IPv4-Hosts über NAT64 mithilfe von DNS64.

interface Dialer0
 ip address negotiated
 ip access-group 100 in
 ip nat outside
 encapsulation ppp
 dialer pool 1
 dialer-group 1
 nat64 enable
 ipv6 address 2001:db8::/64 eui-64
 ipv6 address autoconfig default
 ipv6 enable
 ppp authentication pap callin
 ppp ipcp mask request
 ppp ipcp route default

interface Vlan2
 no ip address
 nat64 enable
 ipv6 address 2001:db8:2::1/64
 ipv6 enable
 ipv6 nd autoconfig prefix
 ipv6 nd ra dns server 2001:db8:1::20


nat64 prefix stateful 2001:db8:6464::/96
nat64 v4 pool nat64-pool <WAN-IP> <WAN-IP> #IP wie Dialer0
nat64 v6v4 list nat64-erlaubt pool nat64-pool overload

ipv6 access-list nat64-erlaubt
 permit ipv6 2001:db8::/48 any
 permit ipv6 FD00::/8 any
 permit ipv6 FE80::/10 any
 deny ipv6 any any

xxx#sh nat64 stat
NAT64 Statistics

Number of NAT64 enabled interfaces: 2

Number of packets translated by stateless NAT64:
        Packets translated (IPv4 -> IPv6): 0
        Packets translated (IPv6 -> IPv4): 0

Number of packets translated by stateful NAT64:
        Packets translated (IPv4 -> IPv6): 0
        Packets translated (IPv6 -> IPv4): 17

Number of packets translated by MAP-T:
        Packets translated (IPv4 -> IPv6): 0
        Packets translated (IPv6 -> IPv4): 0

Number of packets processed by MAP-E:
        Packets processed (IPv4 -> IPv6): 0
        Packets processed (IPv6 -> IPv4): 0

Global Statistics
Prefix: 64:FF9B::/96
        Packets translated (IPv4 -> IPv6): 0
        Packets translated (IPv6 -> IPv4): 0
        Packets dropped: 0
Prefix: 2001:db8:6464::/96
        Packets translated (IPv4 -> IPv6): 0
        Packets translated (IPv6 -> IPv4): 6
        Packets dropped: 2
Interface Statistics

Total active translations: 0(0 static, 0 dynamic,0 extended)
Active sessions: 0
Number of expired entries: 9

Number of packets:
CEF Translated: 17       CEF Punted packets: 19
Dropped: 36
Hits: 16        Misses: 0
Dynamic Mapping Statistics
        access-list nat64-erlaubt pool nat64-pool refcount 0
        pool nat64-pool:
                start xxx.196.13 end xxx.196.13
                total addresses 1, allocated 0 (0%)
               address exhaustion packet count 14
Limit Statistics
Siehe die vorletzte Zeile. Der Pool wird gar nicht erst genutzt, vermutlich weil der nur eine Adresse beinhaltet (/32).
aqui
aqui 02.06.2023 um 14:26:20 Uhr
Goto Top
Das ist sehr wahrscheinlich das Problem. Eine Pool IP kann nicht gleichzeitig eine aktive Interface IP sein.
Ggf. probierst du es einmal mit einer statischen Translation:
https://community.cisco.com/t5/networking-knowledge-base/ipv6-stateful-n ...
Windows10Gegner
Windows10Gegner 02.06.2023 um 14:52:42 Uhr
Goto Top
Wieso funktioniert das dann bei stateful NAT44?
Zudem hilft mir das nichts, denn ich brauche ja stateful NAT64 für den IPv4-Zugang.

Spannen ist auch:
xxx#show nat64 dynamic                    
NAT64 dynamic mapping:
        IPv6 access-list: nat64-erlaubt, pool: nat64-pool
          flags: OVERLOAD enabled, config-id: 3
          ACL: nat64-erlaubt presented
          Pool: nat64-pool has (100%) of addresses available for allocation
xxx#
Da ist wohl was frei für den Router, ist irgendwie komisch.
aqui
Lösung aqui 02.06.2023 aktualisiert um 15:01:39 Uhr
Goto Top
Wieso funktioniert das dann bei stateful NAT44?
Weil du da dann ohne Pooling genaugenommen PAT (overload) machst sofern du das meinst. Du kannst NAT44 ja auch mit einem Pool machen aber auch da darf der Pool dann nicht gleichzeitig eine aktive Interface Adresse sein.
https://www.cisco.com/c/en/us/support/docs/ip/network-address-translatio ...
Irgendwie auch verständlich, denn die Sessions werden dann ja direkt auf freie Pool Adressen umgesetzt. Das sind 2 völlig verschiedene Verfahren. Du darfst hier also nicht Äpfel mit Birnen vergleichen.
Windows10Gegner
Windows10Gegner 02.06.2023 um 15:34:29 Uhr
Goto Top
Was wäre dann eine gangbare Alternative, stateful NAT64 einzurichten, ohne ein zusätzliches Netz nur für den Pool beim Provider zu beantragen bzw. auf private Adressen zu übersetzen und dann nochmal normales NAT44/PAT zu machen?
aqui
aqui 02.06.2023 aktualisiert um 16:19:46 Uhr
Goto Top
So mit Bordmitteln wirst du vermutlich, wenn überhaupt, nur eine einzige Verbindung mit einem statischen Statement ala nat64 v6v4 static 2001:db8:2::100 10.0.0.100 hinbekommen.
Ohne eine 2te v4 oder ein /30er Subnetz für den Pool wirst du sehr wahrscheinlich nix. face-sad
Keine Chance für Dual Stack in VLAN 2?
Windows10Gegner
Windows10Gegner 02.06.2023 um 16:36:16 Uhr
Goto Top
Dual-Stack mit privaten IPv4 würde natürlich gehen, aber Ziel war ein NAT64, um einerseits das mal mit verschiedenen Geräten zu testen und andererseits die Adressierung im Netz etwas zu vereinfachen.
aqui
aqui 02.06.2023 um 19:57:49 Uhr
Goto Top
Du könntest das natürlich mit etwas zusätzlicher HW machen indem du einen RasPi oder Mikrotik ins Segment bringst, den das NAT64 machen lässt und die dann NATest.
Das ist aber von hinten durch die Brust... und nicht vergleichbar, denn du bleibst ja wieder am v4 PAT hängen und musst mit Port Forwarding rumfrickeln. Port Forwarding bedeutet dann limitieren auf Ports und einzelne Endgeräte. Also wieder Äpfel und Birnen...
Direktes NAT64 ist ja transparent, erfordert dann aber eben freie v4 IPs. face-sad