IP Prefix List -для чего он нужен?
Области применения различные, в основном для редистрибуции его куда либо, суть в том что бы разрешать/запрещать не просто диапазон адресов а конкретные сети с масками или диапазоны заданные условиями prefix-list.
В заметке я рассмотрю несколько примеров применения префиксов.
Пример-1:
ip prefix-list TEST seq 10 permit 10.0.0.0/23 ge 24 le 24
Здесь в примере будут разрешены только префиксы 10.0.0.0/24 и 10.0.1.0/24, остальные префиксы будут запрещены. Развернуто "по буквам":
ip prefix-list - создаем префикс-лист
TEST - имя префикс листа
seq 10 - Номер последовательности в листе, если не
указать то по-умолчанию равно 5, далше писать
этот параметр не буду, т.к. всего одна строка.
permit - разрешаем
10.0.0.0/23 - Первые 23 бита сети 10.0.0.0 неизменны т.е.
сеть префикса будет из диапазона
10.0.0.0 - 10.0.1.255
ge 24 le 24 - Маска должна быть больше(ge) 24 и меньше(le) 24
==================
Пример-2:
ip prefix-list DISTR permit 1.2.3.0/24 le 32
Здесь: проверяем первые 24 бита сети 1.2.3.0 они должны совпадать, маска должна быть меньше(le) 32. Т.к. минимальное значение маски которое может быть это 24 и верхний порог не указан(ge), то по-умолчанию он равен числу фиксированных битов, в данном случае 24. Таким образом маска будет в диапазоне от 24 - 32. Все сети 1.2.3.0 с любой маской от 24 до 32 разрешаются.
В данном случае можно создать аналогичный стандартный access-list:
access-list 1 permit 1.2.3.0 0.0.0.255
==================
Пример-3:
ip prefix-list OUT permit 0.0.0.0/0 le 32
в данном случае проверяем первые 0 бит(они всегда будут совпадать), и разрешаем любую маску меньше(le) 32 и больше(ge) 0.
получается аналог:
access-list 1 permit any
==================
Пример-4:
ip prefix-list TEST permit 0.0.0.0/1 ge 24 le 24
Первый бит должен равняться 0
т.е. первый октет будет находится в диапазоне:
от 00000000 = 0
до 01111111 = 127
остальные могу применять любое значение.
ge 24 le 24 - говорит нам что маска должна быть не больше и не меньше 24, другими словами маска должна быть жестко равна 24м.
В итоге получаем список сетей которые разрешит данный prefix-list:
0.0.0.0/24 - 127.255.255.0/24
==================
Пример-5:
ip prefix-list DEFAULT permit 0.0.0.0/0
Маршрут по-умолчанию это маршрут до сети 0.0.0.0 с маской 0.0.0.0. Следовательно, этот префикс лист разрешает только маршрут по-умолчанию.
Аналогичный access-list:
access-list 1 permit 0.0.0.0 0.0.0.0
==================
Пример-6:
ip prefix-list LIST permit 10.10.10.0/24 ge 28
будут разрешены пачки маршрутов:
10.10.10.0/28 10.10.10.0/29 10.10.10.0 /30
10.10.10.16/28 10.10.10.8/29 10.10.10.4 /30
... ... ....
10.10.10.240/28 10.10.10.248/29 10.10.10.252 /30
10.10.10.0/31 10.10.10.1/32
10.10.10.2/31 10.10.10.2/32
... ...
10.10.10.254/31 10.10.10.255/32
The way prefix lists work are you can specify a network and mask or a
network and a range of masks. Specifying a network and mask is fairly
simple:
ip prefix-list mylist seq 10 permit 172.16.25.0/24
This will allow (match) the exact network 172.16.25.0/24 to pass the list.
However prefix lists can also specify a network with a range of masks. For
example:
ip prefix-list mylist seq 10 permit 172.16.0.0/16 ge 24 le 26
This will take the entire class B network 172.16.0.0 (172.16.0.0/16) and
pass only subnets with a /24, /25 or /26 mask (ge 24 le 26). So the exact
network 172.16.0.0/16 would actually fail the list because it does not have
a mask of /24, /25 or /26.
By default if you only specify "ge" then any subnet with a mask greater than
or equal to the ge value will pass. That is, ge all the way up to /32. For
example:
ip prefix-list mylist seq 10 permit 10.10.10.0/24 ge 28
This list specifies any subnet within the 10.10.10.0/24 range that has a
mask of /28 or greater (255.255.255.240 to 255.255.255.255). Again, the
exact subnet 10.10.10.0/24 would fail because it does not have a mask of /28
or greater.
By default if you only specify "le" then any subnet with a mask less than or
equal to the le value but greater than or equal to the mask specified will
pass. That is, le all the way down to the mask listed. For example:
ip prefix-list mylist seq 10 permit 10.64.0.0/16 le 23
This list specifies any subnet within the 10.64.0.0/16 range that has a
mask between /16 and /23, inclusive (255.255.0.0 to 255.255.254.0). In this
case the exact subnet 10.64.0.0/16 would pass because it has a mask in the
range /16 to /23.
The "permit any any" in a prefix list is:
ip prefix-list mylist seq 200 permit 0.0.0.0/0 le 32
Комментариев нет:
Отправить комментарий