• Какова суть псевдо-интерфейса Null0 на Cisco IOS?

    athacker
    @athacker
    Это /dev/null для маршрутизации. Пакеты, которые маршрутизируются в Null0 -- фактически, просто дропаются.

    Такой подход используется в разных целях. Например, вам нужно заблочить мощный поток трафика на определённую подсеть, для которой вы -- транзит. Такой поток может быть, например, DDoS'ом. Блочить такое на файрволе -- может быть довольно дорогим удовольствием, с точки зрения используемых системных ресурсов. Поэтому сетку просто блэкхолят. В разных системах это по-разному называется -- в IOS это Null0 (и то, возможно, не во всех модификациях), во фре -- так и называется, blackhole.

    Для NAT сам по себе этот интерфейс роли большой не играет, но его могут использовать. Например, у вас на устройстве нат для какой-то сетки. Сетка вам анонсируется по какому-нибудь протоколу динамической маршрутизации. Допустим, сессия динамической маршрутизации сломалась, и пользовательская сеть больше не доступна. Но на файрволе остались NAT-правила для неё. Соответственно, если придёт пакет снаружи для DST IP из клиентской сети (которая отвалилась), то шлюз посмотрит в таблице маршрутизации, не найдёт там specific-записей для этой сети и отправит пакет в default gateway. А на default gateway указано, что вот эта клиентская сеть доступна для него через ваш шлюз. И он опять отправит пакет на ваш шлюз. Ваш шлюз -- опять вернёт его в default gateway. И так будет до тех пор, пока TTL пакета не истечёт и пакет не будет прибит. Поэтому такие сети иногда блэкхолят. Если сессия динамической маршрутизации поднята, и клиентская сеть доступна -- пакет уйдёт туда. Если сессия упадёт, то пакет сразу будет заблэкхолен, т. е. прибит, и не будет крутиться по кольцу между вашим шлюзом и его default gateway'ем до истечения TTL.
    Ответ написан
    1 комментарий