Top Banner
An experiment with stateless NAT64 Carlos Mar7nez – LACNIC @carlosm3011
14

NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Jun 29, 2015

Download

Technology

Despliegue de NAT64 en la red de LACNIC 18 (Montevideo, Uruguay)
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

An  experiment  with  stateless  NAT64  

Carlos  Mar7nez  –  LACNIC    @carlosm3011  

Page 2: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

NAT64  

•  We  all  know  what  it  is…  – Connect  IPv6-­‐only  clouds  with  IPv4-­‐only  clouds  – Translate  protocol  headers  including  addresses  – Source  IPv4  address  for  translated  packet  

•  Mul7plexed  using  TCP  /  UDP  port  numbers:  Stateful  NAT64  •  One-­‐to-­‐one  mapping:  Stateless  NAT64  

– Des7na7on  IPv4  address  is  embedded  /  encoded  in  IPv6  des7na7on  address  

Page 3: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Stateful  NAT64  IPv6  Packet  

SRC:  2001:db8::128  

DST:  64:ff9b::42dc:9e19  

<<other  headers>>  

NAT64  Router  

TCP  Frame  

SRC  PORT:  32768  

DST  PORT:  80  

IPv4  Packet  

SRC:  190.216.38.14  

DST:  69.63.190.18  

<<other  headers>>  

TCP  Frame  

SRC  PORT:  15547  

DST  PORT:  80  

DSrc   DDst   Port1   Port2  

2001:db8::128   69.63.190.18   32768   15547  

Algorithmic  Address  Mapping  

Page 4: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Stateless  NAT64  IPv6  Packet  

SRC:  2001:db8::128  

DST:  64:ff9b::42dc:9e19  

<<other  headers>>  

NAT64  Router  

IPv4  Packet  

SRC:  190.216.38.X  

DST:  69.63.190.18  

<<other  headers>>  

Algorithmic  Address  Mapping  

SRC  address  is  mapped  one-­‐to-­‐one  to  the  IPv6  hosts  

Page 5: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Introducing  TAYGA  

•  TAYGA  is  a  user-­‐mode,  stateless  NAT64  implementa7on  – Uses  the  TUN  driver  

•  Mapping  between  IPv6  hosts  and  IPv4  hosts  is  one-­‐to-­‐one  – You  need  to  have  as  many  IPv4  addresses  as  hosts  you  want  to  have  

•  hap://www.litech.org/tayga/    

Page 6: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Configuring  TAYGA    •  {Taken  from  TAYGA’s  website}  •  Compile:  –  The  usual  ./configure  &&  make  &&  make  install  

•  Create  /usr/local/etc/tayga.conf:  tun-device nat64 ipv4-addr 192.168.255.1 prefix 64:ff9b::/96 dynamic-pool 192.168.255.0/24 data-dir /var/db/tayga

•  Create  tun  device  and  configure  sta7c  routes  and  addresses  

Page 7: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

The  Experiment  

•  LACNIC  18,  Montevideo,  Uruguay  in  October  2012  

•  350  aaendees,  ~550  devices  •  Mul7ple  SSIDs  – Dual-­‐Stack,  IPv6-­‐Only+NAT64  

Page 8: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

The  Network  

Page 9: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Network  Setup  

•  NAT64  to  a  private  IPv4  pool  •  Stateful  NAT44  configured  in  the  Cisco  boxes  – Could  have  used  the  servers  themselves  with  iptables  –j  MASQUERADE  

Page 10: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Network  Setup  (ii)  

Server  #1  runs  TAYGA  and  performs  DNS64  

Server  #2  only  performs  DNS64  

Cisco  box  does  NAT  

Page 11: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

DNS64  

•  Implemented  with  BIND  9.8  •  DNS64  synthe7c  answers  restricted  to  the  IPv6-­‐only  VLAN  

•  Very  simple  configura7on:  dns64 64:ff9b::/96 {

clients <lacnic18pfx>:b0b0::/64;

}

Page 12: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Some  Results  

•  Number  of  users  – Not  many,  10-­‐12  devices  peak  

•  Performance  – No  no7ceable  degrada7on  compared  to  the  dual  stack  SSID  

•  What  works  and  what  doesn’t  –  Skype  – Dropbox  –  Some  users  reported  Twiaer  not  working,  couldn’t  confirm  

Page 13: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

Some  results  (ii)  

•  The  good  about  it:  – No  kernel  modules  needed  – No  unnecessary  or  possibly  conflic7ng**    IOS  upgrades  to  perform  on  the  Cisco  boxes  

– Easier  troubleshoo7ng  /  user  tracking  as  every  NAT64ed  hosts  has  its  own  IPv4  address  •  Stateful  NAT  performed  at  network’s  edge    

Page 14: NAT64 en LACNIC 18: Experimentos con NAT64 sin estado

THANKS  !