ЯндСкс внСдряСт RPKI

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, мСня Π·ΠΎΠ²ΡƒΡ‚ АлСксандр Азимов. Π’ ЯндСксС я занимаюсь Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… систСм ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ транспортной сСтСвой Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΎΠΉ. Но сСгодня Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ BGP.

ЯндСкс внСдряСт RPKI

НСдСлю Π½Π°Π·Π°Π΄ ЯндСкс Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ» ROV (Route Origin Validation) Π½Π° стыках со всСми ΠΏΠΈΡ€ΠΈΠ½Π³-ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π°ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ с Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°. О Ρ‚ΠΎΠΌ, Π·Π°Ρ‡Π΅ΠΌ это Π±Ρ‹Π»ΠΎ сдСлано ΠΈ ΠΊΠ°ΠΊ это повлияСт Π½Π° взаимодСйствиС с ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ связи, Ρ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π½ΠΈΠΆΠ΅.

BGP ΠΈ Ρ‡Ρ‚ΠΎ с Π½ΠΈΠΌ Π½Π΅ Ρ‚Π°ΠΊ

Π’Ρ‹ навСрняка Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ BGP задумывался ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΌΠ΅ΠΆΠ΄ΠΎΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. Однако Π·Π° врСмя ΠΏΡƒΡ‚ΠΈ число юз-кСйсов успСло подрасти: сСгодня BGP, благодаря многочислСнным Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌ, прСвратился Π² message bus, ΠΏΠΎΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΎΡ‚ опСраторского VPN Π΄ΠΎ ΠΌΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Ρ‹Π½Ρ‡Π΅ SD-WAN, ΠΈ Π΄Π°ΠΆΠ΅ нашСл ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² качСствС транспорта для SDN-like-ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰Π΅Π³ΠΎ distance vector BGP Π² Π½Π΅Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅Π΅ Π½Π° links sate-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

ЯндСкс внСдряСт RPKI

Рис. 1. BGP SAFI

ΠŸΠΎΡ‡Π΅ΠΌΡƒ BGP ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» (ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ) ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΉ? Π•ΡΡ‚ΡŒ Π΄Π²Π΅ основныС ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹:

  • BGP β€” СдинствСнный ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹ΠΌΠΈ систСмами (АБ);
  • BGP ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ TLV (type-length-value). Π”Π°, Π² этом ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π½Π΅ ΠΎΠ΄ΠΈΠ½ΠΎΠΊ, Π½ΠΎ Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π½Π΅Ρ‡Π΅ΠΌ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π° стыках ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ связи, Ρ‚ΠΎ всСгда оказываСтся Π²Ρ‹Π³ΠΎΠ΄Π½Π΅Π΅ ΠΏΡ€ΠΈΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊ Π½Π΅ΠΌΡƒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт, Ρ‡Π΅ΠΌ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π§Ρ‚ΠΎ ΠΆΠ΅ с Π½ΠΈΠΌ Π½Π΅ Ρ‚Π°ΠΊ? Если ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ, Π² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ встроСнныС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ коррСктности ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ BGP β€” это ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π°ΠΏΡ€ΠΈΠΎΡ€Π½ΠΎΠ³ΠΎ довСрия: Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΌΠΈΡ€Ρƒ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Π°ΠΌ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ ΡΠ΅Ρ‚ΡŒ РостСлСкома, МВБ ΠΈΠ»ΠΈ ЯндСкса, β€” поТалуйста!

Π€ΠΈΠ»ΡŒΡ‚Ρ€ Π½Π° основС IRRDB β€” Π»ΡƒΡ‡ΡˆΠΈΠΉ ΠΈΠ· Ρ…ΡƒΠ΄ΡˆΠΈΡ…

Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ вопрос β€” ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π² Ρ‚Π°ΠΊΠΎΠΉ ситуации ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ Π΄ΠΎ сих Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚? Π”Π°, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π½ΠΎ ΠΏΡ€ΠΈ этом пСриодичСски Π²Π·Ρ€Ρ‹Π²Π°ΡΡΡŒ, дСлая Ρ†Π΅Π»Ρ‹Π΅ Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ сСгмСнты нСдоступными. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ хакСрская Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π² BGP Ρ‚ΠΎΠΆΠ΅ растСт, большая Ρ‡Π°ΡΡ‚ΡŒ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ благодаря ошибкам. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ этого Π³ΠΎΠ΄Π° β€” ошибка нСбольшого ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π² БСларуси, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π° полчаса сдСлал нСдоступными Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ МСгаЀона. Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ β€” взбСсившийся BGP-ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ сломал ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠΈΡ… CDN-сСтСй Π² ΠΌΠΈΡ€Π΅.

