PLNOG 8: Łukasz Bromirski - IP Anycast - Ochrona i skalowanie usług sieciowych

PROIDEA
PROIDEAPROIDEA
1
IP Anycast
Ochrona i skalowanie usług sieciowych
Łukasz Bromirski
lbromirski@cisco.com
2
Agenda
§  IP Anycast – co to jest?
§  Jak wykorzystać IP Anycast?
§  Rozważania projektowe dla DNS
§  Rozważania projektowe dla HTTP
§  Q&A
3
IP Anycast
4
Trochę o historii…
§  Wykrywanie nowych usług – SNTPv4 (RFC 2030)
oraz NTP "manycast" (RFC 4330)
§  Pierwszy mechanizm przechodzenia na IPv6 (RFC
2893) a potem 6to4 (RFC 3068)
§  Użycie anycastów dla RP – MSDP i PIM (RFC
4610)
§  W IPv6 pierwsze RFC (RFC 1884, 2373 i 3513)
zabraniały używania adresu anycastowego jako
adresu źródłowego; zniesiono to ograniczenie w
RFC 4291
§  Zastosowanie anycastów w systemie DNS (RFC
3258) wspomina wykorzystanie "shared unicast"
To nic nowego, ale nadal działa dobrze J
5
IP Anycast
§  Prosty, efektywny, szeroko używany J
§  Niezależny od warstwy trzeciej
zarówno IPv4 jak i IPv6 działają – po prostu
RFC mówi o specjalnych adresach anycast – ale
większość technik skalowania, w tym te
najpowszechniejsze – wykorzystują podejście 'shared
unicast'
6
IP Anycast
§  Jest bardzo uniwersalny
§  Może być wykorzystywany zamiast lub
równocześnie z:
równoważeniem obciążenia w L3/L4
dodawaniem usług IP w sposób tradycyjny
§  W przeciwieństwie do powszechnego przekonania,
IP Anycast może być również używany do
skalowania usług TCP*
* więcej o tym później, pamiętajcie jednak że Wasze rezultaty mogą się różnić
7
Wykorzystanie anycastu IP
8
Typowe zastosowanie
1.1.1.1/32
9
Serwer zostaje przeciążony
1.1.1.1/32
10
Rozwiązanie pierwsze: rośniemy wszerz
"Zainstalujmy loadbalancer i dodajmy serwerów"
sieć
VIP: 1.1.1.1/32
1.1.5.10/24
1.1.5.11/24
1.1.5.12/24
1.1.5.13/24
11
Po zastosowaniu VIPa i serwerów
1.1.1.1/32
12
…ale połączenia się przeciążają…
1.1.1.1/32
13
…i tylko część użytkowników ma dostęp
1.1.1.1/32
14
A może zreplikujemy to samo IP?
1.1.1.1/32
1.1.1.1/32
15
Zreplikowana usługa
1.1.1.1/32
1.1.1.1/32
Mechanizm routingu wybierze drogę o
najmniejszym koszcie pomiędzy klientem a
serwerem
Każdy z hostów zostanie skierowany do "najbliższej"
instancji usługi
Należy zadbać o usuwanie niedziałających instancji
Działa dla IP, MPLS/IP i dowolnego protokołu
routingu
R1> show ip route!
I 1.1.1.1/32 [115/10] via 192.168.11.6!
R3> show ip route!
I 1.1.1.1/32 [115/20] via 192.168.73.7!
!
R7> show ip route!
I 1.1.1.1/32 [115/10] via 192.168.77.6!
!
R1
R7
R3
R5
16
1.1.1.1/32
Zreplikowana usługa
1.1.1.1/32
Replikacja zapewni wysoką dostępność
"Śmierć" jednej instancji spowoduje zniknięcie jej z
IGP, jeśli IGP będzie o tym wiedział
Ilość stopni redundancji zależy od ilości instancji
R1> show ip route!
I 1.1.1.1/32 [115/20] via 192.168.17.7!
R3> show ip route!
I 1.1.1.1/32 [115/20] via 192.168.73.7!
!
R7> show ip route!
I 1.1.1.1/32 [115/10] via 192.168.77.6!
!
R1
R7
R3
R7> show ip route!
I 1.1.1.1/32 [115/10] via 192.168.77.6!
!
R5
17
Zreplikowana usługa
1.1.1.1/32
Automatyczne rozkładanie obciążenia w
L3/L4
Uwaga na usługi TCP – oraz ogólnie, na usługi
utrzymujące dłuższe połączenia
R3> show ip route!
I 1.1.1.1/32 [115/20] via 192.168.13.1!
via 192.168.37.7!
R1
R7
R3
R5 1.1.1.1/32
18
IP Anycast w służbie DNS
19
Problemy tradycyjne
§  Brak stosowania "best practices"
Serwery DNS usytuowane są zwykle w jednym miejscu (z
punktu widzenia topologii sieci) co oznacza, że stają się łatwym
celem dla ataków i zwiększa ryzyko ich zniknięcia w przypadku
awarii
wyeliminowanie serwerów i łącz do nich nigdy nie było prostsze
Nawet jeśli serwery DNS znajdują się w różnych miejscach
sieci, przyciągają różny ruch – do różnych IP
atak na 2-3 adresy lub podsieci jest nadal bardzo prosty do
przeprowadzenia
przełączenie się z pierwszego adresu na drugi przy rozwiązywaniu
nazw nadal nie wychodzi dobrze większości popularnych systemów
operacyjnych
20
Problemy tradycyjne
§  Skalowalność:
większość klientów DNS (resolverów) w stosowanych
powszechnie systemach operacyjnych nie radzi sobie dobrze z
więcej niż 1-2 serwerami DNS
czasami można dodać więcej, ale rzadko robi to realną różnicę*
możesz serwować różne adresy DNS w różnych częściach swojej
sieci, ale jest to trudne do zarządzania i utrzymania
można też dodać lokalny load-balancing na wiele różnych
adresów IP – sprzętowo lub programowo
to jednak też dodaje złożoności do całości rozwiązania
21
Kto używa IP anycastu dla DNS?
§  "Prawie" wszyscy! J
* Mapa CAIDA dla DNS: http://www.caida.org/research/dns/influence-map/
22
Mapa root serwerów DNS
http://www.root-servers.org/
23
Ochrona serwerów root DNS anycastem
24
Rozwiązanie IP anycastu dla DNS
W detalach
sieć
em0:1.1.5.10/24
em0:1.1.5.11/24
em0:1.1.5.12/24
em0:1.1.5.13/24lo0: 1.1.1.1/32


