Ripe database что это
RIR поддерживает базу данных распределённых IP-адресов и сопутствующих объектов (далее БД RIR), а также обязывает провайдеров заносить в эту базу информацию об используемых провайдером и его абонентами IP-адресах. Таким образом, в базе данных региональной регистратуры должны присутствовать записи и о провайдерском блоке адресов и о сетях абонентов провайдера, действующего в регионе, попадающем в зону ответственности региональной регистратуры.
Рассмотрим структуру БД RIR на примере RIPE (она также аналогична APNIC).
БД RIPE состоит из следующих записей:
- Распределение и назначения IP адресов;
- Наименования доменов;
- Информация о маршрутизации;
- Контактная информацию (информация о людях, ответственных за действие сетей или маршрутизаторов, ответственных за поддержку информации в Базе данных).
Объект БД определен как список пар в текстовом виде атрибут-значение. Каждая пара пишется в отдельной строке. Имя атрибута начинается в колонке 0, за ним следует знак «:«, а далее пишется значение атрибута. Описание объекта может содержать комментарии. Комментарий начинает со знака «#» и заканчивается концом строки. Комментарий не может начинаться вначале строки. Представление объекта заканчивается пустой строкой. Атрибуты могут быть обязательными и необязательными. Атрибуты могут быть простыми или многозначными. Многозначные атрибуты могут иметь несколько записей атрибут-значение в объекте, в то время как простой атрибут только одну. Каждый объект однозначно определяется некоторым множеством атрибутов, относящихся к классу primary key.
| [mandatory] | По крайней мере один раз этот атрибут должен быть описан в объекте. |
| [optional] | Атрибут не обязателен в объекте и может быть опущен. |
| [generated] | Атрибут автоматически генерируется сервером. |
| [single] | Объект не должен содержать боле одного включения данного атрибута. |
| [multiple] | Объект может содержать более одного включения данного атрибута. |
| [look-up key] | Атрибут индексируется (По нему можно определить данный объект). |
| [inverse key] | Атрибут является внешним ключом. |
| [primary key] | Атрибут является первичным ключом (или его частью). |
| Атрибут является и первичным ключом (или его частью), и индексируемым. |
Рассмотрим объекты inetnum, person, role.
Первая колонка представляет собой атрибут, вторая и третья – определяют тип атрибута, а четвёртая обозначает, является ли атрибут каким-либо ключом в базе данных.
-
Объект inetnum содержит информацию о назначении и распределении адресного пространства IPv4
| inetnum: | [mandatory] | [single] | [primary/lookup key] |
| netname: | [mandatory] | [single] | [lookup key] |
| descr: | [mandatory] | [multiple] | [ ] |
| country: | [mandatory] | [multiple] | [ ] |
| admin-c: | [mandatory] | [multiple] | [inverse key] |
| tech-c: | [mandatory] | [multiple] | [inverse key] |
| rev-srv: | [optional] | [multiple] | [inverse key] |
| status: | [mandatory] | [single] | [ ] |
| remarks: | [optional] | [multiple] | [ ] |
| notify: | [optional] | [multiple] | [inverse key] |
| mnt-by: | [mandatory] | [multiple] | [inverse key] |
| mnt-lower: | [optional] | [multiple] | [inverse key] |
| mnt-routes: | [optional] | [multiple] | [inverse key] |
| mnt-irt: | [optional] | [multiple] | [inverse key] |
| changed: | [mandatory] | [multiple] | [ ] |
| source: | [mandatory] | [single] | [ ] |
inetnum: <ipv4-адрес> — <ipv4-адрес> Определяет диапазон IPv4. Конечный адрес должен быть больше, чем начальный. country: <country-code> Определяет страну . < Country — code > должен быть действительным двухбуквенным кодом страны по ISO 3166. admin-c <nic-handle> Ссылается на местное административное контактное лицо(организацию). tech-c: <nic-handle> Ссылается на контактное лицо техперсонала(организацию). status: Возможные значения этого атрибута таковы:
ALLOCATED PA: Это пространство адресов было выделено LIR, и ни одно назначение или суб-выделение, сделанное из него, не является переносимым. Назначения и суб-выделения не могут быть сохранены при переходе к другому поставщику.
ALLOCATED PI: Это пространство адресов было выделено LIR или RIR, и все сделанные оттуда назначения являются переносимыми. Назначения могут быть сохранены, столь долго, сколь сохраняет действие исходный критерий назначения. Суб-выделения из этого типа адресного пространства производиться не могут.
ALLOCATED UNSPECIFIED: Это пространство адресов было выделено LIR или RIR. Назначения могут быть PA или PI. Этот статус предназначен для документирования прошлых выделений, где существуют назначения обоих типов. Он не употребляется для новых выделений. Суб-выделения из этого типа адресного пространства производиться не могут.
SUB-ALLOCATED PA: Это пространство адресов LIR суб-выделил для сетевого оператора, который будет производить из него назначения. Все сделанные оттуда назначения являются PA. Они не могут быть сохранены при переходе на обслуживание к другому поставщику.
LIR-PARTITIONED PA: Это позволяет LIR документировать распределение и передать управление выделенным пространством внутри своей организации. Пространство адресов со статусом LIR-PARTITIONED не считается используемым. Когда адреса используются, более специфичный inetnum должен быть зарегистрирован.
LIR-PARTITIONED PI: Это позволяет LIR документировать распределение и передать управление выделенным пространством внутри своей организации. Пространство адресов со статусом LIR-PARTITIONED не считается используемым. Когда адреса используются, более специфичный inetnum должен быть зарегистрирован.
EARLY-REGISTRATION: Это используется администрацией базы данных RIPE при передаче регистраций эпохи до RIR из базы данных ARIN. Это значение может быть изменено пользователями базы данных. Только администраторы базы данных RIPE могут создавать объекты с таким значением.
NOT-SET: Это означает, что регистрация была произведена, до того как атрибут «status:» стал обязателен для объектов inetnum. Объект не был с тех пор скорректирован. Новые объекты не могут быть созданы с таким значением. Значение может быть изменено пользователями базы данных.
ASSIGNED PA: Это пространство адресов было назначено конечному пользователю для пользования услугами, предоставляемыми выдающей LIR. Оно не может быть сохранено после завершения использования услуг, предоставляемых этой LIR.
ASSIGNED PI: Это пространство адресов было назначено конечному пользователю и может сохраняться за ним сколь угодно долго, пока исходный критерий назначения действителен.
Создание объекта inetnum со статусом «ASSIGNED PA» или «ASSIGNED PI» возможно, только если не существует меньшего или большего по размерам пересекающегося по пространству адресов (специфичного) объекта inetnum со статусом «ASSIGNED».
Пространство адресов без явно прописанного типа в атрибуте «status:» принимается за PI. LIRы должны чётко обозначать все новые назначения в базе данных RIPE как «PA» либо «PI» соответственно.
RIPE NCC более не выделяет пространство адресов PI. Следовательно, у многих LIR нет выделенных им адресов PI, из которых они могут назначать адреса PI. Если у LIR есть конечный пользователь, которому требуется пространство адресов PI, она может поддержать его, отправляя запросы в RIPE NCC от имени конечного пользователя. Эта поддержка включает в себя помощь конечным пользователям в подготовке соответствующим образом документированного запроса. RIPE NCC произведёт назначение адресов PI, когда это оправдано.
Name already in use
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
RIPE Whois Database
Running Integration Tests for Development
It is preferable to write integration tests during development, and commit them along with any code changes. All dependencies apart from the database are mocked.
Running Whois Locally For Development
You can run a standalone Whois server locally. Dependencies must be configured in a local properties file.
Running within an IDE
Running outside an IDE
- See Installation instructions.
Configure pre-commit hooks
Pre-commit hook can be found in tools/precommitcheck . This can be optionally configured by running: ln -fsv tools/precommitcheck .git/hooks/pre-commit
Run a single integration test
mvn clean install -DfailIfNoTests=false -Pintegration -Dit.test=NrtmClientInvalidHostTestIntegration
Run all integration tests in a single module
mvn clean install -Pintegration -pl whois-query
Configure Ajc (AspectJ) Compiler
Whois uses AspectJ to perform compile-time aspect weaving of the code. This is needed for some functionality, e.g. the @RetryFor annotation.
Compile-time weaving works during a command-line Maven build, as the pom.xml uses aspectj-maven-plugin.
Any code that depends on AspectJ will fail if modified in IntelliJ without using the Ajc (AspectJ) compiler.
Основы работы с базой данных RIPE
Данная статья задумывалась как отправная точка, которая поможет новичкам быстро вникнуть в суть работы с БД RIPE, чтобы в голове сложилась целостная картина и понимание, для чего в ней используются те или иные объекты. Отмечу, что данная статья дает только общее представление о работе с данной системой, не описывая детальные шаги, но тем не менее я надеюсь, что после прочтения вам будет легче разобраться в вопросе.
Рано или поздно большинство сетевых инженеров сталкиваются с необходимостью взаимодействия с базой данных RIPE. Например, если вы устроились на работу в компанию, предоставляющую доступ в интернет, или организацию, которая владеет собственной автономной системой, то вам с 99%-ной вероятностью потребуется периодически добавлять/удалять и поддерживать актуальной какую-то информацию в БД RIPE. Даже просматривая вакансии при поиске работы, иногда можно наткнуться на требование «Умение работать с RIPE».
Также в ходе своей работы, решении каких-то задач или устранении неполадок, вам может потребоваться, например, следующее: узнать контактные данные технических специалистов, администрирующих блоки определенных IP-адресов, уточнить политику маршрутизации, которая применяется в соседней с вами автономной системе, или направить жалобу о неправомерном использовании IP-адресов, принадлежащих какой-то организации и т. д. Когда сталкиваешься с этими задачами впервые, можно немного растеряться. Так что умение работать с БД RIPE и понимание того, как найти в ней необходимую информацию – это полезный и нужный навык.
В ходе данной статьи я попробую ответить на вопросы: что из себя представляет БД RIPE? Какие функции она выполняет? Какие основные объекты используются на практике?
Найти более подробную информацию вы всегда можете в официальной документации. В конце статьи также представлена ссылка на замечательный бесплатный курс от RIPE NCC, который включает в себя в том числе интересные интерактивные задачи, которые помогут получить практический опыт.
Начнем с определений:
1. IRR — Internet Routing Registry. Это глобальная распределенная база данных маршрутных политик. Задумывалась такая база как инструмент, с помощью которого операторы связи смогут делиться своими маршрутными политиками и информацией о том, какие сети и кому они анонсируют. В совокупности это должно способствовать большей стабильности работы сети Интернет, помогать инженерам при устранении неполадок, связанных с глобальной маршрутизацией. Также эта база может являться источником данных для различных программ, которые помогают автоматически генерировать конфигурацию оборудования на основании доступной там информации. IRR использует так называемый язык спецификации маршрутных политик (RPSL) для описания хранимых в ней данных. БД RIPE в том числе исполняет и функции IRR.
2. RPSL — Routing Policy Specification Language. Это язык, с помощью которого описываются маршрутные политики. Этот язык объектно-ориентированный, но к программированию он не имеет никакого отношения. По сути, он описывает классы объектов, а конкретные объекты в своих атрибутах содержат уже конкретную информацию. Например, есть класс aut-num, он описывает автономную систему: ее номер, какой организации принадлежит, к кому можно обратиться в случае проблем связности с этой автономной системой и т. д. Объекты, в свою очередь, являются кирпичиками, из которых состоит БД RIPE.
Подробнее про RPSL можно почитать тут:
Функции БД RIPE
Поддержание актуальной контактной информации
Интернет состоит из огромного количество связанных между собой сетей, автономных систем и людей, поддерживающих его работоспособность. Иногда вам может потребоваться узнать, кому принадлежит та или иная автономная система или блок IP-адресов, и как связаться с теми, кто за них отвечает. Вы не можете держать в своей записной книжке все эти контакты. БД RIPE – именно то место, где данную информацию можно оперативно найти.
Учет интернет-ресурсов
Под интернет-ресурсами здесь понимаются блоки IP-адресов и номера автономных систем. RIPE NCC, являясь одним из RIR, занимается распределением интернет-ресурсов и их учетом для Европы, Ближнего Востока и Центральной Азии. Информация о выделенных номерах AS, распределенных блоках IP-адресов и т. д. – все это учитывается и отображается в БД RIPE.
Публикация маршрутных политик
Как говорилось ранее, БД RIPE выполняет в том числе и функции IRR. Здесь, компании, владеющие своими автономными системами и блоками IP-адресов, могут публиковать свои маршрутные политики, тем самым делясь с остальными участниками информацией об их глобальной политике маршрутизации с внешним миром.
Обеспечение работы механизма DNS reverse lookup
БД RIPE играет ключевую роль в работоспособности DNS reverse lookup. Мы вернемся к этому вопросу позже.
Способы взаимодействия с БД RIPE
Необходимость взаимодействия с БД RIPE у вас может быть по следующим причинам: вы хотите найти какую-то информацию или вы хотите добавить/изменить/удалить какую-то информацию в ней.
Чтобы получить информацию из БД RIPE, можно воспользоваться сервисом whois прямо на сайте RIPE, либо одноименной утилитой, которая присутствует почти во всех дистрибутивах Linux.
Существует 4 способа добавить, изменить или удалить информацию:
1. Webupdates. Это самый простой и интуитивный способ работы с объектами. Вы просто заходите на сайт RIPE, авторизуетесь и с помощью веб-формы выполняете необходимые вам действия с объектами (при условии, что вы авторизованы это делать). Сам процесс выглядит так:
Шаг 1. Заходим в панель управления ресурсами, нажимаем «Create an Object», выбираем тип создаваемого объекта и нажимаем Create.

