SlideShare a Scribd company logo
1 of 63
Download to read offline
IPv6



             : IAjapan Java




       Jun 11th, 2011 - OSC 2011 Hokkaido
•          IPv6

•   IPv4

•   IPv6

•   Web           IPv6




                    Jun 11th, 2011 - OSC 2011 Hokkaido
Jun 11th, 2011 - OSC 2011 Hokkaido
•         :        (                    )

•   HN:

•         : Web

•         :

•   Twitter: @nipotan
•   Facebook: http://facebook.com/nipotan
•   Web: http://nipotan.com/
•                  : Perl



                                 Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6



 Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6
•       IPv6                            1

    •   http://blog.livedoor.jp/nipotan/archives/51195204.html




                                    Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6
•               IPv6

    •  NO
•   IPv6

    •   2008     12    livedoor     IPv6

            EDGE Co.Lab v6   http://labs.edge.jp/colabv6/

        •
            •   IPv6



                                   Jun 11th, 2011 - OSC 2011 Hokkaido
livedoor         IPv6
 •   IPv6@2ch
     → http://ipv6.2ch.net/
     •IPv6

 •   fixdap
     → http://fixdap.com/
     • EDGE Co.Lab v6

     •   IPv6                   IPv6

 •   IRCnet       IRC

     •   WIDE                 IRCnet

                                Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6
 •
     •   IPv6


 •
 •
     •



                Jun 11th, 2011 - OSC 2011 Hokkaido
•   APNIC 27 (Fab 2009 - Manila, Philippnes)
    • http://meetings.apnic.net/27/program/ipv6-in-3d
    • http://slidesha.re/nipotan-apnic27




                                  Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6         2           …
•
•
•
•

    IPv6



           Jun 11th, 2011 - OSC 2011 Hokkaido
APNIC            IPv6
•
•       IPv6

•




               Jun 11th, 2011 - OSC 2011 Hokkaido
vs IPv6
•
•
•           L7

    •   IP (Internet Protocol)
        →




                                 Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6               …
 •            IPv6 Ready!

 •                IPv6 Ready!

     •   IP                 OK

     •
         •
 •
     •
     •
                   Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4



       Jun 11th, 2011 - OSC 2011 Hokkaido
2011   4   15




                IPv4



                       Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4
 •   32bit
 •      43

     •   4,294,967,296

 •
 •




                         Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4
                               IANA (Internet Assigned Numbers Authority)
 IR (Internet Registry)
    RIR (Regional Internet Registry)
           ARIN                    RIPE               LACNIC                      AfriNIC                      APNIC
        (American Registry
      for Internet Numbers)        NCC               (Latin American and
                                                      Caribbean Internet
                                                                                (African Network
                                                                               Information Centre)
                                                                                                           (Asia-Pacific Network
                                                                                                            Information Centre)
                                  (Réseaux IP         Address Registry)
                              Européens Network
                              Coordination Centre)




    NIR (National Internet Registry)                       JPNIC
                                                          (Japan Network
                                                                               KRNIC
                                                                               (Korea Network
                                                                                                     TWNIC
                                                                                                     (Taiwan Network       etc...
                                                       Information Center)   Information Center)   Information Center)




    LIR (Local Internet Registry)                                                ISP               IDC                   etc...


                                                     End-users

                                                                             Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4
•   2011-01-31 IANA
    → RIR

•   2011-04-15 APNIC
    → NIR

•   2011-04-15 JPNIC

    •   JPNIC          APNIC
        → LIR



                       Jun 11th, 2011 - OSC 2011 Hokkaido
•          LIR
•                    ISP
    •            NAT (ISP Shared Address)
    •
•
•   LIR
    •
•   IPv6
    •
                           Jun 11th, 2011 - OSC 2011 Hokkaido
LIR          IPv4
 •
     •
     •   IPv6

         •
 •
     •
     •
     •   IPv6


                    Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6
•
•             IPv6

    •
    •
    •   IDC
    •
    •
•             IPv6


                     Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6                  IPv4
 •
     •   IPv4

     •                       IPv6

     •   IPv4 (NAT)

         •
         •
 •                       /          IPv6




                                    Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6



       Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6
 •   128bit
 •      340

     •   340,282,366,920,938,463,374,607,431,768,211,456

     •   IPv4              8

 •
 •   NAT




                                   Jun 11th, 2011 - OSC 2011 Hokkaido
IP
 •   IPv4

     •   32bit   8bit               10

     •                  .(    )

 11001011 00000000 01110001 00000001


                        203.0.113.1




                                  Jun 11th, 2011 - OSC 2011 Hokkaido
IP
 •     IPv6

      •   128bit      16bit                       16

      •                       :(        )
     0010000000000001 0000110110111000 0000101110101101 1111101011001110
     0000000000000000 0000000000000000 0000000000000000 1101111010101101

              2001:0db8:0bad:face:0000:0000:0000:dead
                                        16               0
                   2001:db8:bad:face:0:0:0:dead
                                                         0   ::
                      2001:db8:bad:face::dead




                                             Jun 11th, 2011 - OSC 2011 Hokkaido