R1# sh ip route!
!
*> 1.1.1.1/32!
via 1.1.5.10!
via 1.1.5.11!
via 1.1.5.12!
via 1.1.5.13!
R1 R2


R2# sh ip route!
!
*> 1.1.1.1/32!
via 1.1.5.10!
via 1.1.5.11!
via 1.1.5.12!
via 1.1.5.13!
IGP: OSPF/IS-IS/EIGRP
;; ANSWER SECTION:!
ns1.anycasted.com. 86400 IN A 1.1.1.1!
zapytanie o adres serwera DNS
Tablica routingu R1 Tablica routingu R2
25
Równoważenie obciążenia w dużej sieci
1.1.1.1/32
1.1.1.1/32
POZ
WRO
SZC
GDA
WAR
BIA
LUB
KRA
WRO# sh ip route!
!
*> 1.1.1.1/32!
via 1.1.22.2!
via 1.1.18.2!
Tablica routingu routera WRO
26
Rozwiązanie IP anycastu dla DNS
§  Wymagana jest uważna konfiguracja
odpowiadamy na pytania z adresu anycast, przypisanego
do interfejsu loopback0 (1.1.1.1/32 & 2001:db8::100:100)
sami pytamy, przeprowadzamy transfery stref/etc z adresu
fizycznego interfejsu lub innego interfejsu loopback
Konfiguracja systemu DNS - named
options {!
listen-on { 1.1.1.1; };!
listen-on-v6 { 2001:db8::100:100; };!
query-source address 1.1.5.10;!
query-source-v6 2001:db8::34:254;!
transfer-source 1.1.5.10;!
transfer-source-v6 2001:db8::34:254;!
};!
NS1-1 named.conf
options {!
listen-on { 1.1.1.1; };!
listen-on-v6 { 2001:db8::100:100; };!
query-source address 1.1.5.11;!
query-source-v6 2001:db8::34:254;!
transfer-source 1.1.5.11;!
transfer-source-v6 2001:db8::34:254;!
};!
NS1-2 named.conf
27
Rozwiązanie IP anycastu dla DNS
§  Pomiędzy serwerem DNS a routerami należy
uruchomić protokół IGP – pakiet routingu do wyboru
Konfiguracja – quagga/OpenOSPFd
interface em0!
ip address 1.1.5.11/24!
!!
interface lo0!
ip address 1.1.1.1/32!
quagga.conf
router ospf!
ospf router-id 1.1.5.11!
network 1.1.5.0/24 area 10!
redistribute connected route-map PF-DNS!
!!
route-map PF-DNS permit 10!
match ip address prefix-list dns-ospf!
!!
ip prefix-list dns-ospf permit 1.1.1.1/32!
ospfd.conf
28
IP Anycast w służbie HTTP
29
Skalowanie usług TCP w ogólności
§  Ilość zmian topologii wpływających na "bliskość"
instancji powinna być ograniczona
zmiana topologii oznacza w tej sytuacji zerwanie sesji TCP
obejście problemu jest związane zwykle z
synchronizacją stanów pomiędzy serwerami (bolesne,
"ciężkie" - złożone)
nauczenie aplikacji klienta lub urządzenia po drodze
(CPE) by dawało sobie z tym radę (działa w
rzeczywistych zastosowaniach*)
§  Jeśli pomiędzy klientem a instancjami mamy wiele
równoległych ścieżek, mogą pojawić się problemy
można w prosty** sposób zmienić koszty połączeń tak aby
uniknąć problemu jeśli występuje
* Studium przypadku dla streamingu TCP dla usług IP anycast, NANOG #37
30
Usługa HTTP z IP anycast
§  Dla długo trwających sesji HTTP, w szczególności z
wykorzystaniem różnego rodzaju mechanizmów
śledzących, jak np. cookies – przy zmianie topologii
może pojawić się problem
Technologie typu AJAX są lepsze do tego typu zastosowań
§  Jeśli topologia zmieni się pomiędzy kolejnymi
zapytaniami klienta, mogą pojawić się pewne
problemy
np. niezsynchronizowane/uaktualnione cookies,
powodujące wyrzucenie/złe przekierowanie klienta
można to oczywiście obejść wykonując synchronizację z
niezależnych adresów
31
Gdzie znaleźć więcej informacji?
§  Wykorzystanie anycastu z TCP
Anycast-aware transport for content delivery networks
http://dl.acm.org/citation.cfm?id=1526750
§  Wdrażanie anycastów z TCP
NANOG #37
http://www.nanog.org/meetings/nanog37/abstracts.php
§  BCP 126 / RFC 4786
Operation of Anycast Services
http://tools.ietf.org/html/rfc4786
§  Rozważania architekturalne dla IP Anycast
http://tools.ietf.org/html/draft-mcpherson-anycast-arch-
implications-00
32
Q&A
33
Łukasz Bromirski
lbromirski@cisco.com
1 sur 33