Шаг 2. В следующем окне заполняем обязательные поля и нажимаем Submit:

Если вы корректно заполнили все обязательные поля для создаваемого объекта, то все пройдет гладко, в противном случае вы увидите сообщение о том, где вы допустили ошибку.
2. По электронной почте.
Вы отправляете письмо на специальный почтовый адрес auto-dbm@ripe.net, в теле письма полностью описываете атрибуты и значения объекта, который вы хотите добавить, изменить или удалить. Сейчас этот способ применяется редко, куда проще воспользоваться другими методами.
Этот способ позволяет работать сразу с несколькими объектами одновременно. Его можно использовать как в ручном режиме, так и с собственными скриптами. Подробно данный способ описан в официальной документации.
Также работать с объектами в БД RIPE можно с помощью RESTful API. Данный способ удобно использовать для автоматизации каких-то действий с помощью скриптов.
Например, мы используем API БД RIPE следующим образом:
У нас есть IPAM система, в которой мы ведем учет всех наших IP-адресов. Когда нам необходимо выделить новую подсеть для клиента, то мы запускаем скрипт, который через API вытаскивает из IPAM первую свободную подсеть необходимого размера, далее через скрипт мы заполняем краткое описание назначения данной подсети. Затем скрипт с помощью API IPAM добавляет данную подсеть в базу IPAM, а с помощью API RIPE создает объект inetnum(6) в базе RIPE. Таким образом, нам не нужно самим заходить в IPAM, искать там свободную подсеть, затем заходить на сайт RIPE и создавать там новый объект вручную.
Общие свойства всех объектов
Как говорилось ранее, БД RIPE состоит из объектов. Каждый объект представлен двумя колонками: атрибуты (слева) и фактические значения (справа). Атрибуты всегда заканчиваются двоеточием «:».
Пример объекта, описывающего вымышленную организацию «Sandbox Inc.»:

