Marmara Üniversitesi nde IPv6 Deneyimi Bilişim Merkezi Ö.Tuğrul Boztoprak 6 Mayıs 2010 ISCTurkey IPv6 Çalıştayı
İçerik Ne Değişiyor? IPv6 adresleme IPv6 yönlendirme IPv6 servisleri Güvenlik değerlendirmesi
Ne Değişiyor? En çok etkilenenler: MIN MAX Son kullanıcı < ağ yöneticisi < ağ (cihaz-yazılım) tasarımcısı Adresleme: 32 bit 128 bit NAT yok! IPSec standartlaşıyor; IPSec desteği zorunlu Adres türleri Broadcasting (genel yayın) yerine birçok multicast (çoklu yayın) Stateless Auto-Configuration Paket başlık yapısı değişiyor, daha sade bir hal alıyor ICMPv6 (Neighbour Discovery) Fragmantasyon yok
IPv6 Protokolü
IPv6 Adresleme IPv4 32 bit, 2 32 toplam adres 4.2 x 10 9 adres ddd. ddd. ddd. ddd 8 + 8 + 8 + 8 = 32 bit IPv6 128 bit, 2 128 toplam adres 3.4 x10 38 xx.xx.xx.xx adres XXXX : XXXX : XXXX : XXXX : XXXX : XXXX : XXXX : XXXX 16 + 16 + 16 + = 128 bit Dünya üzerindeki her M 2 ye 655.570.793.348.866.943.898.599 ~= 6.5 x 10 23 IP
IPv6 Adresleme 2001:98:ab::1 :: bu arada ne kadar bit olması gerekiyorsa o kadar 0 (sıfır) anlamına gelir. 2001:0098:00AB:0000:0000:0000:0000:0001 2001:98:AB:0:0:0:0:1 2001:98:AB::1 ::1 0:0:0:0:0:0:0:1 0000:0000:0000:0000:0000:0000:0000:0001 :: bir adres içerisinde yalnızca bir defa kullanılabilir.
Adres Türleri Unicast Global 2xxx, 3xxx Link-Local fe8x, fe9x 6to4 adresler 2002 Loopback [::1] Multicast-çoklu yayın ffxx
Otomatik Yapılandırma (Stateless Auto-configuration) Üretilen Adres Subnet prefix (64 bit) Auto-configured ID (64 bit) FE80:0000:0000:0000 0219:DBFF:FE9F:5D0D
Auto-conf EUI-64 MAC: 00:01:23:45:67:89 fe80::1:23ff:fe45:67:89 Randomized Interface ID: mac adresinde rastgele türetilen netsh interface ipv6 set global randomizeidentifiers=disabled Privacy: Değişen interface ID adresi (windows server 2008 de varsayılan olarak devredışı) netsh interface ipv6 set privacy=enabled FreeBSD de bu özellik varsayılan olarak devredışı, açmak için: sysctl net.inet6.ip6.use_tempaddr=1
ICMPv6 Neighbor Discovery Protocol NS: Neighbor Solicitation NA: Neighbor Advertisement RS: Router Solicitation RA: Router Advertisement Duplicate Address Detection
RA Yönlendirici Yayını
IPv6 Adresleme Yapısı 3fff:abcd:1234:: /48 (bitmask) FFFF:FFFF:FFFF:0:0:0:0:0 (hexmask) 255.255.255.255.255.255.0.0.0.0.0.0.0.0.0.0 (onluk netmask) ^ böyle bir şey yok 3FFF:ABCD:1234:XXXX::/64 XXXX: 65536 adet alt ağ oluşturulabilir. Her bir alt ağda 18.446.744.073.709.551.616 adet IP
IPv6 Adresleme Planı 64 bitlik, 80 bitlik, hatta p2p bağlantılar için 126 bitlik altağ maskeli bloklar; 127 bitlik mask lar da kullanılabilir, ancak RFC 3627! 80 bitlik bloklarda auto-conf çalışmıyor, RA yayını yapılmıyor IPv4 adresleri ile tutarlı adres şeması Örnek: 192.168.2.0 bloğu için 3FFF:ABCD:1234:A802::/64 (0xA8=168d; 0x02=2d)
IPv6 Yönlendirme Yönlendiricide IPv6 Desteği yoksa tünelleme IPv6 Ağı IPv4 IPv6 Ağı tünel IPv4 başlıklı IPv6 paketleri tüneli V6 V4 V6 V6 Tünel Yönlendirici TünelYönlendirici
IPv6 Tünel Tam otomatik (6to4, Teredo) netsh interface ipv6 6to4 set relay 192.88.99.1 netsh interface ipv6 set teredo client Yarı otomatik (Sixxs, Tunnelbroker-Hurricane Electric) hesap açılır, web arayüz yapılandırma, belli bir süre kullanılmadığında tünel otomatik kalkar. Manual Elle Yapılandırma tünel varlığının garantisi kontrollü
Cisco'da Tünel Yapılandırması
FreeBSD Gateway rc.conf (tünel) ipv6_enable="yes ipv6_gateway_enable="yes" hostname="rtmar.marmara.edu.tr" keymap="tr.iso9.q" keyrate="fast" moused_enable="yes" moused_flags="-3" sshd_enable="yes" ifconfig_em1="inet 193.255.0.6 netmask 255.255.255.252" defaultrouter="193.255.0.5 gif_interfaces="gif0" ipv6_network_interfaces="gif0 em0 #################### gifconfig_gif0="193.255.0.6 193.255.0.249" ipv6_ifconfig_gif0="2001:ffff:1::2 prefixlen 126" ipv6_defaultrouter="2001:ffff:1::1" #################### ipv6_static_routes="dmz bim" ipv6_route_dmz="2001:ffff:abcd:1:: -prefixlen 64 2001:ffff:abcd::1" ipv6_route_bim="2001:ffff:abcd:2:: -prefixlen 64 2001:ffff:abcd::1 ############# Packet Filter ############# pf_enable="yes" pf_rules="/etc/pf.conf" pflog_enable="yes"
Firewall: Packet Filter pf.conf (tünel)
FreeBSD Gateway rc.conf (tünelsiz doğrudan dot1q) defaultrouter="193.255.92.1" hostname="rtmar.marmara.edu.tr" ifconfig_fxp0="inet 192.168.2.33 netmask 255.255.255.192" inetd_enable="yes" ipv6_enable="yes" keymap="tr.iso9.q" moused_enable="yes" sshd_enable="yes" ipv6_gateway_enable="yes" ipv6_defaultrouter="2001:ffff:1::1 cloned_interfaces="vlan9 vlan11 vlan130 vlan140 vlan211" ## Sanal Arayuz Trunk em0 ## ifconfig_em0="up" #iceri bakan trunk arayuz ifconfig_vlan9="vlan 9 vlandev em0" ifconfig_vlan11="vlan 11 vlandev em0" ifconfig_vlan130="vlan 130 vlandev em0" ifconfig_vlan140="vlan 140 vlandev em0" ipv6_ifconfig_vlan9="2001:ffff:abcd:1::1 prefixlen 64" ipv6_ifconfig_vlan11="2001:ffff:abcd:2::1 prefixlen 64" ipv6_ifconfig_vlan130="2001:ffff:abcd:3::1 prefixlen 64" ipv6_ifconfig_vlan140="2001:ffff:abcd:4::1 prefixlen 64" ## Sanal Arayuz Trunk em1 ## ifconfig_em1="up" #disari bakan trunk arayuz ifconfig_vlan211="vlan 211 vlandev em1" ipv6_ifconfig_vlan211="2001:ffff:1::2 prefixlen 126" ### Router Advertisement acik" rtadvd_enable="yes" rtadvd_interfaces="vlan9 vlan11 vlan140" ############# Packet Filter ############# pf_enable="yes" pf_rules="/etc/pf.conf" pflog_enable="yes" #BIM # rektorluk # DMZ #OBM
Packet Filter Güvenlik Duvarı ########### ARAYUZLER ##################### ext_if="vlan211" # disariya bakan arayuz rek_if="vlan11" obm_if="vlan140" dmz_if="vlan130" bim_if="vlan9 ########### TANIMLAMALAR ###################### block in inet6 all pass out inet6 all keep state pf.conf pass in on $bim_if inet6 proto icmp6 all icmp6-type { $tiex, $ecreq, $ecres, $RS, $NS, $NA } pass in on $obm_if inet6 proto icmp6 all icmp6-type { $tiex, $ecreq, $ecres, $RS, $NS, $NA } pass in on $dmz_if inet6 proto icmp6 all icmp6-type { $tiex, $ecreq, $ecres, $RS, $NS, $NA } pass in on $rek_if inet6 proto icmp6 all icmp6-type { $tiex, $ecreq, $ecres, $RS, $NS, $NA } pass in on $ext_if inet6 proto icmp6 all icmp6-type { $tiex, $ecres, $NS, $NA } pass in on $ext_if inet6 proto icmp6 from $ulaknet to $IPv6_uc icmp6-type { $ecreq } pass in on $dmz_if inet6 proto { tcp, udp } from $DMZ to any pass in on $bim_if inet6 proto { tcp, udp } from $BIM to any pass in on $obm_if inet6 proto { tcp, udp } from $OBM to any pass in on $rek_if inet6 proto { tcp, udp } from $REK to any pass in on $ext_if inet6 proto { tcp, udp } from any to $nameserver port domain pass in on $ext_if inet6 proto tcp from any to $webserver port $webports
RA Servisi /etc/rtadvd.conf vlan140:\ :addrs#1:addr="2001:ffff:abcd:11::":prefixlen#64:tc=ether: vlan9:\ :addrs#1:addr="2001:ffff:abcd:10::":prefixlen#64:tc=ether: vlan11:\ :addrs#1:addr="2001:ffff:abcd:21::":prefixlen#64:tc=ether:
servislerin IPv6 desteği Dhcp Sunucu: ISC 4.x; Dibbler server, Server 2008 Dhcp istemci: Dibbler client Web sunucu: Apache 2.0, DNS: Bind 9.x SMTP Qmail IPv6 Patch (http://www.brandonturner.net/blog/2009/08/qmail -ipv6-jms1/) Netflow 9 (http://en.wikipedia.org/wiki/netflow) Smokeping: fping, fping6, echohttp
Smokeping ve MRTG
Smokeping www.ipv6.org.tr ipv6 üzerinden http erişimi:
ISC-DHCPv6 4.1.1 Ağ geçidi atama? host-identifier option dhcp6.client-id DUID - DHCP Unique Identifier İstemci sistemi tanımlar IAID - Identity Association Identifier İstemci sistemdeki arayüzü tanımlar (eth)
DHCPv6
ISC DHCP Yapılandırması default-lease-time 600; max-lease-time 7200; log-facility local7; subnet6 2001:db8:0:1::/64 { # Range for clients range6 2001:db8:0:1::129 2001:db8:0:1::254; # Additional options option dhcp6.name-servers fec0:0:0:1::1; option dhcp6.domain-search "domain.example"; # Prefix range for delegation to sub-routers prefix6 2001:db8:0:100:: 2001:db8:0:f00:: /56; # Example for a fixed host address host specialclient { host-identifier option dhcp6.client-id 00:01:00:01:4a:1f:ba:e3:60:b9:1f:01:23:45; fixed-address6 2001:db8:0:1::127; } } http://tldp.org/howto/linux+ipv6-howto/hints-daemons-isc-dhcp.html
DHCPv6 Süreçleri Dhcp-request # tcpdump -ni vlan11 ip6 tcpdump: WARNING: vlan11: no IPv4 address assigned tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on vlan11, link-type EN10MB (Ethernet), capture size 96 bytes 12:54:33.323390 IP6 fe80::207:e9ff:fe12:5452.546 > ff02::1:2.547: dhcp6 solicit 12:54:33.324342 IP6 fe80::2b0:d0ff:fe78:fd34.547 > fe80::207:e9ff:fe12:5452.546: dhcp6 advertise 12:54:35.378816 IP6 fe80::207:e9ff:fe12:5452.546 > ff02::1:2.547: dhcp6 request 12:54:35.379847 IP6 fe80::2b0:d0ff:fe78:fd34.547 > fe80::207:e9ff:fe12:5452.546: dhcp6 reply 12:54:35.386924 IP6 fe80::207:e9ff:fe12:5452 > ff02::16: HBH ICMP6, multicast listener report v2, 2 group record(s), length 48 12:54:35.794898 IP6 :: > ff02::1:ff00:13: ICMP6, neighbor solicitation, who has 2001:ffff:abcd:21::13, length 24 (DAD) DHCP-Release 12:52:35.504171 IP6 fe80::207:e9ff:fe12:5452.546 > ff02::1:2.547: dhcp6 release 12:52:35.505451 IP6 fe80::2b0:d0ff:fe78:fd34.547 > fe80::207:e9ff:fe12:5452.546: dhcp6 reply
DNS Sunucusu 1 - named.conf options {. listen-on-v6 { any; }; allow-query { internal-net; };. }; acl internal-net { 127.0.0.1; 192.168.0.0/16; ::1/128; 2001:ffff:abcd::/48; }; zone d.c.b.a.f.f.f.f.1.0.0.2.ip6.arpa" { type master; file ipv6.rev"; }
DNS Sunucusu - 2 İleri ve Ters sorgu kayıtları ns.marmara.edu.tr ftpv6.tr.freebsd.org www6.marmara.edu.tr monitor6.marmara.edu.tr proxy6.marmara.edu.tr AAAA 2001:ffff:abcd:aabb::2 AAAA 2001:ffff:abcd:aabb::25 AAAA 2001:ffff:abcd:aabb::7 AAAA 2001:ffff:abcd:aabb::40 AAAA 2001:ffff:abcd:aabb::1883 $ORIGIN d.c.b.a.f.f.f.f.1.0.0.2.ip6.arpa. 2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.b.b.a.a IN PTR ns.marmara.edu.tr. 5.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.b.b.a.a IN PTR ftpv6.marmara.edu.tr. 4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.b.b.a.a IN PTR www6.marmara.edu.tr. 0.4.0.0.0.0.0.0.0.0.0.0.0.0.0.0.b.b.a.a IN PTR monitor6.marmara.edu.tr. 3.8.8.1.0.0.0.0.0.0.0.0.0.0.0.0.b.b.a.a IN PTR proxy6.marmara.edu.tr.
Güvenlik ip dhcp snooping, ip arp inspection, ip verify source - Cisco henüz desteğini vermiyor - HP H3C de olduğu söyleniyor: ipv6 dhcp snooping enable ipv6 nd detection enable ip check source ipv6 ip-address mac-address RA yayınları : ipv6 ra snooping? 41 tünel protokolü, Teredo servis UDP 3544 The hackers choice-thc IPv6 Attack Toolkit http://freeworld.thc.org/thc-ipv6/
- DAD DoS - DAD New Address - Smurf Attack - Redirect IPv6 Saldırı Örnekleri
Redirect Sadece yönlendiriciler redirect yapabilir, ICMP Redirect type = 137 istekleri son kullanıcılarda denetlenmeli Sonuç = MitM
Sonuç IPv4 e göre güvenlik anlamında çarpıcı bir üstünlük görünmüyor. Ancak IPv4 ten geri kaldığı da söylenemez. Geri sayım devam ediyor; zorunlu olduğunda zaten hazırım?
Kaynaklar http://docs.sun.com/app/docs/doc/816-4554/gefli?a=view http://technet.microsoft.com/en-us/magazine/2007.08.cableguy.aspx Sorular? http://ipv6int.net/systems/freebsd-ipv6.html http://www.isc.org/software/dhcp RFC Dokümanları ve man pages Bilişim Merkezi çalışmaları Teşekkürler