ЯндСкс внСдряСт RPKI

Рис. 2. ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° Cloudflare

Но всС-Ρ‚Π°ΠΊΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊΠΈΠ΅ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Ρ€Π°Π· Π² ΠΏΠΎΠ»Π³ΠΎΠ΄Π°, Π° Π½Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дСнь? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ связи ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ внСшниС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΎΡ‚ BGP сосСдСй. Π’Π°ΠΊΠΈΡ… Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ½ΠΎΠ³ΠΎ, Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ· Π½ΠΈΡ… ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ рСгистраторами (RIPE, APNIC, ARIN, AFRINIC), Ρ‡Π°ΡΡ‚ΡŒ ΡΠ²Π»ΡΡŽΡ‚ΡΡ нСзависимыми ΠΈΠ³Ρ€ΠΎΠΊΠ°ΠΌΠΈ (самый извСстный β€” RADB), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ Ρ†Π΅Π»Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ рСгистраторов, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… ΠΊΡ€ΡƒΠΏΠ½Ρ‹ΠΌ компаниям (Level3, NTT ΠΈ ΠΏΡ€.). ИмСнно благодаря этим Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… мСТдомСнная ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΡ сохраняСт ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Однако Π΅ΡΡ‚ΡŒ Π½ΡŽΠ°Π½ΡΡ‹. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ осущСствляСтся Π½Π° основС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ROUTE-OBJECTS ΠΈ AS-SET. И Ссли ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ Ρƒ части IRRDB, Ρ‚ΠΎ для Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ класса авторизация отсутствуСт ΠΊΠ°ΠΊ класс. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΡ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² свои сСты ΠΊΠΎΠ³ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚Π΅ΠΌ самым ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ Π²Ρ‹ΡˆΠ΅ΡΡ‚ΠΎΡΡ‰ΠΈΡ… поставщиков. И Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ имСнования AS-SET ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ IRR Π½Π΅ гарантируСтся, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ эффСктам с Π²Π½Π΅Π·Π°ΠΏΠ½Ρ‹ΠΌ ΠΏΡ€ΠΎΠΏΠ°Π΄Π°Π½ΠΈΠ΅ΠΌ связности Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° связи, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ со своСй стороны Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ мСнял.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” это модСль использования AS-SET. Π—Π΄Π΅ΡΡŒ Π΄Π²Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°:

  • Когда Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° появляСтся Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΎΠ½ добавляСт Π΅Π³ΠΎ Π² свой AS-SET, Π½ΠΎ практичСски Π½ΠΈΠΊΠΎΠ³Π΄Π° Π΅Π³ΠΎ Π½Π΅ удаляСт;
  • Π‘Π°ΠΌΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° стыках с ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ.

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ соврСмСнный Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ BGP-Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² β€” это постСпСнно Π΄Π΅Π³Ρ€Π°Π΄ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ Π½Π° стыках с ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ Π°ΠΏΡ€ΠΈΠΎΡ€Π½ΠΎΠ΅ Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΎΡ‚ ΠΏΠΈΡ€ΠΈΠ½Π³-ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ΠΎΠ² ΠΈ поставщиков IP-Ρ‚Ρ€Π°Π½Π·ΠΈΡ‚Π°.

Π§Ρ‚ΠΎ ΠΆΠ΅ ΠΈΠ΄Π΅Ρ‚ Π½Π° смСну прСфикс-Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°ΠΌ Π½Π° основС AS-SET? Π‘Π°ΠΌΠΎΠ΅ интСрСсноС, Ρ‡Ρ‚ΠΎ Π² краткосрочной пСрспСктивС β€” Π½ΠΈΡ‡Π΅Π³ΠΎ. Но ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹, Π΄ΠΎΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² Π½Π° основС IRRDB, ΠΈ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ это, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, RPKI.