Объекты имеют обязательные и опциональные атрибуты. Обязательные атрибуты должны присутствовать в каждом объекте соответствующего класса, например, атрибут «org-name:» в объекте «organisation» из примера выше. Некоторые атрибуты могут повторяться.
Для того, чтобы узнать, какие атрибуты объекта обязательные, какие опциональные, какие можно использовать повторно, а какие нет, можно воспользоваться запросом whois -t object_type:

Здесь видно, что атрибут «phone:» является обязательным для объектов типа «role», а атрибут «e-mail:» – опциональным и может повторяться.
Когда вы создаете объект с помощью webupdates, то обязательные атрибуты сразу же отображаются в веб-форме, вам их нужно просто заполнить. Если же вы будете использовать какой-то скрипт для обновления через API, то уже сами должны позаботиться о том, чтобы не забыть указать обязательные атрибуты и их значения. Для этого удобно использовать шаблоны. Например, так может выглядеть шаблон Jinja2, описывающий объект inetnum в формате:
Если вы о чем-то забудете, то при попытке добавить объект в БД RIPE вам вернется код ошибки с описанием причины, по которой операция не может быть выполнена.
Также некоторые атрибуты объекта являются ключами. По ключам осуществляется поиск объектов в БД RIPE. Существует 3 типа ключей:
- Primary – уникальный ID объекта, однозначно определяет его в БД.
- Lookup – ключи, по которым объект можно найти в БД.
- Inverse Lookup – ключи, которые ссылаются на какой-то другой объект. Данный тип ключей используется, когда вы, например, хотите найти все объекты «route», которые зарождаются в какой-то AS. Для этого в запросе whois используется ключ -i. Пример:

Данный запрос находит все объекты класса «route», которые зарождаются в AS48399.
Найти объекты можно только по атрибутам, которые являются ключами, причем в параметрах поиска нужно указать точное значение атрибута. Например, атрибут «aut-num:» объекта «aut-num» является primary ключом. Если вы хотите найти объект «aut-num», который создан для AS48399, то вам нужно указать в запросе именно «as48399», варианты «48399» и «as 48399» не дадут должного результата:

Назначение объектов
Объекты по их назначению можно условно разделить на 5 групп:
1. Контактная информация: person, role, organization.
2. Интернет-ресурсы: inetnum, inet6num, aut-num.
3. Маршрутизация, политика маршрутизации: route, route6, as-set, aut-num.
4. Reverse DNS: domain.
5. Безопасность объектов: maintainer.

Далее пройдемся по всем этим объектам, чтобы понять их назначение.
Группа «Контакты»
Объект «person»
Служит для описания контактной информации конкретного человека, который так или иначе связан с какими-то интернет ресурсами. Другие объекты, например «inetnum», могут ссылаться на объект person в своих атрибутах «admin-c» или «tech-c». Таким образом вы можете узнать контактную информацию человека или группы, которые отвечают за те или иные ресурсы.

В примере выше представлен объект inetnum, который содержит информацию о том, что блок IPv4 адресов 80.12.176.0/22 был выделен организации Sandbox и что в случае возникновения каких-то технических вопросов, связанных с данным блоком адресов, вы можете обращаться к персоне Jean Blue.
Был забавный случай, когда у моего бывшего коллеги раздался неожиданный звонок и человек на том конце трубки, не выбирая выражений, угрожал ему физической расправой. Выяснилось, что ему нагрубил какой-то школьник в онлайн-игре и скинул ему свой IP, который он узнал по запросу «узнать мой IP адрес». Разумеется, школьник сидел за NAT. Наш хакер, недолго думая, вбил другой запрос «узнать кому принадлежит IP» и увидел контактную информацию моего коллеги, которая содержится в RIPE. Пришлось объяснять местному «Кевину Митнику», что это немного не так работает 🙂
Объект «role»
Похож на объект «person», но описывает уже контактную информацию какой-то группы, которая отвечает за определенную роль в организации. Такой группой может быть NOC. Объект «role» – это своего рода контейнер для объектов «person». Например, в организации работают 3 сетевых инженера, вы создаете группу NOC и в атрибутах «tech-c:» указываете ссылки на соответствующие объекты person.