Recommandé

PLNOG 4: Piotr Wojciechowski - NAT-PT, czyli współistnienie sieci IPv4 i IPv6 par
PLNOG 4: Piotr Wojciechowski - NAT-PT, czyli współistnienie sieci IPv4 i IPv6PLNOG 4: Piotr Wojciechowski - NAT-PT, czyli współistnienie sieci IPv4 i IPv6
PLNOG 4: Piotr Wojciechowski - NAT-PT, czyli współistnienie sieci IPv4 i IPv6PROIDEA
54 vues48 diapositives
100 M pakietów na sekundę dla każdego. par
100 M pakietów na sekundę dla każdego. 100 M pakietów na sekundę dla każdego.
100 M pakietów na sekundę dla każdego. Redge Technologies
973 vues41 diapositives
100Mpps czyli jak radzić sobie z atakami DDoS? par
100Mpps czyli jak radzić sobie z atakami DDoS?100Mpps czyli jak radzić sobie z atakami DDoS?
100Mpps czyli jak radzić sobie z atakami DDoS?Redge Technologies
905 vues15 diapositives
PLNOG 9: Daniel Fenert - nazwa.pl - nieustanny rozwój par
PLNOG 9: Daniel Fenert - nazwa.pl - nieustanny rozwój PLNOG 9: Daniel Fenert - nazwa.pl - nieustanny rozwój
PLNOG 9: Daniel Fenert - nazwa.pl - nieustanny rozwój PROIDEA
10 vues25 diapositives
Onet barcamp 4 - Cloud Storage par
Onet barcamp 4  - Cloud StorageOnet barcamp 4  - Cloud Storage
Onet barcamp 4 - Cloud StorageOnetIT
1.4K vues28 diapositives
Ochrona przed atakami DDoS na platformie x86. Czy można mieć jednocześnie wyd... par
Ochrona przed atakami DDoS na platformie x86. Czy można mieć jednocześnie wyd...Ochrona przed atakami DDoS na platformie x86. Czy można mieć jednocześnie wyd...
Ochrona przed atakami DDoS na platformie x86. Czy można mieć jednocześnie wyd...Redge Technologies
716 vues24 diapositives

Contenu connexe

Tendances

Sekrety magicznego ogrodu Docker par
Sekrety magicznego ogrodu DockerSekrety magicznego ogrodu Docker
Sekrety magicznego ogrodu DockerKamil Grabowski
398 vues58 diapositives
Noc informatyka par
Noc informatykaNoc informatyka
Noc informatykaOnetIT
770 vues31 diapositives
Prezentacja Jabber par
Prezentacja JabberPrezentacja Jabber
Prezentacja Jabberbm9ib2r5
632 vues26 diapositives
PLNOG 8: Przemysław Grygiel - Data Center Allegro wyboista droga L2 do autost... par
PLNOG 8: Przemysław Grygiel - Data Center Allegro wyboista droga L2 do autost...PLNOG 8: Przemysław Grygiel - Data Center Allegro wyboista droga L2 do autost...
PLNOG 8: Przemysław Grygiel - Data Center Allegro wyboista droga L2 do autost...PROIDEA
49 vues32 diapositives
PLNOG16: Transport ruchu klientów - MPLS L2 i L3, Tomasz Jedynak par
PLNOG16: Transport ruchu klientów - MPLS L2 i L3, Tomasz JedynakPLNOG16: Transport ruchu klientów - MPLS L2 i L3, Tomasz Jedynak
PLNOG16: Transport ruchu klientów - MPLS L2 i L3, Tomasz JedynakPROIDEA
381 vues35 diapositives
GlusterFS par
GlusterFSGlusterFS
GlusterFSŁukasz Jagiełło
1.8K vues32 diapositives

Tendances(20)