RPKI

Π£ΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ RPKI ΠΊΠ°ΠΊ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, записи ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ криптографичСски ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ. Π’ случаС ROA (Route Object Authorization) подписантом выступаСт Π²Π»Π°Π΄Π΅Π»Π΅Ρ† адрСсного пространства, Π° сама запись прСдставляСт собой Ρ‚Ρ€ΠΎΠΉΠΊΡƒ (prefix, asn, max_length). По сути, эта запись постулируСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ β€” Π²Π»Π°Π΄Π΅Π»Π΅Ρ† адрСсного пространства $prefix Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΠ» АБ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ $asn Π°Π½ΠΎΠ½ΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ прСфиксы с Π΄Π»ΠΈΠ½ΠΎΠΉ Π½Π΅ большС Ρ‡Π΅ΠΌ $max_length. И ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ RPKI-кэш, способны ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π½Π° соотвСтствиС ΠΏΠ°Ρ€Ρƒ прСфикс-пСрвая АБ Π² ΠΏΡƒΡ‚ΠΈ.

ЯндСкс внСдряСт RPKI

Рис 3. АрхитСктура RPKI

ROA-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π±Ρ‹Π»ΠΈ стандартизированы ΡƒΠΆΠ΅ достаточно Π΄Π°Π²Π½ΠΎ, Π½ΠΎ Π΄ΠΎ послСднСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ фактичСски ΠΎΡΡ‚Π°Π²Π°Π»ΠΈΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π±ΡƒΠΌΠ°Π³Π΅ IETF-ΠΆΡƒΡ€Π½Π°Π»Π°. На ΠΌΠΎΠΉ взгляд, ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° этого Π·Π²ΡƒΡ‡ΠΈΡ‚ ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎ β€” bad marketing. ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ стандартизации Π² качСствС стимула ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ ROA Π·Π°Ρ‰ΠΈΡ‰Π°ΡŽΡ‚ ΠΎΡ‚ ΡƒΠ³ΠΎΠ½ΠΎΠ² BGP β€” ΠΈ это Π±Ρ‹Π»ΠΎ Π½Π΅ΠΏΡ€Π°Π²Π΄ΠΎΠΉ. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ Π½Π° основС ROA, вставив ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ АБ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡƒΡ‚ΠΈ. И ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ это осознаниС ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎ, ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ Π·Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅Ρ€Π½Ρ‹ΠΌ шагом становился ΠΎΡ‚ΠΊΠ°Π· ΠΎΡ‚ использования ROA. И ΠΏΡ€Π°Π²Π΄Π°, Π·Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ тСхнология, Ссли ΠΎΠ½Π° Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚?

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΆΠ΅ ΠΏΠΎΡ€Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ своС ΠΌΠ½Π΅Π½ΠΈΠ΅? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Π½Π΅ вся ΠΏΡ€Π°Π²Π΄Π°. ROA Π½Π΅ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ ΠΎΡ‚ хакСрской активности Π² BGP, Π½ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ ΠΎΡ‚ случайных ΡƒΠ³ΠΎΠ½ΠΎΠ² Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚ ΡƒΡ‚Π΅Ρ‡Π΅ΠΊ статики Π² BGP, которая встрСчаСтся всС Ρ‡Π°Ρ‰Π΅. Π’Π°ΠΊΠΆΠ΅, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² Π½Π° основС IRR, ROV ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° стыках с ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ, Π½ΠΎ ΠΈ Π½Π° стыках с ΠΏΠΈΡ€Π°ΠΌΠΈ ΠΈ Π²Ρ‹ΡˆΠ΅ΡΡ‚ΠΎΡΡ‰ΠΈΠΌΠΈ поставщиками. Π’ΠΎ Π΅ΡΡ‚ΡŒ вмСстС с Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ΠΌ RPKI ΠΈΠ· BGP постСпСнно ΡƒΡ…ΠΎΠ΄ΠΈΡ‚ Π°ΠΏΡ€ΠΈΠΎΡ€Π½ΠΎΠ΅ Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅.