Но также стоит отметить, что атрибуты «admin-c:» и «tech-c:» являются для «role» опциональными, поэтому данный объект может быть самодостаточным, т. е. не ссылаться на объекты «person».
Еще одной важной особенностью объекта «role» является наличие атрибута «abuse-mailbox:». В нем указываются контакты, по котором можно обращаться по вопросам злоупотребления вашими ресурсами. Например, если с принадлежащих вам IP-адресов рассылается спам, то вам скорее всего напишут именно по адресу электронной почты, указанному в данном атрибуте.
С практической точки зрения лучше использовать именно объект «role» вместо «person», особенно, если у вас много сотрудников работают с данными в БД RIPE. Почему? Дело в том, что если вы пытаетесь удалить какой-то объект, но при этом есть объекты, которые на него все еще ссылаются, то вам придется убрать все ссылки на удаляемый объект. А теперь представьте, что у вас 1000 объектов «inetnum», ссылающихся на объект «person», принадлежащий вашему коллеге, который собрался увольняться и больше не отвечает за данные ресурсы. Вам придется во всех 1000 объектах удалить ссылки на него. Кроме того, например, объект «organization» может ссылаться только на объект «role» в своем атрибуте «abuse-c:».
Объект «organization»
Во-первых, этот объект, как и объекты «person» и «role», содержит контактную информацию, но уже об организации, которая владеет интернет-ресурсами, например: юридический адрес, телефон и т.д.
Во-вторых, это своего рода контейнер, который связывает все ресурсы организации. Такие объекты, как «inet(6)num» и «aut-num», обязаны иметь атрибут «org:», который указывает на то, какой организации выделены данные ресурсы.
Группа интернет-ресурсов
Объект «aut-num»
Данный объект создается в базе после того, как RIPE выделит какой-то организации определенный номер AS. Он показывает, кому принадлежит AS, и контактную информацию, по которой вы можете взаимодействовать с теми, кто за данную AS отвечает.
В этом объекте вы можете публиковать свою маршрутную политику.
Для этого используются атрибуты «import:» и «export:», в которых вы указываете, от кого и какие маршруты вы принимаете и кому и какие маршруты анонсируете. Также операторы обычно описывают политику BGP community именно в этом объекте. Для наглядного примера попробуйте поискать в БД RIPE номера AS крупных операторов, например, as8359.
Чтобы лучше понять, как описывается маршрутная политика, рассмотрим следующий пример:

Допустим, что вы являетесь небольшим провайдером, у вас есть 2 аплинка и 3 клиента.
Аплинкам вы анонсируете свои сети и сети ваших клиентов, от аплинков принимаете full view.
Клиентам вы анонсируете full view, а принимаете только префиксы, которые им принадлежат.
Описание маршрутной политики при этом может выглядеть так:

Стоит отметить, что политика может описывать не только то, какие префиксы вы анонсируете или принимаете, но и более сложные сценарии. Например, вы указываете, что на какой-то префикс вы вешаете local preference 200. С помощью набора инструментов IRRToolSet вы можете автоматически создавать конфигурацию маршрутизаторов на основе информации, описанной в объекте «aut-num». Подробнее тут:
Объекты «inetnum» и «inet6num»
Являются одними из самых важных объектов в БД RIPE. Данные объекты содержат информацию о том, кому и как были распределены блоки IP-адресов. Когда RIPE выделяет вам какой-то блок iP-адресов, то в RIPE NCC создается объект «inetnum», указывающий, что этот блок выделен именно вам.
Когда вы далее выделяете из данного блока какой-то кусок под ваши нужды, например, из выделенной вам подсети /22 одну подсеть /24 вы используете под NAT, то вы также создаете объект «inetnum» и даете описание в атрибуте «netname:» – что-то вроде «NAT for users».
Важным атрибутом этих объектов является атрибут «status:». Основные статусы:
ALLOCATED-PA – RIPE NCC выделила блок IPv4 для какой-то организации.
ALLOCATED-BY-RIR – RIPE NCC выделила блок IPv6 для какой-то организации.
ASSIGNED-PA – организация выделила блок IPv4 для каких-то нужд.
ASSIGNED – организация выделила блок IPv6 для каких-то нужд.
Группа политика маршрутизации
Объект «route(6)»
Это также одни из самых важных объектов в БД RIPE, они связывают AS и зарождающиеся в ней префиксы.
Если вы анонсируете какой-то префикс в Интернет, то вам необходимо создать объект «route» для этого префикса.
Почему важно это делать? Многие провайдеры автоматизируют процесс генерации фильтров BGP, которые вешают на анонсы от своих пиров. Реализуется это, например, с помощью утилиты bgpq3, которая обращается в RIPE и автоматически на основании объектов «route» генерирует соответствующий кусок конфига для создания фильтров. Все те префиксы, которые не описаны в объектах «route», не попадут в конфигурацию, поэтому может возникнуть ситуация, когда из-за этого ваши сети не будут доступны извне. Вам придется обращаться в поддержку вашего аплинка, чтобы он разрешил на своем оборудовании принятие от вас данного префикса или же создать объект route для нового префикса и дождаться следующего запуска скрипта на стороне вашего провайдера.
Объект «as-set»
Это очень полезный объект, он помогает упростить процесс обновления маршрутных политик, которые описываются в объекте «aut-num». Объект «as-set» позволяет вам группировать различные AS в один объект. Вернемся к примеру:


Для аплинков у нас описана политика, что мы анонсируем им префиксы от AS500, AS1, AS2, AS3.
При каждом обновлении данной политики вам придется менять информацию для всех аплинков.
Но вы можете поступить иначе: создать объект «as-set» и в его атрибутах «members:» описать номера AS, префиксы которых вы анонсируете, тогда такая политика будет выглядеть так:

Все, что вам нужно будет делать, когда ваша политика меняется, это удалять или добавлять AS из объекта «as-set». Кроме того, атрибут members может ссылаться на другие as-set.
«As-set» часто используется для генерации фильтров. Скажем, клиент может вас попросить настроить фильтры в соответствии с их «as-set», тогда вы опять можете воспользоваться утилитой bgpq3, но указывать уже не номер AS в качестве аргумента, а «as-set». Например:

Объект «domain»
Как уже отмечалось ранее, БД RIPE играет ключевую роль в работе reverse DNS lookup.
В противоположность прямому DNS запросу, когда по доменному имени находится соответствующий ему IP-адрес (A запись), обратный запрос, наоборот, ищет доменное имя, которое соответствует IP-адресу (PTR запись). Зачем нужно отображать IP-адреса в доменные имена? В основном это используется как дополнительная защита от спама в электронной почте, также это помогает при устранении неполадок с помощью traceroute, т. к. если для IP-адреса существует PTR запись, то вместо IP в выводе traceroute вы будете видеть более информативные доменные имена.
Объект «domain» указывает DNS серверам RIPE на то, какой сервер отвечает за ту или иную обратную зону. Визуально это можно представить так:

Когда вы получаете какой-то блок IPv4 или IPv6 адресов от RIPE, то вы можете создавать объекты «domain». Например, вы получили блок IPv4 адресов 192.168.0.0/22. Тогда для данного блока вы можете создать объекты «domain», которые будут указывать на ваши DNS сервера, которые являются авторитативными для данных обратных зон. Важно отметить, что объект «domain» может быть создан только для /16 и /24 ipv4 подсетей, поэтому, если у вас есть блок /22, вам придется создать 4 объекта domain для 4х /24 подсетей и, соответственно, 4 обратные зоны на вашем DNS сервере.
Безопасность объектов
Объект «maintainer»
Теперь, когда мы разобрались с основными объектами, поговорим про безопасность. БД RIPE – это публичная база данных, поэтому очень важно запретить делать что-либо с вашими объектами всем неавторизованным пользователям. Краеугольным камнем в безопасности БД RIPE является объект «maintainer». Это своего рода замок, который вы вешаете на каждый объект, и открыть его может только тот, кто имеет от него ключи. Существует 3 типа таких ключей:
- Single Sign On (SSO). Самый простой способ, вам просто нужно добавить в объекте «maintainer» атрибут «auth:» с указанием почты сотрудника, с помощью которой он авторизуется на сайте RIPE.
- MD5 enrypted password.
- PGP key.
Заключение
Данную статью я готовил на основе материала из официального курса от RIPE, который доступен по адресу https://academy.ripe.net. Если вы хотите лучше разобраться в вопросе и попрактиковаться на реальных примерах, то советую его пройти. Курс интерактивный, интересный и бесплатный.
Полезные запросы whois:
whois -t object_type – посмотреть шаблон объекта.
whois -T route -i origin ASxxxxx – узнать все маршруты, которые происходят из автономной системы.
whois -i mnt-by maintainer_name – узнать все объекты, которые защищены объектом «maintainer_name».
whois -M subnet – узнать, на какие более мелкие подсети поделена подсеть «subnet».
whois -L subnet – узнать, из какой более крупной подсети образована подсеть «subnet».
RIPE NCC
RIPE NCC (фр. Réseaux IP Européens + англ. Network Coordination Centre ) — один из пяти региональных интернет-регистраторов (англ. Regional Internet Registries , RIRs), выполняющих распределение интернет-ресурсов, а также связанную с этим регистрацию и координацию деятельности, направленную на глобальную поддержку функционирования Интернета.
RIPE NCC функционирует как ассоциация локальных интернет-регистраторов (англ. Local Internet Registry , LIR), каждая из которых платит членский взнос. В роли LIR обычно выступают крупные интернет-провайдеры или корпорации.
Выделение интернет-ресурсов происходит согласно процедурам RIPE NCC, формализованным в соответствующих документах. Документы, устанавливающие процедуры работы с ресурсами, принимаются собранием членов RIPE (англ. RIPE Meeting ) — открытого тематического форума, проходящим дважды в год. Перед вынесением документов на голосование производится работа над проектами документов в рабочих группах и обсуждение проектов в открытых почтовых рассылках RIPE.
Сотрудники RIPE NCC подчёркивают, что RIPE NCC — это не RIPE. RIPE NCC — это некоммерческая организация с бюджетом, штатом сотрудников, офисом и уставом. RIPE — это открытый форум, принять участие в работе которого может любой желающий.
RIPE NCC руководит Аксель Паулик (англ. Axel Pawlik ), который является управляющим директором. Существует также и совет директоров (англ. RIPE NCC Executive Board ), в который входят пять директоров, выбираемых собранием членов (англ. RIPE NCC General Meeting ). Работу именно RIPE координирует Роб Блокзил (англ. Rob Blokzijl ).
Офис RIPE NCC находится в Амстердаме, Нидерланды.
См. также
Внешние ссылки
-
(англ.) (англ.)
- Некоммерческие организации по алфавиту
- Появились в 1992 году
- Региональные интернет-регистраторы
- Интернет-организации
Wikimedia Foundation . 2010 .
Полезное
Смотреть что такое «RIPE NCC» в других словарях:
RIPE NCC — RIPE Logo Das Réseaux IP Européens Network Coordination Centre (RIPE NCC) ist eine Regional Internet Registry (RIR) Organisation, zuständig für die Vergabe von IP Adressbereichen und AS Nummern in Europa, dem Nahen Osten und Zentralasien. Die… … Deutsch Wikipedia
RIPE NCC — Saltar a navegación, búsqueda El Centro de Coordinación de redes IP europeas (Réseaux IP Européens Network Coordination Centre (RIPE NCC)) es el Registro Regional de Internet (RIR) para Europa, Oriente Medio y partes de Asia Central. Un RIR… … Wikipedia Español
RIPE NCC — The Réseaux IP Européens Network Coordination Centre (RIPE NCC) is the Regional Internet Registry (RIR) for Europe, the Middle East and parts of Central Asia. An RIR oversees the allocation and registration of Internet number resources (IPv4… … Wikipedia
RIPE-NCC — Réseaux IP Européens Network Coordination Center Le RIPE NCC (Réseaux IP Européens Network Coordination Center) est un registre régional d adresses IP. Il dessert l Europe et une partie de l Asie, notamment au Moyen Orient. C est une organisation … Wikipédia en Français
RIPE NCC — Réseaux IP Européens Network Coordination Center Le RIPE NCC (Réseaux IP Européens Network Coordination Center) est un registre régional d adresses IP. Il dessert l Europe et une partie de l Asie, notamment au Moyen Orient. C est une organisation … Wikipédia en Français
Ripe-ncc — Réseaux IP Européens Network Coordination Center Le RIPE NCC (Réseaux IP Européens Network Coordination Center) est un registre régional d adresses IP. Il dessert l Europe et une partie de l Asie, notamment au Moyen Orient. C est une organisation … Wikipédia en Français
RIPE NCC — ● np. m. RIPE Network Coordination Centre. Centre de coordination des Réseaux IP Européens. Voir RIPE … Dictionnaire d’informatique francophone
RIPE Network Coordination Center — RIPE Logo Das Réseaux IP Européens Network Coordination Centre (RIPE NCC) ist eine Regional Internet Registry (RIR) Organisation, zuständig für die Vergabe von IP Adressbereichen und AS Nummern in Europa, dem Nahen Osten und Zentralasien. Die… … Deutsch Wikipedia
RIPE Network Coordination Centre — RIPE Logo Das Réseaux IP Européens Network Coordination Centre (RIPE NCC) ist eine Regional Internet Registry (RIR), zuständig für die Vergabe von IP Adressbereichen und AS Nummern in Europa, dem Nahen Osten und Zentralasien. Die Organisation… … Deutsch Wikipedia
Ripe — may refer to:* Ripening, especially of fruit * RIPE, Réseaux IP Européens * RIPE NCC, the Regional Internet Registry (RIR) for Europe * Ripeness, a term in law * Ripe, East Sussex, in England * Ripe (AN), in Italy * Ripe (film), a 1997 drama by… … Wikipedia