[                ]                        IP
    •                                                IP

        •                           example.com

    •   IPv4
        •  RFC 5735 - Special Use IPv4 Addresses
            •192.0.2.0/24 #TEST-NET-1
            •198.51.100.0/24 # TEST-NET-2
            •203.0.113.0/24 # TEST-NET-3
    •   IPv6
        •  RFC 3849 - IPv6 Address Prefix Reserved for
           Documentation

            •   2001:db8::/32
                                     Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6
•   IPv4

    •          96bit     0           32bit       IPv4

    •   IPv4                                     10

        •   ::203.0.113.1
•   IPv4

    •          80bit     0   16bit      0xffff          32 bit    IPv4


        •   ::ffff:203.0.113.1



                                         Jun 11th, 2011 - OSC 2011 Hokkaido
IP
 •   IPv4 URL


                     IP
            http://203.0.113.1:8080/

       IP




                          Jun 11th, 2011 - OSC 2011 Hokkaido
IP
 •   IPv6 URL

                   IP
 http://2001:db8:bad:face::dead:8080/
                        RFC 3989
                        Uniform Resource Identifier (URI):
                        Generic Syntax

http://[2001:db8:bad:face::dead]:8080/
      IPv6      (IP-literal)       [     ]




                            Jun 11th, 2011 - OSC 2011 Hokkaido
IP
 •   IPv6      URL

 •
     •   RFC 5952 - A Recommendation for IPv6 Address Text
         Representation

         •   6. Notes on Combining IPv6 Addresses with Port
             Numbers




                                     Jun 11th, 2011 - OSC 2011 Hokkaido
Web
      IPv6



             Jun 11th, 2011 - OSC 2011 Hokkaido
•                PC                                   IPv6



User - IPv6 OK                   IDC - IPv6 OK
                      Internet


 PC




                                 Jun 11th, 2011 - OSC 2011 Hokkaido
•                IPv6

    •                              Proxy                   IPv6

User - IPv6 NG                           IDC - IPv6 OK
                     Internet
                   IPv4           IPv6

                          Proxy
 PC




                                         Jun 11th, 2011 - OSC 2011 Hokkaido
•   HTTP Proxy     IPv6


        HTTP Proxy            IPv6

           Squid                  
    Apache + mod_proxy            
         DeleGate                 

                          Jun 11th, 2011 - OSC 2011 Hokkaido
SSL                 ID (       )
 •
 •
     •
     •                     1

 •    IP

     •     IPv4   / IPv6

     •

                                   Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6                  DNS         	

 •   IPv6         AAAA (                A)

 •   DNS

 •   EDNS0

     •                      (512 Bytes)

 •   IPv6

     •   IPv6   DNS




                            Jun 11th, 2011 - OSC 2011 Hokkaido
IPv6                DNS          	

 •       DNS        IPv6


       DNS Server   AAAA            IPv6
                           EDNS0 transport

         BIND                            
         NSD                             
         djbdns                         
                                        * 3rd party patch




                           Jun 11th, 2011 - OSC 2011 Hokkaido
MTA (                  )        IPv6
 •
     •   SMTP       IPv6

         •
         •
     •   MX                                 AAAA

     % host -t MX example.com
     example.com mail is handled by 0 mail.example.com.
     % host -t AAAA mail.example.com
     mail.example.com has IPv6 address 2001:db8::c00:ffee




                                          Jun 11th, 2011 - OSC 2011 Hokkaido
MTA (          )       IPv6
 •      MTA    IPv6


               MTA                IPv6

              sendmail              
              postfix                
               qmail                
                                     * 3rd party patch




                              Jun 11th, 2011 - OSC 2011 Hokkaido
•                                            IPv6

•                               ICMPv6

    •   ICMP (IPv4)

•   ping traceroute          IPv6

    •   ping6 traceroute6

    •   Windows               ping6    tracert6
    % ping6 2001:db8:bad:face::dead
    % traceroute6 2001:db8:bad:face::dead

                   	 




                                            Jun 11th, 2011 - OSC 2011 Hokkaido
•   AAAA

    •   ipv6.google.com

        •   IPv6

    % ping6 ipv6.google.com
    % traceroute6 ipv6.google.com
    % curl -Iv http://ipv6.google.com/




                                         Jun 11th, 2011 - OSC 2011 Hokkaido
Web
•   IPv4        IPv6

    •   IP-base

    •
        •   The KAME Project
            → http://www.kame.net/
            • IPv6

        •   IPv6@2ch
            → http://ipv6.2ch.net/
            •IPv6

                                     Jun 11th, 2011 - OSC 2011 Hokkaido
Web
•   Apache

    •   1.3.x       IPv6

    •   2.0
        IPv6
                       Apache Portable Runtime (APR)

    Listen [2001:db8::bad:face]:80
    Listen 203.0.113.1:80

    <VirtualHost [2001:db8::bad:face]:80>
      # IPv6 settings
        :
        :
    </VirtualHost>

    </VirtualHost 203.0.113.1:80>
      # IPv4 settings
        :
        :
    </VirtualHost>




                                            Jun 11th, 2011 - OSC 2011 Hokkaido
