Як відфільтрувати непридатні префікси, отримані через BGP від ​​Internet Exchange (IXP)?


14

Підключившись до Інтернет-пирингової біржі (IXP), який хороший спосіб переконатися, що люди не надсилають вам префікси, які вони не повинні оголошувати?

Що стосується болонів, то я знаю про проект « Ссилка рейтингу команди Cymru Bogon », але коли справа стосується фільтрації будь-чого іншого від однолітків, я не маю уявлення з чого почати. Я розумію, що це RPKI та подібні?


чому б не просто однолітків eBGP з ними та префіксів чорного отвору в таблиці маршрутизації?

Відповіді:


13

Як заявили інші, RPKI був би шляхом, але його поки немає. У пунктах обміну ми зазвичай ставимо максимальний префікс для кожного сеансу.

Додатково ми використовуємо наступні правила:

  1. Немає маршруту за замовчуванням

  2. Без бог, точніше цього списку:

    route-filter 0.0.0.0/8 orlonger reject;
    route-filter 127.0.0.0/8 orlonger reject;
    route-filter 10.0.0.0/8 orlonger reject;
    route-filter 172.16.0.0/12 orlonger reject;
    route-filter 192.168.0.0/16 orlonger reject;
    route-filter 224.0.0.0/4 orlonger reject;
    route-filter 240.0.0.0/4 orlonger reject;
    route-filter 169.254.0.0/16 orlonger reject;
    route-filter 192.0.2.0/24 orlonger reject;
    route-filter 198.51.100.0/24 orlonger reject;
    route-filter 203.0.113.0/24 orlonger reject;
    route-filter 100.64.0.0/10 orlonger reject;
    
  3. Немає префіксів довше ніж / 24

  4. У шляху немає приватних номерів AS

  5. Жоден із наших власних префіксів

Для IPv6 ми робимо те саме, тільки богони відрізняються. Я вставив наш фільтр нижче цього. Зауважте, що синтаксис може бути дещо дивним, але це пов’язано із способом узгодження префіксів Juniper. Для синтаксису Cisco можна перейти сюди: рекомендації щодо фільтру IPv6 BGP (Приклад Juniper на сторінці баггі, будь-ласка, будь ласка, скористайтеся наведеним нижче).

термін ebgp-relax {
    від {
        сімейний інет6;
        маршрут-фільтр 3ffe :: / 16 або довше;
        маршрут-фільтр 0000 :: / 8 або довше;
        route-filter 2001: db8 :: / 32 або довше;
        route-filter 2001 :: / 32 точна наступна політика;
        route-filter 2001 :: / 32 довше;
        route-filter 2002 :: / 16 точна наступна політика;
        route-filter 2002 :: / 16 довше;
        маршрут-фільтр fe00 :: / 9 або довше;
        route-filter ff00 :: / 8 або довше;
        route-filter 2000 :: / 3 префікс-length-range / 49- / 128;
        route-filter 0 :: / 0 або довше;
    }
    потім відхилити;
}

11

На даний момент (поки RPKI не має більшого поширення), ми зазвичай просто фільтруємо загальні богони та застосовуємо фільтр max-префіксу для обміну однолітками. Ми також фільтруємо певні ASN, такі, на які ми впевнені, що ніколи не з’являться в більшості сеансів, що відповідають рівню, наприклад, Level3 або Cogent, або не повинні переходити через обмін.

Зазвичай ми виявляємо, що більшість поширених витоків маршруту не знаходяться в межах 1-2 знаків. Це все-таки важко зловити, якщо тільки ви не фільтруєте всіх своїх однолітків, будуючи префікс / список ASN або фільтруючи за допомогою radb тощо. Більшість витоків виявляються ближче до 10k-100k +, що легко потрапляє досить низько (100-500 ) фільтр max-префікса. Потім ви можете налаштувати цей сеанс за потребою.


7

Залежно від того, яким чином ви користуєтеся перинговою біржею, у вас є кілька різних варіантів:

По-перше, я розкрию RPKI і скажу, що, хоча це вам обов'язково потрібно продовжувати і розгортати, як для власних маршрутів, так і для перевірки інших, це, на жаль, настільки низьке використання, що ви не можете в цей момент очікувати, що він зробить все так багато. Справжнє рішення тут WHOIS - RaDB Merit - це, мабуть, найкраще, оскільки це дозволить одразу повернути результати для всіх RIR. Але якщо ви віддаєте перевагу запиту кожного RIR безпосередньо, перейдіть до цього.

Тепер, якщо ви перебуваєте на обміні, і ви просто отримуєте купу префіксів маршрутизатора сервера IXP, залежно від інструментів, які вам доступні, та можливостей вашого маршрутизатора, у вас є дві можливості:

   1. Фільтр за походженням AS

По суті, це полягає у валідації початкового AS префікса проти того, який є в WHOIS - якщо походження AS не відповідає тому, яке є в WHOIS, ви викинете префікс та будь-які інші конкретики, які також можуть бути оголошені. Це, як правило, хороший захист від ненавмисних викрадань. Переважна більшість префіксів повинні мати ці дані.

   2. Фільтр транзитом AS

Це зробить крок далі і фільтрує маршрути з будь-якою АС на шляху, який не дозволений в рамках WHOIS - ви не можете зробити це для кожного префікса, однак, оскільки не всі створили об'єкти, вказуючи, хто їх уповноважені транзитні постачальники AS.


З іншого боку, якщо ви використовуєте перинговий обмін, щоб безпосередньо поглянути на інших, то ваше життя стає набагато простішим; ви можете знайти, які префікси вони мають у WHOIS, і дозволити їх. На мій погляд, хороша практика полягає в тому, щоб дозволити одноліткам оголошувати детальнішу інформацію до максимальної довжини / 24, а також встановлювати чутливе значення максимальної префікса (тобто пропорційне кількості підмереж, яке вони мають) для вашого пілінгу, щоб вони могли ' t затопить вас маршрутами, але може відповісти на викрадення префікса.

Якщо ви шукаєте інструменти, перегляньте IRRToolSet та IRR PowerTools


5

Ви в основному відповіли на власне запитання. Ваше припущення, що використання RPKI - це шлях, абсолютно правильне. Більш конкретно, авторизація маршруту на використання використовується для перевірки префікса AS. Очевидно, що богони не будуть дійсними, оскільки вони не призначені нікому, тому ця проблема піклується про себе. Багато цієї інформації доступно на сторінці Вікіпедії RPKI . Ще один хороший ресурс - сторінка RPKI ARIN .

Якщо вам потрібна допомога з конфігурації, я пропоную вам створити ще одне запитання із запитом конкретної допомоги з налаштування.

Варто також зазначити, що RPKI не працюватиме на все, тому що не всі ним користуються. У якийсь момент вам просто доведеться довіряти маршрутам, які ви отримуєте.


0

Запитайте своїх однолітків, який AS макрос вони оголошуватимуть, і створіть для них фільтри, використовуючи IRRToolSet або rpsltool або irrpt. Закликайте їх до правильної інформації, опублікованої в IRRdb. Не забудьте оновити власний aut-numоб’єкт у найближчому дружньому IRRdb, щоб відобразити сусідство.

RPKI - це не той шлях вперед, оскільки він не захищає від протікання маршруту.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.