БСйчас ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΎΠ² Π½Π° основС ROA постСпСнно внСдряСтся ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ ΠΈΠ³Ρ€ΠΎΠΊΠ°ΠΌΠΈ: ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠ΅Π΅ СвропСйскиС IX ΡƒΠΆΠ΅ ΠΎΡ‚Π±Ρ€Π°ΡΡ‹Π²Π°ΡŽΡ‚ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Ρ‹, ΠΈΠ· Tier-1-ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² стоит Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ AT&T, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ» Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ Π½Π° стыках со своими ΠΏΠΈΡ€ΠΈΠ½Π³-ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π°ΠΌΠΈ. Π’Π°ΠΊΠΆΠ΅ ΠΊ снаряду подходят ΠΈ ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠΈΠ΅ поставщики ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°. А дСсятки Ρ‚Ρ€Π°Π½Π·ΠΈΡ‚Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² срСднСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΡƒΠΆΠ΅ Π΅Π³ΠΎ Ρ‚ΠΈΡ…ΠΎ Π²Π½Π΅Π΄Ρ€ΠΈΠ»ΠΈ, Π½ΠΈΠΊΠΎΠΌΡƒ ΠΎΠ± этом Π½Π΅ сказав. Π—Π°Ρ‡Π΅ΠΌ всС эти ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π²Π½Π΅Π΄Ρ€ΡΡŽΡ‚ RPKI? ΠžΡ‚Π²Π΅Ρ‚ прост: Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ свой исходящий Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΎΡ‚ Ρ‡ΡƒΠΆΠΈΡ… ошибок. ИмСнно поэтому ЯндСкс ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π² Π Π€ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ROV Π½Π° Π³Ρ€Π°Π½ΠΈΡ†Π΅ своСй сСти.

Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ дальшС?

БСйчас ΠΌΡ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° стыках с Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΈ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΌΠΈ ΠΏΠΈΡ€ΠΈΠ½Π³Π°ΠΌΠΈ. Π’ блиТайшСм Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° с Π²Ρ‹ΡˆΠ΅ΡΡ‚ΠΎΡΡ‰ΠΈΠΌΠΈ поставщиками Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°.

ЯндСкс внСдряСт RPKI

Π§Ρ‚ΠΎ это мСняСт для вас? Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ вашСй ΡΠ΅Ρ‚ΡŒΡŽ ΠΈ ЯндСксом, ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ:

  • ΠŸΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ своС адрСсноС пространство Π² ΠΏΠΎΡ€Ρ‚Π°Π»Π΅ RIPE β€” это просто, Π² срСднСм Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 5-10 ΠΌΠΈΠ½ΡƒΡ‚. Π­Ρ‚ΠΎ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ Π½Π°ΡˆΡƒ с Π²Π°ΠΌΠΈ ΡΠ²ΡΠ·Π½ΠΎΡΡ‚ΡŒ Π² случаС, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ нСвольно ΡΠΎΠ²Π΅Ρ€ΡˆΠΈΡ‚ ΡƒΠ³ΠΎΠ½ вашСго адрСсного пространства (Π° это ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ случится Ρ€Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ);
  • ΠŸΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· open source RPKI-кэшСй (ripe-validator, routinator) ΠΈ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΎΠ² Π½Π° Π³Ρ€Π°Π½ΠΈΡ†Π΅ сСти β€” это ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ тСхничСских слоТностСй, ΠΎΠΏΡΡ‚ΡŒ-Ρ‚Π°ΠΊΠΈ, Π½Π΅ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚.

ЯндСкс Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ систСмы Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π½Π° основС Π½ΠΎΠ²ΠΎΠ³ΠΎ RPKI-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° β€” ASPA (Autonomous System Provider Authorization). Π€ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ Π½Π° основС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ASPA ΠΈ ROA способны Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ «дырявыС» AS-SET, Π½ΠΎ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ вопросы MiTM-Π°Ρ‚Π°ΠΊ с использованиСм BGP.

Π― Π±ΡƒΠ΄Ρƒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ ASPA Ρ‡Π΅Ρ€Π΅Π· мСсяц Π½Π° ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ Next Hop. Π•Ρ‰Π΅ Ρ‚Π°ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ ΠΈΠ· Netflix, Facebook, Dropbox, Juniper, Mellanox ΠΈ ЯндСкса. Если Π²Π°ΠΌ интСрСсСн сСтСвой стСк ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ β€” ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚Π΅, рСгистрация ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π°.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com