Web
•   lighttpd

    •                                        IPv6

    •          OS Web Server                           IPv6
    #server.use-ipv6 = "enable"

    server.port = 80
    server.bind = "203.0.113.1"

    $SERVER["socket"] == "[2001:db8::bad:face]:80" {
      # IPv6 settings
        :
    }
    $SERVER["socket"] == "203.0.113.1:80" {
      # IPv4 settings
        :
    }




                                              Jun 11th, 2011 - OSC 2011 Hokkaido
Web
•   nginx

    •   0.7.36                              IPv6

        •   …
    http {
      server {
        listen [2001:db8::bad:face]:80
        server_name bad-face.example.com
        # IPv6 settings
           :
      }
      server {
        listen 127.0.0.1:80;
        listen 203.0.113.1:80;
        server_name bad-face.example.com;
        # IPv4 settings
           :
      }
    }




                                               Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4/IPv6
 •                                                         Web


     •                                                   Proxy

     Perl
            •                 IP
     $ENV{REMOTE_ADDR}
     PHP
     $_SERVER["REMOTE_ADDR"]
     Ruby
     ENV["REMOTE_ADDR"]
     Python
     os.environ.get("REMOTE_ADDR")
     Java
     request.getRemoteAddr() //javax.servlet.http.HttpServletRequest#getRemoteAddr()



                                                      Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4/IPv6
 •   IP

     •
         IPv6   ^(?:(?:(?:(?:[da-f]){1,4}:){6}|::(?:(?:[da-f])
                {1,4}:){5}|(?:[da-f]){0,4}::(?:(?:[da-f]){1,4}
                :){4}|(?:(?:(?:[da-f]){1,4}:){0,1}(?:[da-f]){1
                ,4})?::(?:(?:[da-f]){1,4}:){3}|(?:(?:(?:[da-f]
                ){1,4}:){0,2}(?:[da-f]){1,4})?::(?:(?:[da-f]){
                1,4}:){2}|(?:(?:(?:[da-f]){1,4}:){0,3}(?:[da-f
                ]){1,4})?::(?:(?:[da-f]){1,4}:)|(?:(?:(?:[da-f
                ]){1,4}:){0,4}(?:[da-f]){1,4})?::)(?:(?:[da-f]
                ){1,4}:(?:[da-f]){1,4}|(?:(?:d|[1-9]d|1dd|2
                (?:[0-4]d|5[0-5])).){3}(?:(?:d|[1-9]d|1dd|2
                (?:[0-4]d|5[0-5]))))|(?:(?:(?:[da-f]){1,4}:){0
                ,5}(?:[da-f]){1,4})?::(?:[da-f]){1,4}|(?:(?:(?
                :[da-f]){1,4}:){0,6}(?:[da-f]){1,4})?::)$



 •                                    …

     •                       IPv6

                                    Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4/IPv6
 •   reverse proxy

     •          IP
                     proxy   X-Forwarded-For


     •        proxy

         •
         •
     •   reverse proxy




                                  Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4/IPv6
 •              reverse proxy
                       (4 or 6)
                                                X-IP-Version


     •
     Perl
     $ENV{HTTP_X_IP_VERSION}
     PHP
     $_SERVER["HTTP_X_IP_VERSION"]
     Ruby
     ENV["HTTP_X_IP_VERSION"]
     Python
     os.environ.get("HTTP_X_IP_VERSION")
     Java
     request.getHeader("X-IP-Version")   //javax.servlet.http.HttpServletRequest#getHeader()




                                                      Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4/IPv6
 •   Apache

     •   RequestHeader
     Listen 80

     <VirtualHost [2001:db8::bad:face]:80>
       ServerName bad-face.example.com
       RewriteEngine On
         :
         :
       RequestHeader set X-IP-Version 6
     </VirtualHost>

     </VirtualHost 203.0.113.1:80>
       ServerName bad-face.example.com
       RewriteEngine On
         :
         :
       RequestHeader set X-IP-Version 4
     </VirtualHost>




                                             Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4/IPv6
 •   lighttpd

     •   setenv.add-request-header
     $SERVER["socket"] == "[2001:db8::bad:face]:80" {
         :
         :
       setenv.add-request-header = ("X-IP-Version" => "6")
     }
     $SERVER["socket"] == "203.0.113.1:80" {
         :
         :
       setenv.add-request-header = ("X-IP-Version" => "4")
     }




                                               Jun 11th, 2011 - OSC 2011 Hokkaido
IPv4/IPv6
 •   nginx

     •   proxy_set_header
     http {
       server {
         listen [2001:db8::bad:face]:80
         server_name bad-face.example.com
            :
            :
         proxy_set_header X-IP-Version 6;
       }
       server {
         listen 127.0.0.1:80;
         listen 203.0.113.1:80;
         server_name bad-face.example.com;
            :
            :
         proxy_set_header X-IP-Version 4;
       }
     }




                                             Jun 11th, 2011 - OSC 2011 Hokkaido
