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:
Nasıl Yapılır?
Aşağıdaki ağ topolojisini yapılandırma örneğini olarak kullanabiliriz:
- 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; };
}; - 64:ff9b::/96 ağını ‘Untrust’ zone olarak tanımlanan interface’e atayın.
- Aşağıdaki gibi NAT64 kuralı tanımlayınız:
- 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.