Noc informatyka par OnetIT
Noc informatykaNoc informatyka
Noc informatyka
OnetIT770 vues
Prezentacja Jabber par bm9ib2r5
Prezentacja JabberPrezentacja Jabber
Prezentacja Jabber
bm9ib2r5632 vues
PLNOG 8: Przemysław Grygiel - Data Center Allegro wyboista droga L2 do autost... par PROIDEA
PLNOG 8: Przemysław Grygiel - Data Center Allegro wyboista droga L2 do autost...PLNOG 8: Przemysław Grygiel - Data Center Allegro wyboista droga L2 do autost...
PLNOG 8: Przemysław Grygiel - Data Center Allegro wyboista droga L2 do autost...
PROIDEA49 vues
PLNOG16: Transport ruchu klientów - MPLS L2 i L3, Tomasz Jedynak par PROIDEA
PLNOG16: Transport ruchu klientów - MPLS L2 i L3, Tomasz JedynakPLNOG16: Transport ruchu klientów - MPLS L2 i L3, Tomasz Jedynak
PLNOG16: Transport ruchu klientów - MPLS L2 i L3, Tomasz Jedynak
PROIDEA381 vues
Stosy sieciowe w przestrzeni użytkownika. par Semihalf
Stosy sieciowe w przestrzeni użytkownika.Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.
Semihalf439 vues
Efekt motyla w kodzie maszynowym. par Semihalf
Efekt motyla w kodzie maszynowym.Efekt motyla w kodzie maszynowym.
Efekt motyla w kodzie maszynowym.
Semihalf128 vues
HPE 3PAR All Flash par hpepolska
HPE 3PAR All FlashHPE 3PAR All Flash
HPE 3PAR All Flash
hpepolska962 vues
PLNOG 3: Piotr Jabłoński - Realizacja styku międzyoperatorskiego dla usług L... par PROIDEA
PLNOG 3: Piotr Jabłoński -  Realizacja styku międzyoperatorskiego dla usług L...PLNOG 3: Piotr Jabłoński -  Realizacja styku międzyoperatorskiego dla usług L...
PLNOG 3: Piotr Jabłoński - Realizacja styku międzyoperatorskiego dla usług L...
PROIDEA13 vues
PLNOG 8: Krzysztof Konkowski - GigabitEthernetem routera agregacyjnego do nie... par PROIDEA
PLNOG 8: Krzysztof Konkowski - GigabitEthernetem routera agregacyjnego do nie...PLNOG 8: Krzysztof Konkowski - GigabitEthernetem routera agregacyjnego do nie...
PLNOG 8: Krzysztof Konkowski - GigabitEthernetem routera agregacyjnego do nie...
PROIDEA5 vues
PLNOG 9: Krzysztof Mazepa - Dostęp szerokopasmowy IPv6 par PROIDEA
PLNOG 9: Krzysztof Mazepa - Dostęp szerokopasmowy IPv6PLNOG 9: Krzysztof Mazepa - Dostęp szerokopasmowy IPv6
PLNOG 9: Krzysztof Mazepa - Dostęp szerokopasmowy IPv6
PROIDEA51 vues
PLNOG 6: Piotr Jabłoński - Praktyczne aspekty implementacji IGP par PROIDEA
PLNOG 6: Piotr Jabłoński - Praktyczne aspekty implementacji IGP PLNOG 6: Piotr Jabłoński - Praktyczne aspekty implementacji IGP
PLNOG 6: Piotr Jabłoński - Praktyczne aspekty implementacji IGP
PROIDEA33 vues
Złam zasady i stwórz wydajny stos IP przy użyciu DPDK par Semihalf
Złam zasady i stwórz wydajny stos IP przy użyciu DPDKZłam zasady i stwórz wydajny stos IP przy użyciu DPDK
Złam zasady i stwórz wydajny stos IP przy użyciu DPDK
Semihalf811 vues
PLNOG 6: Piotr Wojciechowski - IPv6 - dwa kliknięcia i działa par PROIDEA
PLNOG 6: Piotr Wojciechowski - IPv6 - dwa kliknięcia i działa PLNOG 6: Piotr Wojciechowski - IPv6 - dwa kliknięcia i działa
PLNOG 6: Piotr Wojciechowski - IPv6 - dwa kliknięcia i działa
PROIDEA58 vues
PLNOG15: IP services architecture with TDM quality in MPLS/IP networks - Mare... par PROIDEA
PLNOG15: IP services architecture with TDM quality in MPLS/IP networks - Mare...PLNOG15: IP services architecture with TDM quality in MPLS/IP networks - Mare...
PLNOG15: IP services architecture with TDM quality in MPLS/IP networks - Mare...
PROIDEA155 vues
PLNOG 8: Bartłomiej Anszperger - MPLS - Co to jest? Z czym to gryźć? Jak i po... par PROIDEA
PLNOG 8: Bartłomiej Anszperger - MPLS - Co to jest? Z czym to gryźć? Jak i po...PLNOG 8: Bartłomiej Anszperger - MPLS - Co to jest? Z czym to gryźć? Jak i po...
PLNOG 8: Bartłomiej Anszperger - MPLS - Co to jest? Z czym to gryźć? Jak i po...
PROIDEA35 vues
PLNOG 5: Bartosz Kiziukiewicz, Marcin Wójcik - Praktyczne wskazówki projektow... par PROIDEA
PLNOG 5: Bartosz Kiziukiewicz, Marcin Wójcik - Praktyczne wskazówki projektow...PLNOG 5: Bartosz Kiziukiewicz, Marcin Wójcik - Praktyczne wskazówki projektow...
PLNOG 5: Bartosz Kiziukiewicz, Marcin Wójcik - Praktyczne wskazówki projektow...
PROIDEA52 vues

Similaire à PLNOG 8: Łukasz Bromirski - IP Anycast - Ochrona i skalowanie usług sieciowych