IP
•                    IP

    •   DB

        •
            •   IPv4 … 32bit → 4

            •   IPv6 … 128bit → 16

        •
            •   IPv4      15

            •   IPv6


                                     Jun 11th, 2011 - OSC 2011 Hokkaido
IP
•    IPv6

    •     IPv4
    0000:0000:0000:0000:0000:ffff:255.255.255.255
    ----5----0----5----0----5----0----5----0----5



•    45

    •     <netinet/in.h>

    •     Socket
    #define INET_ADDRSTRLEN 16
    #define INET6_ADDRSTRLEN 46

    char ipv4_addr[INET_ADDRSTRLEN];
    char ipv6_addr[INET6_ADDRSTRLEN];



                                          Jun 11th, 2011 - OSC 2011 Hokkaido
•                         IPv6

    •
    2001:db8:bad:beef::0111:dead - - [11/Jun/2011:10:35:55 +0900]
    "GET / HTTP/1.1" 200 9972 "-" "Mozilla/5.0"
    198.51.100.156 - - [11/Jun/2011:10:36:14 +0900] "GET / HTTP/
    1.1" 200 9972 "http://example.com/" "Mozilla/5.0"




                                         Jun 11th, 2011 - OSC 2011 Hokkaido
•               IPv6


                           IPv6

    Webalizer                
    AWStats                  
     Analog                  
                              * 3rd party patch




                       Jun 11th, 2011 - OSC 2011 Hokkaido
…
•   Web               IPv6

•




              Jun 11th, 2011 - OSC 2011 Hokkaido
Critical issues
 •   APNIC 27

     •   Web                     …

         •   IPv6

         •   IPv4

         •   IPv6

         •   IPv6

         •   IPv4

 •
                    Jun 11th, 2011 - OSC 2011 Hokkaido
Critical issues
 •   Imagine
     • The all of interesting websites will be phased out
       in 2011
     •
     •                             …




                                    Jun 11th, 2011 - OSC 2011 Hokkaido
•   Web

    •
    •
        •             …

•   IPv6




            Jun 11th, 2011 - OSC 2011 Hokkaido
Jun 11th, 2011 - OSC 2011 Hokkaido

More Related Content

Similar to IPv6 対応アプリケーション開発なんて怖くない

IPv6::Staying connected
IPv6::Staying connectedIPv6::Staying connected
IPv6::Staying connectedRIPE NCC
 
IPv4 depletion & IPv6 deployment in the RIPE NCC service region
IPv4 depletion & IPv6 deployment in the RIPE NCC service regionIPv4 depletion & IPv6 deployment in the RIPE NCC service region
IPv4 depletion & IPv6 deployment in the RIPE NCC service regionRIPE NCC
 
Martin Potts - Rapporteur’s Remarks
Martin Potts - Rapporteur’s Remarks Martin Potts - Rapporteur’s Remarks
Martin Potts - Rapporteur’s Remarks IPv6 Conference
 
IPv6 Act Now!
IPv6 Act Now!IPv6 Act Now!
IPv6 Act Now!RIPE NCC
 
2011 TWNIC SP IPv6 Transition
2011 TWNIC SP IPv6 Transition2011 TWNIC SP IPv6 Transition
2011 TWNIC SP IPv6 TransitionJohnson Liu
 
Good Men Rising: IPv6 & DNSSEC (ION Toronto 2011)
Good Men Rising: IPv6 & DNSSEC (ION Toronto 2011)Good Men Rising: IPv6 & DNSSEC (ION Toronto 2011)
Good Men Rising: IPv6 & DNSSEC (ION Toronto 2011)Internet Society
 
20120204 yamanashi fallback
20120204 yamanashi fallback20120204 yamanashi fallback
20120204 yamanashi fallbackRuri Hiromi
 
Content over IPv6: no excuses
Content over IPv6: no excusesContent over IPv6: no excuses
Content over IPv6: no excusesIvan Pepelnjak
 
Norway - IPv6 World Leader: Tore Anderson, IPv6 guru, Redpill Linpro
Norway - IPv6 World Leader: Tore Anderson, IPv6 guru, Redpill LinproNorway - IPv6 World Leader: Tore Anderson, IPv6 guru, Redpill Linpro
Norway - IPv6 World Leader: Tore Anderson, IPv6 guru, Redpill LinproIPv6no
 
Getting IPv6 & Securing your Routing
Getting IPv6 & Securing your RoutingGetting IPv6 & Securing your Routing
Getting IPv6 & Securing your RoutingRIPE NCC
 
IPv6 Tutorial RIPE 60
IPv6 Tutorial RIPE 60IPv6 Tutorial RIPE 60
IPv6 Tutorial RIPE 60RIPE Meetings
 
Leo Vegoda - IPv6: a universe if addresses
Leo Vegoda - IPv6: a universe if addressesLeo Vegoda - IPv6: a universe if addresses
Leo Vegoda - IPv6: a universe if addressesIPv6 Conference
 
