Top Banner
Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol
41

Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Dec 26, 2015

Download

Documents

Rosanna White
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: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

1

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Page 2: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

2

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Content

Anycast

Secure Anycast Tunneling Protocol (SATP)

Usage Scenarios

Anytun (a SATP implementation)

Demonstration

Page 3: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

3

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Anycast

Page 4: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

4

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Types of addresses in IP networks

Unicast– 1 IP address / host

– Data is sent to exactly that host

Broadcast– 1 IP address / network

– Data is sent to all hosts on the network

Multicast– 1 IP address for multiple hosts

– Data is sent to all hosts having the IP address

Page 5: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

5

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Types of addresses in IP networks

Anycast– 1 IP address for multiple hosts

– Data is sent to only one host

– Which host receives the data might change at any time

Why to use anycast?– Load balancing

– Fault tolerance / redundancy

– Build scalable clusters

– Extend or shrink clusters while in operation

Page 6: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

6

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Anycast example (DNS)

Page 7: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

7

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

How to realise anycast

The simple way– Give two hosts in a LAN the same IP address

– Works but has many problems (ARP table cache timeouts ...)

The more powerful way– Use a routing protocol to decide which host receives the data

– Works great

– Fault tolerance only the the anycast host runs a routing daemon

Page 8: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

8

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Routing in the Internet

What is the „Internet“ anyway?– The Internet is an interconnect of independent networks

– Such independent networks are called Autonomous Systems (e.g. Telekom Austria, UPC, Geant, ...)

Where is routing done?– Inside Autonomous Systems by interior gateway protocols like OSPF

or ISIS

– Between autonomous systems by the exterior routing protocol BGP4 (border gateway protocol version 4)

Page 9: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

9

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

What is an Autonomous System (AS)

An AS is multi homed– Has a connection to at least two other AS

(upstream ISPs, customers or peering partners)

An AS has it's own IP addresses– At least /24 for IPv4 (256 addresses)

– At least /32 for IPv6 (65536 end customer networks = /48 )

Has an Autonomous System Number (ASN)– IP addresses and ASNs for Europe are managed by RIPE

Page 10: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

10

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

How to announce an anycast route?

Inside an AS– Give 2 hosts the same IP address

– Connect the hosts to separate routers

– Announce the route in the routers

– The network will see only one multi homed host

Global– Announce a whole network at different routers / locations

– Connect the anycast hosts to the routers

– Again it looks like a multi homed network to the Internet

Page 11: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

11

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

BGPlay

Page 12: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

12

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Why to do global anycast?

Anycast advantages– Load balancing

– Fault tolerance / redundancy

– Build scalable clusters

– Extend or shrink clusters while in operation

anycast routing advantages– Geographic load balancing

– Shortest route in the Internet

– minimum delay for the data

Page 13: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

13

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Secure Anycast Tunneling Protocol (SATP)

Page 14: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

14

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP

Encapsulation

Key Handshake / NAT Transversal

Crypto

Replay Protection

Synchronisation

Page 15: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

15

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Encapsulation

SATP is a tunnel protocol similar to GRE orIPSec ESP in tunnel mode

Page 16: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

16

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP Header

Page 17: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

17

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP – encrypted part

Page 18: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

18

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP – authenticated part

Page 19: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

19

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Keyexchange / NAT Transversal

OpenVPN

IPSec

Page 20: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

20

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Keyexchange / NAT Transversal cont'd

SATP– external Key Exchange (i.e. IKE)– NAT Transversal and Encapsulation is done by SATP

Page 21: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

21

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Crypto - cryptographic context

used for key calculation

consists of packet independent and packet specific data

packet independent– Master Key– Master Salt

packet specific– Sequence Number– Sender ID– Mux

Page 22: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

22

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Crypto – Encryption

Page 23: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

23

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Crypto - Authentication

Page 24: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

24

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Replay Protection

• attacker may record any packet and resend it to you

• store all sequence numbers received in a list

• use a sequence window to save memory

Page 25: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

25

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Replay Protection and anycast

• anycast sender doesn't know about sequence numbers used by other anycast senders

• sequence numbers would have to be synchronised

• every anycast sender would have to send a synchronise packet to every other anycast send for every packet it sends out

• on the internet this is too much overhead

Page 26: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

26

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP - Replay Protection

own sequence window for each sender

for anycast sender the sender id is used to distinguish between sequence windows

IPSec doesn't have sender id's therefore you can't use replay protection and anycast

Page 27: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

27

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Syncronisation

synchronisation has to be done between anycast senders

only view information has to be synchronised– master key and salt– peers IP address and port

SATP only defines what to synchronise and not how

Page 28: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

28

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATPUsage Scenarios

Page 29: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

29

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP applications: VPN

Page 30: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

30

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP applications: VPN

Page 31: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

31

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP apps: securing anycast services

Page 32: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

32

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

SATP apps: SIP/anyRTPProxy

Page 33: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

33

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Special Thanks

• Netidee / Internet Privatstiftung Austria

• Mur.at– LIR: IP addresses, AS– Server Housing (with BGP4)

• FunkFeuer Vienna & Graz– Server Housing (with BGP4)

Page 34: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

34

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Anytun(a SATP implementation)

Page 35: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

35

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Anytun

• SATP Reference Implementation

• Implemented in C++

• Similar Interface to OpenVPN tun / tap devices

• Full customizable topologyClient/server, P2P, mesh

• Full customizable routingAccess to the internal routing information

Page 36: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

36

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Anytun

• Tunneling of IPv4, IPv6 and Ethernet over UDP

• Support for NAT and changing IP addresses

• Full support for cluster synchronisation and load balancing

• State of the art encryption– AES encryption– SHA1 authentication

Page 37: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

37

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Questions

Page 38: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

38

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Questions

What is anycast?– 1 IP address for multiple hosts

– Data is sent to only one host

– Which host receives the data might change at any time

Describe the advantages of anycast– Load balancing

– Fault tolerance / redundancy

– Build scalable clusters

– Extend or shrink clusters while in operation

Page 39: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

39

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Questions

What are requirements for encryption used with anycast?– The cryptographic context has to be present in every packet (e.g.

sequence number) or has to be statically known (e.g. master key)

What is replay protection and why is it needed– It's a list of received packages.– Duplicate packages are ignored.– It's needed to protect against data that is recorded by the attacker

and replayed at a later time.

Page 40: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

40

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Questions

List 3 applications for anycast– DNS– 6to4– VPN– anycast RTP-Proxy

How can anycast be realised (two variants)– give 2 hosts the same IP address on the LAN– announce the IP address multiple times in a routing protocol

Page 41: Advanced Computer Networks - IAIK 1 Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol.

Advanced Computer Networks - IAIK

41

Gsenger, Nindl, Pointner Graz, 23.5.2008 Secure Anycast Tunneling Protocol

Live Demonstration