PLNOG 9: Marcin Aronowski - Unified MPLS par
PLNOG 9: Marcin Aronowski - Unified MPLSPLNOG 9: Marcin Aronowski - Unified MPLS
PLNOG 9: Marcin Aronowski - Unified MPLSPROIDEA
8 vues35 diapositives
PLNOG 9: Łukasz Bromirski, Rafał Szarecki - MPLS VPN - Architektura i przeglą... par
PLNOG 9: Łukasz Bromirski, Rafał Szarecki - MPLS VPN - Architektura i przeglą...PLNOG 9: Łukasz Bromirski, Rafał Szarecki - MPLS VPN - Architektura i przeglą...
PLNOG 9: Łukasz Bromirski, Rafał Szarecki - MPLS VPN - Architektura i przeglą...PROIDEA
24 vues27 diapositives
Przemyslaw Misiak - Wdrazanie mechanizmow QoS w sieciach MPLS par
Przemyslaw Misiak -  Wdrazanie mechanizmow QoS w sieciach MPLSPrzemyslaw Misiak -  Wdrazanie mechanizmow QoS w sieciach MPLS
Przemyslaw Misiak - Wdrazanie mechanizmow QoS w sieciach MPLSPROIDEA
108 vues68 diapositives
PLNOG19 - Konrad Kulikowski - Segment Routing – okiem praktyka par
 PLNOG19 - Konrad Kulikowski - Segment Routing – okiem praktyka PLNOG19 - Konrad Kulikowski - Segment Routing – okiem praktyka
PLNOG19 - Konrad Kulikowski - Segment Routing – okiem praktykaPROIDEA
55 vues51 diapositives
PLNOG 6: Łukasz Bromirski, Rafał Szarecki - Przełączniki i Routery - co jest ... par
PLNOG 6: Łukasz Bromirski, Rafał Szarecki - Przełączniki i Routery - co jest ...PLNOG 6: Łukasz Bromirski, Rafał Szarecki - Przełączniki i Routery - co jest ...
PLNOG 6: Łukasz Bromirski, Rafał Szarecki - Przełączniki i Routery - co jest ...PROIDEA
77 vues50 diapositives
PLNOG15: BGP Route Reflector from practical point of view par
PLNOG15: BGP Route Reflector from practical point of viewPLNOG15: BGP Route Reflector from practical point of view
PLNOG15: BGP Route Reflector from practical point of viewPROIDEA
215 vues46 diapositives

Similaire à PLNOG 8: Łukasz Bromirski - IP Anycast - Ochrona i skalowanie usług sieciowych (20)

PLNOG 9: Marcin Aronowski - Unified MPLS par PROIDEA
PLNOG 9: Marcin Aronowski - Unified MPLSPLNOG 9: Marcin Aronowski - Unified MPLS
PLNOG 9: Marcin Aronowski - Unified MPLS
PROIDEA8 vues
PLNOG 9: Łukasz Bromirski, Rafał Szarecki - MPLS VPN - Architektura i przeglą... par PROIDEA
PLNOG 9: Łukasz Bromirski, Rafał Szarecki - MPLS VPN - Architektura i przeglą...PLNOG 9: Łukasz Bromirski, Rafał Szarecki - MPLS VPN - Architektura i przeglą...
PLNOG 9: Łukasz Bromirski, Rafał Szarecki - MPLS VPN - Architektura i przeglą...
PROIDEA24 vues
Przemyslaw Misiak - Wdrazanie mechanizmow QoS w sieciach MPLS par PROIDEA
Przemyslaw Misiak -  Wdrazanie mechanizmow QoS w sieciach MPLSPrzemyslaw Misiak -  Wdrazanie mechanizmow QoS w sieciach MPLS
Przemyslaw Misiak - Wdrazanie mechanizmow QoS w sieciach MPLS
PROIDEA108 vues
PLNOG19 - Konrad Kulikowski - Segment Routing – okiem praktyka par PROIDEA
 PLNOG19 - Konrad Kulikowski - Segment Routing – okiem praktyka PLNOG19 - Konrad Kulikowski - Segment Routing – okiem praktyka