IPv6 Deployment and Activities in Japan, 2023
IPv6 Deployment and Activities in Japan, 2023IPv6 Deployment and Activities in Japan, 2023
IPv6 Deployment and Activities in Japan, 2023Akira Nakagawa
 
NANOG52 - OCN Experience to Handle the Internet Growth and the Future
NANOG52 - OCN Experience to Handle the Internet Growth and the FutureNANOG52 - OCN Experience to Handle the Internet Growth and the Future
NANOG52 - OCN Experience to Handle the Internet Growth and the FutureChika Yoshimura
 

Similar to IPv6 対応アプリケーション開発なんて怖くない (20)

IPv6::Staying connected
IPv6::Staying connectedIPv6::Staying connected
IPv6::Staying connected
 
Kjell Leknes
Kjell LeknesKjell Leknes
Kjell Leknes
 
IPv4 depletion & IPv6 deployment in the RIPE NCC service region
IPv4 depletion & IPv6 deployment in the RIPE NCC service regionIPv4 depletion & IPv6 deployment in the RIPE NCC service region
IPv4 depletion & IPv6 deployment in the RIPE NCC service region
 
Martin Potts - Rapporteur’s Remarks
Martin Potts - Rapporteur’s Remarks Martin Potts - Rapporteur’s Remarks
Martin Potts - Rapporteur’s Remarks
 
ION Krakow - A Global IPv6 Deployment Update
ION Krakow - A Global IPv6 Deployment UpdateION Krakow - A Global IPv6 Deployment Update
ION Krakow - A Global IPv6 Deployment Update
 
IPv6 Act Now!
IPv6 Act Now!IPv6 Act Now!
IPv6 Act Now!
 
2011 TWNIC SP IPv6 Transition
2011 TWNIC SP IPv6 Transition2011 TWNIC SP IPv6 Transition
2011 TWNIC SP IPv6 Transition
 
An IPv6 Primer
An IPv6 PrimerAn IPv6 Primer
An IPv6 Primer
 
Micheal O'Foghlu - TSSG
Micheal O'Foghlu - TSSGMicheal O'Foghlu - TSSG
Micheal O'Foghlu - TSSG
 
Good Men Rising: IPv6 & DNSSEC
Good Men Rising: IPv6 & DNSSECGood Men Rising: IPv6 & DNSSEC
Good Men Rising: IPv6 & DNSSEC
 
Good Men Rising: IPv6 & DNSSEC (ION Toronto 2011)
Good Men Rising: IPv6 & DNSSEC (ION Toronto 2011)Good Men Rising: IPv6 & DNSSEC (ION Toronto 2011)
Good Men Rising: IPv6 & DNSSEC (ION Toronto 2011)
 
20120204 yamanashi fallback
20120204 yamanashi fallback20120204 yamanashi fallback
20120204 yamanashi fallback
 
Content over IPv6: no excuses
Content over IPv6: no excusesContent over IPv6: no excuses
Content over IPv6: no excuses
 
ION Hangzhou - An IETF Journey for CNNIC
ION Hangzhou - An IETF Journey for CNNICION Hangzhou - An IETF Journey for CNNIC
ION Hangzhou - An IETF Journey for CNNIC
 
Norway - IPv6 World Leader: Tore Anderson, IPv6 guru, Redpill Linpro
Norway - IPv6 World Leader: Tore Anderson, IPv6 guru, Redpill LinproNorway - IPv6 World Leader: Tore Anderson, IPv6 guru, Redpill Linpro
Norway - IPv6 World Leader: Tore Anderson, IPv6 guru, Redpill Linpro
 
Getting IPv6 & Securing your Routing
Getting IPv6 & Securing your RoutingGetting IPv6 & Securing your Routing
Getting IPv6 & Securing your Routing
 
IPv6 Tutorial RIPE 60
IPv6 Tutorial RIPE 60IPv6 Tutorial RIPE 60
IPv6 Tutorial RIPE 60
 
Leo Vegoda - IPv6: a universe if addresses
Leo Vegoda - IPv6: a universe if addressesLeo Vegoda - IPv6: a universe if addresses
Leo Vegoda - IPv6: a universe if addresses
 
IPv6 Deployment and Activities in Japan, 2023
IPv6 Deployment and Activities in Japan, 2023IPv6 Deployment and Activities in Japan, 2023
IPv6 Deployment and Activities in Japan, 2023
 
NANOG52 - OCN Experience to Handle the Internet Growth and the Future
NANOG52 - OCN Experience to Handle the Internet Growth and the FutureNANOG52 - OCN Experience to Handle the Internet Growth and the Future
NANOG52 - OCN Experience to Handle the Internet Growth and the Future
 

Recently uploaded

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 

Recently uploaded (20)

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 

