Palo Alto Güvenlik Duvarlarında NAT64 Nasıl Yapılandırılır?

Bu yazımda, PAN-OS 5.0, ve PAN-OS 6.0 da NAT64’ün nasıl yapılandıralacağını açıklamaya çalışacağım.

NAT64: IPv6 adresine sahip bilgisayarlar ile IPv4 bilgisayarlarının iletişim kurmasını sağlar. RFC 6052 de belirtildiği gibi NAT64; Bir IPv4 hedef için 32 bit IPv4 adresini 64:ff9b::/n olarak bilinen IPv6 ile prefix birleştirerek NAT64 eşdeğer adresi oluşturulmaktadır. Yani yerel ağımızda IPv6 adresleri kullanırken IPv4 kullanılan internete çıkarken NAT dönüşümünün yapılmasıdır.

IPv6 istemcisinin iletişim kurabilmesi için A kayıtlarından AAAA kayıtlarının sentezlendiği bir DNS64 sunucusuna ihtiyacı vardır. DNS64 sunucusu hedef adresi için IPv4 araması yapmak ve müşteriye eşdeğer bir IPv6 adresi (AAAA) dönmekle sorumludur. İstemci A kaydını alıp daha sonra bunu AAAA kaydına dönüştürerek paketi isteği yapan cihaza gönderir:

  • Src IP = Yapılandırılmış IPv6 adresi
  • Dst IP = DNS64 sunucusu tarafından cevap dönülen IPv4 gömülü IPv6 adresi

Güvenlik duvarı paketi aldığında, IPv6 olan Src IP ve Dst IP adreslerini IPv4 adreslerine çevrilir.

Not: NAT64 özelliği iyi bilinen prefixi ve belirli bir ağ prefixini kapsayan RFC6052 uyumlu prefix’i destekler. (Örneğin: Müşterinin tamamı veya geneli adres prefixinin bir parçasıdır). Bu belge 96 bit ile Well-Known Prefix senaryosunu açıklamaktadır. Bu belirli bir ağ prefixi için geçerli olabilir.

Aşağıdaki tablo IPv6 dan IPv4’e karşılık gelen eşleme kuraldır. Eşleme prefix uzunluklarına göre farklılık gösterir:

Palo_Alto_NAT64_01

Nasıl Yapılır?

Aşağıdaki ağ topolojisini yapılandırma örneğini olarak kullanabiliriz:

Palo_Alto_NAT64_02

  1. Bu kurulum için Bind 9, DNS64 sunucusu olarak kullanılmıştır. Aşağıdaki yapılandırmanın /etc/bind/named.conf.options dosyasına eklenmesi gerekir.
    options {
    64:ff9b::/96 {
    };
    listen-on-v6 { any; };
    allow-query { any; };
    };
  2. 64:ff9b::/96 ağını ‘Untrust’ zone olarak tanımlanan interface’e atayın.
  3. Aşağıdaki gibi NAT64 kuralı tanımlayınız:
    Palo_Alto_NAT64_03
  4. Istemci makina üzerinde, bir tarayıcı açın ve web sitesine gitmek için deneme yapınız. Ben örnek sayfa olarak www.w3schools.com kullandım.
    • www.w3schools.com web sitesi için 66.29.212.73 IP adresini çözüyor.
    • Bilgisayar www.w3schools.com hostname için bir AAAA kaydı araması yaptığında, DNS64 sunucusu 64:ff9b::421d:d449 IP adresi olarak cevap döner. ( 66.29.212.73 eşdeğer hex değeri 421d:d449 ‘dir)

Doğrulama

DNS ve aşağıdaki web browsing oturumları için güvenlik duvarı üzerindeki oturumları kontrol ediniz:

DNS oturumu:

        c2s flow:
                source:      2005:db4:40:0:0:0:0:31 [trust-L3]
                dst:         2005:db4:31:0:0:0:0:200
                proto:       17
                sport:       58674           dport:      53
                state:       ACTIVE          type:       FLOW
                src user:    unknown
                dst user:    unknown

        s2c flow:
                source:      2005:db4:31:0:0:0:0:200 [untrust-L3]
                dst:         2005:db4:40:0:0:0:0:31
                proto:       17
                sport:       53              dport:      58674
                state:       ACTIVE          type:       FLOW
                src user:    unknown
                dst user:    unknown

        start time                    : Wed Nov 13 13:04:31 2013
        timeout                       : 30 sec
        time to live                  : 15 sec
        total byte count(c2s)         : 100
        total byte count(s2c)         : 524
        layer7 packet count(c2s)      : 1
        layer7 packet count(s2c)      : 1
        vsys                          : vsys1
        application                   : dns
        rule                          : allow_all
        session to be logged at end   : True
        session in session ager       : True
        session synced from HA peer   : False
        layer7 processing             : enabled
        URL filtering enabled         : False
        session via syn-cookies       : False
        session terminated on host    : False
        session traverses tunnel      : False
        captive portal session        : False
        ingress interface             : ethernet1/4
        egress interface              : ethernet1/3
        session QoS rule              : N/A (class 4)

Web Browsing oturumu:

c2s flow:       ( Notice IPv6 addresses in c2s flow )
source:      2005:db4:40:0:0:0:0:31 [trust-L3]
dst:         64:ff9b:0:0:0:0:421d:d449
proto:       6
sport:       49381           dport:      80
state:       ACTIVE          type:       FLOW
src user:    unknown
dst user:    unknown

s2c flow:      (Notice IPv4 addresses in s2c flow )
source:      66.29.212.73 [untrust-L3]            dst:     10.66.24.80
proto:       6
sport:       80              dport:      65144
state:       ACTIVE          type:       FLOW
src user:    unknown
dst user:    unknown

start time                    : Wed Nov 13 13:04:31 2013
timeout                       : 3600 sec
time to live                  : 3568 sec
total byte count(c2s)         : 758
total byte count(s2c)         : 5439
layer7 packet count(c2s)      : 6
layer7 packet count(s2c)      : 6
vsys                          : vsys1
application                   : web-browsing
rule                          : allow_all
session to be logged at end   : True
session in session ager       : True
session synced from HA peer   : False
address/port translation      : source + destination
nat-rule                      : nat6_4(vsys1)     <<<< NAT64 kuralı uygulandı
layer7 processing             : enabled
URL filtering enabled         : False
session via syn-cookies       : False
session terminated on host    : False
session traverses tunnel      : False
captive portal session        : False
ingress interface             : ethernet1/4
egress interface              : ethernet1/3
session QoS rule              : N/A (class 4)

Note: IPv6 güvenlik duvarı özelliği Device > Setup > Session > Ipv6 Firewalling kısmından aktive edilmesi gerekmektedir.

Bir Cevap Yazın