PLNOG19 - Konrad Kulikowski - Segment Routing – okiem praktyka
PROIDEA55 vues
PLNOG 6: Łukasz Bromirski, Rafał Szarecki - Przełączniki i Routery - co jest ... par PROIDEA
PLNOG 6: Łukasz Bromirski, Rafał Szarecki - Przełączniki i Routery - co jest ...PLNOG 6: Łukasz Bromirski, Rafał Szarecki - Przełączniki i Routery - co jest ...
PLNOG 6: Łukasz Bromirski, Rafał Szarecki - Przełączniki i Routery - co jest ...
PROIDEA77 vues
PLNOG15: BGP Route Reflector from practical point of view par PROIDEA
PLNOG15: BGP Route Reflector from practical point of viewPLNOG15: BGP Route Reflector from practical point of view
PLNOG15: BGP Route Reflector from practical point of view
PROIDEA215 vues
PLNOG 7: Bartłomiej Anszperger - MPLS - trochę głębiej par PROIDEA
PLNOG 7: Bartłomiej Anszperger - MPLS - trochę głębiej PLNOG 7: Bartłomiej Anszperger - MPLS - trochę głębiej
PLNOG 7: Bartłomiej Anszperger - MPLS - trochę głębiej
PROIDEA70 vues
PLNOG 6: Bartłomiej Anszperger - MPLS par PROIDEA
PLNOG 6: Bartłomiej Anszperger - MPLSPLNOG 6: Bartłomiej Anszperger - MPLS
PLNOG 6: Bartłomiej Anszperger - MPLS
PROIDEA17 vues
Projekcik Routery2 par arkulik
Projekcik Routery2Projekcik Routery2
Projekcik Routery2
arkulik1.6K vues
PLNOG 5: Łukasz Bromirski - Wysoka dostępność w sieciach operatorskich par PROIDEA
PLNOG 5: Łukasz Bromirski - Wysoka dostępność w sieciach operatorskich PLNOG 5: Łukasz Bromirski - Wysoka dostępność w sieciach operatorskich
PLNOG 5: Łukasz Bromirski - Wysoka dostępność w sieciach operatorskich
PROIDEA73 vues
PLNOG 7: Marcin Aronowski - MPLS dla "tradycyjnego" operatora telekomunikacyj... par PROIDEA
PLNOG 7: Marcin Aronowski - MPLS dla "tradycyjnego" operatora telekomunikacyj...PLNOG 7: Marcin Aronowski - MPLS dla "tradycyjnego" operatora telekomunikacyj...
PLNOG 7: Marcin Aronowski - MPLS dla "tradycyjnego" operatora telekomunikacyj...
PROIDEA26 vues
Łukasz Bromirski - Najlepsze praktyki zabezpieczania sieci klasy operatorskiej par PROIDEA
Łukasz Bromirski - Najlepsze praktyki zabezpieczania sieci klasy operatorskiejŁukasz Bromirski - Najlepsze praktyki zabezpieczania sieci klasy operatorskiej
Łukasz Bromirski - Najlepsze praktyki zabezpieczania sieci klasy operatorskiej
PROIDEA45 vues
PLNOG 6: Mikołaj Chmura - System IPTV i sieć GPON - praktyka wdrożeń par PROIDEA
PLNOG 6: Mikołaj Chmura - System IPTV i sieć GPON - praktyka wdrożeńPLNOG 6: Mikołaj Chmura - System IPTV i sieć GPON - praktyka wdrożeń
PLNOG 6: Mikołaj Chmura - System IPTV i sieć GPON - praktyka wdrożeń
PROIDEA23 vues
PLNOG20 - Krzysztof Mazepa - Transformacja poprzez innowacje par PROIDEA
PLNOG20 - Krzysztof Mazepa - Transformacja poprzez innowacjePLNOG20 - Krzysztof Mazepa - Transformacja poprzez innowacje
PLNOG20 - Krzysztof Mazepa - Transformacja poprzez innowacje
PROIDEA41 vues
PLNOG 4: Piotr Jabłoński - Podstawy MPLS par PROIDEA
PLNOG 4: Piotr Jabłoński - Podstawy MPLSPLNOG 4: Piotr Jabłoński - Podstawy MPLS
PLNOG 4: Piotr Jabłoński - Podstawy MPLS
PROIDEA53 vues
PLONG 21: Marcel Guzenda - Chmura_prywatna_w_wydaniu_Hiperkonwergentnym par PROIDEA
PLONG 21: Marcel Guzenda - Chmura_prywatna_w_wydaniu_HiperkonwergentnymPLONG 21: Marcel Guzenda - Chmura_prywatna_w_wydaniu_Hiperkonwergentnym
PLONG 21: Marcel Guzenda - Chmura_prywatna_w_wydaniu_Hiperkonwergentnym
PROIDEA29 vues
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFX par PROIDEA
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFXPLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFX
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFX
PROIDEA165 vues
PLNOG14: Nowości w protokole BGP, optymalizacja routingu na brzegu sieci - Łu... par PROIDEA
PLNOG14: Nowości w protokole BGP, optymalizacja routingu na brzegu sieci - Łu...PLNOG14: Nowości w protokole BGP, optymalizacja routingu na brzegu sieci - Łu...
PLNOG14: Nowości w protokole BGP, optymalizacja routingu na brzegu sieci - Łu...
PROIDEA421 vues
PLNOG 6: Łukasz Bromirski - Protokoły warstwy 2 - Przegląd dostępnych opcji par PROIDEA
PLNOG 6: Łukasz Bromirski - Protokoły warstwy 2 - Przegląd dostępnych opcji PLNOG 6: Łukasz Bromirski - Protokoły warstwy 2 - Przegląd dostępnych opcji
PLNOG 6: Łukasz Bromirski - Protokoły warstwy 2 - Przegląd dostępnych opcji
PROIDEA75 vues
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en... par PROIDEA
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...
PLNOG 18 - Sebastian Pasternacki - Bezpieczeństwo sieci operatorskich oraz en...
PROIDEA121 vues