IPv6 対応アプリケーション開発なんて怖くない

  • 1. IPv6 : IAjapan Java Jun 11th, 2011 - OSC 2011 Hokkaido
  • 2. IPv6 • IPv4 • IPv6 • Web IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 3. Jun 11th, 2011 - OSC 2011 Hokkaido
  • 4. : ( ) • HN: • : Web • : • Twitter: @nipotan • Facebook: http://facebook.com/nipotan • Web: http://nipotan.com/ • : Perl Jun 11th, 2011 - OSC 2011 Hokkaido
  • 5. IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 6. IPv6 • IPv6 1 • http://blog.livedoor.jp/nipotan/archives/51195204.html Jun 11th, 2011 - OSC 2011 Hokkaido
  • 7. IPv6 • IPv6 • NO • IPv6 • 2008 12 livedoor IPv6 EDGE Co.Lab v6 http://labs.edge.jp/colabv6/ • • IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 8. livedoor IPv6 • IPv6@2ch → http://ipv6.2ch.net/ •IPv6 • fixdap → http://fixdap.com/ • EDGE Co.Lab v6 • IPv6 IPv6 • IRCnet IRC • WIDE IRCnet Jun 11th, 2011 - OSC 2011 Hokkaido
  • 9. IPv6 • • IPv6 • • • Jun 11th, 2011 - OSC 2011 Hokkaido
  • 10. APNIC 27 (Fab 2009 - Manila, Philippnes) • http://meetings.apnic.net/27/program/ipv6-in-3d • http://slidesha.re/nipotan-apnic27 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 11. IPv6 2 … • • • • IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 12. APNIC IPv6 • • IPv6 • Jun 11th, 2011 - OSC 2011 Hokkaido
  • 13. vs IPv6 • • • L7 • IP (Internet Protocol) → Jun 11th, 2011 - OSC 2011 Hokkaido
  • 14. IPv6 … • IPv6 Ready! • IPv6 Ready! • IP OK • • • • • Jun 11th, 2011 - OSC 2011 Hokkaido
  • 15. IPv4 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 16. 2011 4 15 IPv4 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 17. IPv4 • 32bit • 43 • 4,294,967,296 • • Jun 11th, 2011 - OSC 2011 Hokkaido
  • 18. IPv4 IANA (Internet Assigned Numbers Authority) IR (Internet Registry) RIR (Regional Internet Registry) ARIN RIPE LACNIC AfriNIC APNIC (American Registry for Internet Numbers) NCC (Latin American and Caribbean Internet (African Network Information Centre) (Asia-Pacific Network Information Centre) (Réseaux IP Address Registry) Européens Network Coordination Centre) NIR (National Internet Registry) JPNIC (Japan Network KRNIC (Korea Network TWNIC (Taiwan Network etc... Information Center) Information Center) Information Center) LIR (Local Internet Registry) ISP IDC etc... End-users Jun 11th, 2011 - OSC 2011 Hokkaido
  • 19. IPv4 • 2011-01-31 IANA → RIR • 2011-04-15 APNIC → NIR • 2011-04-15 JPNIC • JPNIC APNIC → LIR Jun 11th, 2011 - OSC 2011 Hokkaido
  • 20. LIR • ISP • NAT (ISP Shared Address) • • • LIR • • IPv6 • Jun 11th, 2011 - OSC 2011 Hokkaido
  • 21. LIR IPv4 • • • IPv6 • • • • • IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 22. IPv6 • • IPv6 • • • IDC • • • IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 23. IPv6 IPv4 • • IPv4 • IPv6 • IPv4 (NAT) • • • / IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 24. IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 25. IPv6 • 128bit • 340 • 340,282,366,920,938,463,374,607,431,768,211,456 • IPv4 8 • • NAT Jun 11th, 2011 - OSC 2011 Hokkaido
  • 26. IP • IPv4 • 32bit 8bit 10 • .( ) 11001011 00000000 01110001 00000001 203.0.113.1 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 27. IP • IPv6 • 128bit 16bit 16 • :( ) 0010000000000001 0000110110111000 0000101110101101 1111101011001110 0000000000000000 0000000000000000 0000000000000000 1101111010101101 2001:0db8:0bad:face:0000:0000:0000:dead 16 0 2001:db8:bad:face:0:0:0:dead 0 :: 2001:db8:bad:face::dead Jun 11th, 2011 - OSC 2011 Hokkaido
  • 28. [ ] IP • IP • example.com • IPv4 • RFC 5735 - Special Use IPv4 Addresses •192.0.2.0/24 #TEST-NET-1 •198.51.100.0/24 # TEST-NET-2 •203.0.113.0/24 # TEST-NET-3 • IPv6 • RFC 3849 - IPv6 Address Prefix Reserved for Documentation • 2001:db8::/32 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 29. IPv6 • IPv4 • 96bit 0 32bit IPv4 • IPv4 10 • ::203.0.113.1 • IPv4 • 80bit 0 16bit 0xffff 32 bit IPv4 • ::ffff:203.0.113.1 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 30. IP • IPv4 URL IP http://203.0.113.1:8080/ IP Jun 11th, 2011 - OSC 2011 Hokkaido
  • 31. IP • IPv6 URL IP http://2001:db8:bad:face::dead:8080/ RFC 3989 Uniform Resource Identifier (URI): Generic Syntax http://[2001:db8:bad:face::dead]:8080/ IPv6 (IP-literal) [ ] Jun 11th, 2011 - OSC 2011 Hokkaido
  • 32. IP • IPv6 URL • • RFC 5952 - A Recommendation for IPv6 Address Text Representation • 6. Notes on Combining IPv6 Addresses with Port Numbers Jun 11th, 2011 - OSC 2011 Hokkaido
  • 33. Web IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 34. PC IPv6 User - IPv6 OK IDC - IPv6 OK Internet PC Jun 11th, 2011 - OSC 2011 Hokkaido
  • 35. IPv6 • Proxy IPv6 User - IPv6 NG IDC - IPv6 OK Internet IPv4 IPv6 Proxy PC Jun 11th, 2011 - OSC 2011 Hokkaido
  • 36. HTTP Proxy IPv6 HTTP Proxy IPv6 Squid  Apache + mod_proxy  DeleGate  Jun 11th, 2011 - OSC 2011 Hokkaido
  • 37. SSL ID ( ) • • • • 1 • IP • IPv4 / IPv6 • Jun 11th, 2011 - OSC 2011 Hokkaido
  • 38. IPv6 DNS • IPv6 AAAA ( A) • DNS • EDNS0 • (512 Bytes) • IPv6 • IPv6 DNS Jun 11th, 2011 - OSC 2011 Hokkaido
  • 39. IPv6 DNS • DNS IPv6 DNS Server AAAA IPv6 EDNS0 transport BIND    NSD    djbdns    * 3rd party patch Jun 11th, 2011 - OSC 2011 Hokkaido
  • 40. MTA ( ) IPv6 • • SMTP IPv6 • • • MX AAAA % host -t MX example.com example.com mail is handled by 0 mail.example.com. % host -t AAAA mail.example.com mail.example.com has IPv6 address 2001:db8::c00:ffee Jun 11th, 2011 - OSC 2011 Hokkaido
  • 41. MTA ( ) IPv6 • MTA IPv6 MTA IPv6 sendmail  postfix  qmail  * 3rd party patch Jun 11th, 2011 - OSC 2011 Hokkaido
  • 42. IPv6 • ICMPv6 • ICMP (IPv4) • ping traceroute IPv6 • ping6 traceroute6 • Windows ping6 tracert6 % ping6 2001:db8:bad:face::dead % traceroute6 2001:db8:bad:face::dead Jun 11th, 2011 - OSC 2011 Hokkaido
  • 43. AAAA • ipv6.google.com • IPv6 % ping6 ipv6.google.com % traceroute6 ipv6.google.com % curl -Iv http://ipv6.google.com/ Jun 11th, 2011 - OSC 2011 Hokkaido
  • 44. Web • IPv4 IPv6 • IP-base • • The KAME Project → http://www.kame.net/ • IPv6 • IPv6@2ch → http://ipv6.2ch.net/ •IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 45. Web • Apache • 1.3.x IPv6 • 2.0 IPv6 Apache Portable Runtime (APR) Listen [2001:db8::bad:face]:80 Listen 203.0.113.1:80 <VirtualHost [2001:db8::bad:face]:80> # IPv6 settings : : </VirtualHost> </VirtualHost 203.0.113.1:80> # IPv4 settings : : </VirtualHost> Jun 11th, 2011 - OSC 2011 Hokkaido
  • 46. Web • lighttpd • IPv6 • OS Web Server IPv6 #server.use-ipv6 = "enable" server.port = 80 server.bind = "203.0.113.1" $SERVER["socket"] == "[2001:db8::bad:face]:80" { # IPv6 settings : } $SERVER["socket"] == "203.0.113.1:80" { # IPv4 settings : } Jun 11th, 2011 - OSC 2011 Hokkaido
  • 47. Web • nginx • 0.7.36 IPv6 • … http { server { listen [2001:db8::bad:face]:80 server_name bad-face.example.com # IPv6 settings : } server { listen 127.0.0.1:80; listen 203.0.113.1:80; server_name bad-face.example.com; # IPv4 settings : } } Jun 11th, 2011 - OSC 2011 Hokkaido
  • 48. IPv4/IPv6 • Web • Proxy Perl • IP $ENV{REMOTE_ADDR} PHP $_SERVER["REMOTE_ADDR"] Ruby ENV["REMOTE_ADDR"] Python os.environ.get("REMOTE_ADDR") Java request.getRemoteAddr() //javax.servlet.http.HttpServletRequest#getRemoteAddr() Jun 11th, 2011 - OSC 2011 Hokkaido
  • 49. IPv4/IPv6 • IP • IPv6 ^(?:(?:(?:(?:[da-f]){1,4}:){6}|::(?:(?:[da-f]) {1,4}:){5}|(?:[da-f]){0,4}::(?:(?:[da-f]){1,4} :){4}|(?:(?:(?:[da-f]){1,4}:){0,1}(?:[da-f]){1 ,4})?::(?:(?:[da-f]){1,4}:){3}|(?:(?:(?:[da-f] ){1,4}:){0,2}(?:[da-f]){1,4})?::(?:(?:[da-f]){ 1,4}:){2}|(?:(?:(?:[da-f]){1,4}:){0,3}(?:[da-f ]){1,4})?::(?:(?:[da-f]){1,4}:)|(?:(?:(?:[da-f ]){1,4}:){0,4}(?:[da-f]){1,4})?::)(?:(?:[da-f] ){1,4}:(?:[da-f]){1,4}|(?:(?:d|[1-9]d|1dd|2 (?:[0-4]d|5[0-5])).){3}(?:(?:d|[1-9]d|1dd|2 (?:[0-4]d|5[0-5]))))|(?:(?:(?:[da-f]){1,4}:){0 ,5}(?:[da-f]){1,4})?::(?:[da-f]){1,4}|(?:(?:(? :[da-f]){1,4}:){0,6}(?:[da-f]){1,4})?::)$ • … • IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 50. IPv4/IPv6 • reverse proxy • IP proxy X-Forwarded-For • proxy • • • reverse proxy Jun 11th, 2011 - OSC 2011 Hokkaido
  • 51. IPv4/IPv6 • reverse proxy (4 or 6) X-IP-Version • Perl $ENV{HTTP_X_IP_VERSION} PHP $_SERVER["HTTP_X_IP_VERSION"] Ruby ENV["HTTP_X_IP_VERSION"] Python os.environ.get("HTTP_X_IP_VERSION") Java request.getHeader("X-IP-Version") //javax.servlet.http.HttpServletRequest#getHeader() Jun 11th, 2011 - OSC 2011 Hokkaido
  • 52. IPv4/IPv6 • Apache • RequestHeader Listen 80 <VirtualHost [2001:db8::bad:face]:80> ServerName bad-face.example.com RewriteEngine On : : RequestHeader set X-IP-Version 6 </VirtualHost> </VirtualHost 203.0.113.1:80> ServerName bad-face.example.com RewriteEngine On : : RequestHeader set X-IP-Version 4 </VirtualHost> Jun 11th, 2011 - OSC 2011 Hokkaido
  • 53. IPv4/IPv6 • lighttpd • setenv.add-request-header $SERVER["socket"] == "[2001:db8::bad:face]:80" { : : setenv.add-request-header = ("X-IP-Version" => "6") } $SERVER["socket"] == "203.0.113.1:80" { : : setenv.add-request-header = ("X-IP-Version" => "4") } Jun 11th, 2011 - OSC 2011 Hokkaido
  • 54. IPv4/IPv6 • nginx • proxy_set_header http { server { listen [2001:db8::bad:face]:80 server_name bad-face.example.com : : proxy_set_header X-IP-Version 6; } server { listen 127.0.0.1:80; listen 203.0.113.1:80; server_name bad-face.example.com; : : proxy_set_header X-IP-Version 4; } } Jun 11th, 2011 - OSC 2011 Hokkaido
  • 55. IP • IP • DB • • IPv4 … 32bit → 4 • IPv6 … 128bit → 16 • • IPv4 15 • IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 56. IP • IPv6 • IPv4 0000:0000:0000:0000:0000:ffff:255.255.255.255 ----5----0----5----0----5----0----5----0----5 • 45 • <netinet/in.h> • Socket #define INET_ADDRSTRLEN 16 #define INET6_ADDRSTRLEN 46 char ipv4_addr[INET_ADDRSTRLEN]; char ipv6_addr[INET6_ADDRSTRLEN]; Jun 11th, 2011 - OSC 2011 Hokkaido
  • 57. IPv6 • 2001:db8:bad:beef::0111:dead - - [11/Jun/2011:10:35:55 +0900] "GET / HTTP/1.1" 200 9972 "-" "Mozilla/5.0" 198.51.100.156 - - [11/Jun/2011:10:36:14 +0900] "GET / HTTP/ 1.1" 200 9972 "http://example.com/" "Mozilla/5.0" Jun 11th, 2011 - OSC 2011 Hokkaido
  • 58. IPv6 IPv6 Webalizer  AWStats  Analog  * 3rd party patch Jun 11th, 2011 - OSC 2011 Hokkaido
  • 59. … • Web IPv6 • Jun 11th, 2011 - OSC 2011 Hokkaido
  • 60. Critical issues • APNIC 27 • Web … • IPv6 • IPv4 • IPv6 • IPv6 • IPv4 • Jun 11th, 2011 - OSC 2011 Hokkaido
  • 61. Critical issues • Imagine • The all of interesting websites will be phased out in 2011 • • … Jun 11th, 2011 - OSC 2011 Hokkaido
  • 62. Web • • • … • IPv6 Jun 11th, 2011 - OSC 2011 Hokkaido
  • 63. Jun 11th, 2011 - OSC 2011 Hokkaido