<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">On 25/04/18 13:25, Spyros Kakaroukas
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:286AF376-F4FF-4E5B-AA09-7F35E0406928@connecticore.com">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Title" content="">
<meta name="Keywords" content="">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]-->
<style><!--
/* Font Definitions */
@font-face
{font-family:Arial;
panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Webdings;
panose-1:5 3 1 2 1 5 9 6 7 3;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p
{mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle18
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
span.msoIns
{mso-style-type:export-only;
mso-style-name:"";
text-decoration:underline;
color:teal;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:595.0pt 842.0pt;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style>
<div class="WordSection1"><span style="mso-fareast-language:EN-US"
lang="EL"><o:p></o:p></span>
<p class="MsoNormal"><span style="mso-fareast-language:EN-US"
lang="EL"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="mso-fareast-language:EN-US"
lang="EL">Σχετικά με το
</span><span style="mso-fareast-language:EN-US">RPKI</span><span
style="mso-fareast-language:EN-US" lang="EL">, αν και θα
έλυνε αρκετά θέματα, θεωρώ ότι απαιτεί μεγάλο ποσοστό
υλοποίησης για να λειτουργήσει. Συνεπώς, μου φαντάζει λίγο
ουτοπικό.
</span></p>
</div>
</blockquote>
Ανοίγω ξεχωριστό thread:<br>
<br>
Για το RPKI υπάρχουν δύο (ανεξάρτητα) πράγματα που πρέπει να κάνεις:<br>
<br>
ΒΗΜΑ 1: Να δημιουργήσεις τα ROA objects σου. Αυτό είναι πιο απλό και
από τον να φτιάξεις route objects, κυριολεκτικά 5 λεπτά δουλειά.
Έχοντας κάνει αυτό το βήμα, (α) παίρνεις alerts σε περίπτωση που
γίνει hijack χώρος σου και (β) αν γίνει hijack χώρος σου, όποιος
έχει υλοποιήσει rpki στο δίκτυό του (ΒΗΜΑ 2), έχει μια ελπίδα να
δρομολογήσει σωστά κίνηση προς τον πελάτη σου. ΑΡΑ ΜΕ ΤΟ ΒΗΜΑ 1
ΕΧΕΙΣ 2 ΣΗΜΑΝΤΙΚΑ ΟΦΕΛΗ ΜΕ 5 ΛΕΠΤΑ ΑΠΟ ΤΟΝ ΧΡΟΝΟ ΣΟΥ. Το γράφω με
κεφαλαία γιατί μου είναι αδιανόητο ότι ο κόσμος ΔΕΝ το κάνει.
Πραγματικά θα ήθελα να ακούσω γιατί (ναι, κάποια συγκεκριμένα ROA,
πχ για ERX χώρο, ίσως να έχουν κάποιες δυσκολίες, αλλά τα
περισσότερα είναι πολύ εύκολα. Έστω αυτά).<br>
<br>
ΒΗΜΑ 2: Ενεργοποιείς RPKI στο δίκτυό σου. Χρειάζεται να στήσεις δύο
validators (δυο για redundancy), οι οποίοι εκτελούν τις "βαριές"
πράξεις της αποκρυπτογράφησης και μιλάνε με τους routers σου. Το
στήσιμο των παραπάνω servers είναι εξαιρετικά απλό. Έπειτα συνδέεις
τους routers σου με τους παραπάνω servers ώστε να παίρνουν τα valid
prefixes. Τέλος, προσαρμόζεις την πολιτική σου ώστε να κάνουν drop
τα Invalid (ή και τα unknown) ή έστω να τα χειρίζονται με χειρότερη
προτεραιότητα. Επειδή ακόμα το RPKI έχει μικρό adoption, τα hard
actions (drop) μάλλον δεν είναι καλή ιδέα, αλλά ο χειρισμός με
χειρότερη προτεραιότητα είναι μια χαρά. Για παράδειγμα, αν η
πολιτική σου ήταν: <br>
Upstreams - Local Pref 200<br>
IX - Local Pref 210<br>
Customers - Local Pref 220<br>
<br>
Την προσαρμόζεις σε:<br>
<br>
Upstreams && Valid - Local Pref 300<br>
IX && Valid - Local Pref 310<br>
Customers && Valid - Local Pref 320<br>
<br>
Upstreams && Unknown - Local Pref 200<br>
IX && Unknown - Local Pref 210<br>
Customers && Unknown Local Pref 220<br>
<br>
Upstreams && Invalid - Local Pref 100<br>
IX && Invalid - Local Pref 110<br>
Customers && Invalid Local Pref 120<br>
<br>
Mε αυτό τον τρόπο, αν πχ κάποιο prefix που έχει ROA γίνει hijack
(invalid) από κάποιο δίκτυο πίσω από κάποιο peer στο ΙΧ ή από πίσω
από τον ένα εκ των δύο upstream, το valid prefix που θα πάρεις από
τον άλλο upstream (valid) θα προτιμηθεί.<br>
<br>
Είναι αρκετά απλό στην υλοποίηση. Περισσότερα εδώ <br>
<a class="moz-txt-link-freetext" href="https://www.grnog.gr/wp-content/uploads/sites/7/2015/12/2.%CE%91.%CE%A0%CE%BF%CE%BB%CF%85%CF%81%CE%AC%CE%BA%CE%B7%CF%82.pdf">https://www.grnog.gr/wp-content/uploads/sites/7/2015/12/2.%CE%91.%CE%A0%CE%BF%CE%BB%CF%85%CF%81%CE%AC%CE%BA%CE%B7%CF%82.pdf</a><br>
<br>
Αν υπάρχει ενδιαφέρον μπορούμε να κάνουμε ένα μικρό hackαθλον
ενεργοποίησης RPKI (έστω το βήμα 1).<br>
<br>
Ανδρέας<br>
<br>
<span style="font-family:"Courier",serif"></span>
<pre class="moz-signature" cols="72">--
Andreas Polyrakis
GR-IX Manager // GRNET NOC Technical Manager
GRNET - Networking Research and Education
7, Kifisias Av., 115 23, Athens
t: +30 210 7474249 | c: +30 697 2832 445 | f: +30 210 7474490
Follow us: <a class="moz-txt-link-abbreviated" href="http://www.grnet.gr">www.grnet.gr</a>
Twitter: @grnet_gr | Facebook: @grnet.gr
LinkedIn: grnet | YouTube: GRNET EDET
</pre>
</body>
</html>