PLNOG 8: Łukasz Bromirski - IP Anycast - Ochrona i skalowanie usług sieciowych

  • 1. 1 IP Anycast Ochrona i skalowanie usług sieciowych Łukasz Bromirski lbromirski@cisco.com
  • 2. 2 Agenda §  IP Anycast – co to jest? §  Jak wykorzystać IP Anycast? §  Rozważania projektowe dla DNS §  Rozważania projektowe dla HTTP §  Q&A
  • 4. 4 Trochę o historii… §  Wykrywanie nowych usług – SNTPv4 (RFC 2030) oraz NTP "manycast" (RFC 4330) §  Pierwszy mechanizm przechodzenia na IPv6 (RFC 2893) a potem 6to4 (RFC 3068) §  Użycie anycastów dla RP – MSDP i PIM (RFC 4610) §  W IPv6 pierwsze RFC (RFC 1884, 2373 i 3513) zabraniały używania adresu anycastowego jako adresu źródłowego; zniesiono to ograniczenie w RFC 4291 §  Zastosowanie anycastów w systemie DNS (RFC 3258) wspomina wykorzystanie "shared unicast" To nic nowego, ale nadal działa dobrze J
  • 5. 5 IP Anycast §  Prosty, efektywny, szeroko używany J §  Niezależny od warstwy trzeciej zarówno IPv4 jak i IPv6 działają – po prostu RFC mówi o specjalnych adresach anycast – ale większość technik skalowania, w tym te najpowszechniejsze – wykorzystują podejście 'shared unicast'
  • 6. 6 IP Anycast §  Jest bardzo uniwersalny §  Może być wykorzystywany zamiast lub równocześnie z: równoważeniem obciążenia w L3/L4 dodawaniem usług IP w sposób tradycyjny §  W przeciwieństwie do powszechnego przekonania, IP Anycast może być również używany do skalowania usług TCP* * więcej o tym później, pamiętajcie jednak że Wasze rezultaty mogą się różnić
  • 10. 10 Rozwiązanie pierwsze: rośniemy wszerz "Zainstalujmy loadbalancer i dodajmy serwerów" sieć VIP: 1.1.1.1/32 1.1.5.10/24 1.1.5.11/24 1.1.5.12/24 1.1.5.13/24
  • 11. 11 Po zastosowaniu VIPa i serwerów 1.1.1.1/32
  • 12. 12 …ale połączenia się przeciążają… 1.1.1.1/32
  • 13. 13 …i tylko część użytkowników ma dostęp 1.1.1.1/32
  • 14. 14 A może zreplikujemy to samo IP? 1.1.1.1/32 1.1.1.1/32
  • 15. 15 Zreplikowana usługa 1.1.1.1/32 1.1.1.1/32 Mechanizm routingu wybierze drogę o najmniejszym koszcie pomiędzy klientem a serwerem Każdy z hostów zostanie skierowany do "najbliższej" instancji usługi Należy zadbać o usuwanie niedziałających instancji Działa dla IP, MPLS/IP i dowolnego protokołu routingu R1> show ip route! I 1.1.1.1/32 [115/10] via 192.168.11.6! R3> show ip route! I 1.1.1.1/32 [115/20] via 192.168.73.7! ! R7> show ip route! I 1.1.1.1/32 [115/10] via 192.168.77.6! ! R1 R7 R3 R5
  • 16. 16 1.1.1.1/32 Zreplikowana usługa 1.1.1.1/32 Replikacja zapewni wysoką dostępność "Śmierć" jednej instancji spowoduje zniknięcie jej z IGP, jeśli IGP będzie o tym wiedział Ilość stopni redundancji zależy od ilości instancji R1> show ip route! I 1.1.1.1/32 [115/20] via 192.168.17.7! R3> show ip route! I 1.1.1.1/32 [115/20] via 192.168.73.7! ! R7> show ip route! I 1.1.1.1/32 [115/10] via 192.168.77.6! ! R1 R7 R3 R7> show ip route! I 1.1.1.1/32 [115/10] via 192.168.77.6! ! R5
  • 17. 17 Zreplikowana usługa 1.1.1.1/32 Automatyczne rozkładanie obciążenia w L3/L4 Uwaga na usługi TCP – oraz ogólnie, na usługi utrzymujące dłuższe połączenia R3> show ip route! I 1.1.1.1/32 [115/20] via 192.168.13.1! via 192.168.37.7! R1 R7 R3 R5 1.1.1.1/32
  • 18. 18 IP Anycast w służbie DNS
  • 19. 19 Problemy tradycyjne §  Brak stosowania "best practices" Serwery DNS usytuowane są zwykle w jednym miejscu (z punktu widzenia topologii sieci) co oznacza, że stają się łatwym celem dla ataków i zwiększa ryzyko ich zniknięcia w przypadku awarii wyeliminowanie serwerów i łącz do nich nigdy nie było prostsze Nawet jeśli serwery DNS znajdują się w różnych miejscach sieci, przyciągają różny ruch – do różnych IP atak na 2-3 adresy lub podsieci jest nadal bardzo prosty do przeprowadzenia przełączenie się z pierwszego adresu na drugi przy rozwiązywaniu nazw nadal nie wychodzi dobrze większości popularnych systemów operacyjnych
  • 20. 20 Problemy tradycyjne §  Skalowalność: większość klientów DNS (resolverów) w stosowanych powszechnie systemach operacyjnych nie radzi sobie dobrze z więcej niż 1-2 serwerami DNS czasami można dodać więcej, ale rzadko robi to realną różnicę* możesz serwować różne adresy DNS w różnych częściach swojej sieci, ale jest to trudne do zarządzania i utrzymania można też dodać lokalny load-balancing na wiele różnych adresów IP – sprzętowo lub programowo to jednak też dodaje złożoności do całości rozwiązania
  • 21. 21 Kto używa IP anycastu dla DNS? §  "Prawie" wszyscy! J * Mapa CAIDA dla DNS: http://www.caida.org/research/dns/influence-map/
  • 22. 22 Mapa root serwerów DNS http://www.root-servers.org/
  • 23. 23 Ochrona serwerów root DNS anycastem
  • 24. 24 Rozwiązanie IP anycastu dla DNS W detalach sieć em0:1.1.5.10/24 em0:1.1.5.11/24 em0:1.1.5.12/24 em0:1.1.5.13/24lo0: 1.1.1.1/32 
 R1# sh ip route! ! *> 1.1.1.1/32! via 1.1.5.10! via 1.1.5.11! via 1.1.5.12! via 1.1.5.13! R1 R2 
 R2# sh ip route! ! *> 1.1.1.1/32! via 1.1.5.10! via 1.1.5.11! via 1.1.5.12! via 1.1.5.13! IGP: OSPF/IS-IS/EIGRP ;; ANSWER SECTION:! ns1.anycasted.com. 86400 IN A 1.1.1.1! zapytanie o adres serwera DNS Tablica routingu R1 Tablica routingu R2
  • 25. 25 Równoważenie obciążenia w dużej sieci 1.1.1.1/32 1.1.1.1/32 POZ WRO SZC GDA WAR BIA LUB KRA WRO# sh ip route! ! *> 1.1.1.1/32! via 1.1.22.2! via 1.1.18.2! Tablica routingu routera WRO
  • 26. 26 Rozwiązanie IP anycastu dla DNS §  Wymagana jest uważna konfiguracja odpowiadamy na pytania z adresu anycast, przypisanego do interfejsu loopback0 (1.1.1.1/32 & 2001:db8::100:100) sami pytamy, przeprowadzamy transfery stref/etc z adresu fizycznego interfejsu lub innego interfejsu loopback Konfiguracja systemu DNS - named options {! listen-on { 1.1.1.1; };! listen-on-v6 { 2001:db8::100:100; };! query-source address 1.1.5.10;! query-source-v6 2001:db8::34:254;! transfer-source 1.1.5.10;! transfer-source-v6 2001:db8::34:254;! };! NS1-1 named.conf options {! listen-on { 1.1.1.1; };! listen-on-v6 { 2001:db8::100:100; };! query-source address 1.1.5.11;! query-source-v6 2001:db8::34:254;! transfer-source 1.1.5.11;! transfer-source-v6 2001:db8::34:254;! };! NS1-2 named.conf
  • 27. 27 Rozwiązanie IP anycastu dla DNS §  Pomiędzy serwerem DNS a routerami należy uruchomić protokół IGP – pakiet routingu do wyboru Konfiguracja – quagga/OpenOSPFd interface em0! ip address 1.1.5.11/24! !! interface lo0! ip address 1.1.1.1/32! quagga.conf router ospf! ospf router-id 1.1.5.11! network 1.1.5.0/24 area 10! redistribute connected route-map PF-DNS! !! route-map PF-DNS permit 10! match ip address prefix-list dns-ospf! !! ip prefix-list dns-ospf permit 1.1.1.1/32! ospfd.conf
  • 28. 28 IP Anycast w służbie HTTP
  • 29. 29 Skalowanie usług TCP w ogólności §  Ilość zmian topologii wpływających na "bliskość" instancji powinna być ograniczona zmiana topologii oznacza w tej sytuacji zerwanie sesji TCP obejście problemu jest związane zwykle z synchronizacją stanów pomiędzy serwerami (bolesne, "ciężkie" - złożone) nauczenie aplikacji klienta lub urządzenia po drodze (CPE) by dawało sobie z tym radę (działa w rzeczywistych zastosowaniach*) §  Jeśli pomiędzy klientem a instancjami mamy wiele równoległych ścieżek, mogą pojawić się problemy można w prosty** sposób zmienić koszty połączeń tak aby uniknąć problemu jeśli występuje * Studium przypadku dla streamingu TCP dla usług IP anycast, NANOG #37
  • 30. 30 Usługa HTTP z IP anycast §  Dla długo trwających sesji HTTP, w szczególności z wykorzystaniem różnego rodzaju mechanizmów śledzących, jak np. cookies – przy zmianie topologii może pojawić się problem Technologie typu AJAX są lepsze do tego typu zastosowań §  Jeśli topologia zmieni się pomiędzy kolejnymi zapytaniami klienta, mogą pojawić się pewne problemy np. niezsynchronizowane/uaktualnione cookies, powodujące wyrzucenie/złe przekierowanie klienta można to oczywiście obejść wykonując synchronizację z niezależnych adresów
  • 31. 31 Gdzie znaleźć więcej informacji? §  Wykorzystanie anycastu z TCP Anycast-aware transport for content delivery networks http://dl.acm.org/citation.cfm?id=1526750 §  Wdrażanie anycastów z TCP NANOG #37 http://www.nanog.org/meetings/nanog37/abstracts.php §  BCP 126 / RFC 4786 Operation of Anycast Services http://tools.ietf.org/html/rfc4786 §  Rozważania architekturalne dla IP Anycast http://tools.ietf.org/html/draft-mcpherson-anycast-arch- implications-00