Jump to content
Калькуляторы

Помогите, не могу разобраться

Есть задача. На циске есть глобальная таблица маршрутизации и один vrf. Необходимо из глобальной таблицы маршрутизации передать маршруты в vrf и из vrf передать маршруты в глобальную таблицу посредством bgp.

вот кусок конфига

ip subnet-zero
ip routing
!
ip vrf test
rd 65001:1
import IPv4 Unicast map def
export map testexp
route-target export 65001:1
route-target import 65001:1
!
interface Loopback1
ip vrf forwarding test
ip address 192.168.4.254 255.255.255.0
!
interface Loopback2
ip address 192.168.1.1 255.255.255.0
!
router bgp 65001
bgp log-neighbor-changes
!
address-family ipv4
 redistribute connected
 redistribute static
 no auto-summary
 no synchronization
exit-address-family
!
address-family ipv4 vrf test
 redistribute connected
 redistribute static
 no synchronization
exit-address-family
!
!
ip prefix-list default seq 10 permit 0.0.0.0/0
ip prefix-list default seq 15 permit 0.0.0.0/0 le 32
!
ip prefix-list testexport seq 15 permit 192.168.4.0/24
route-map def permit 10
match ip address prefix-list default
!
!
route-map testexp permit 10
match ip address prefix-list testexport
!

 

Все вроде бы ок НО - вот вывод команд show ip route и show ip route vrf test

 

Switch#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
      D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
      N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
      E1 - OSPF external type 1, E2 - OSPF external type 2
      i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
      ia - IS-IS inter area, * - candidate default, U - per-user static route
      o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

C    192.168.1.0/24 is directly connected, Loopback2

Switch#show ip route vrf test

Routing Table: test
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
      D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
      N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
      E1 - OSPF external type 1, E2 - OSPF external type 2
      i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
      ia - IS-IS inter area, * - candidate default, U - per-user static route
      o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

C    192.168.4.0/24 is directly connected, Loopback1
B    192.168.1.0/24 is directly connected, 00:07:19, Loopback2

 

Тоесть я получаю маршрут из глобальной таблицы 192.168.1.0/24

А при этом маршрут из vrf 192.168.4.0/24 не експортируется в глобальную таблицу.

Бьюсь уже 3 дня над этим но не понимаю КАК ЕКСПОРТИРОВАТЬ префиксы из vrf в глобальную таблицу.

Помогите решить задачу...

Share this post


Link to post
Share on other sites

Неужели никто не может подсказать? :(

Share this post


Link to post
Share on other sites

Эта фишка называется route leaking. http://blog.ipexpert.com/2010/12/01/vrf-route-leaking/

 

Но лучше её не использовать, потому что как только вы заворачиваете трафик из глобала в vrf(в примеры по ссылке это ip route 10.0.0.5 255.255.255.255 Serial0/1/0.205 10.0.25.5), вы фактически разрешаете любому хосту из grt отправлять трафик на хост в vrf, т.е. возможны всякие флуд-атаки и т.п. и если там какой-нибудь дохленький ибп с snmp-модулем/l2+-свитч/прочее слабозащищённое, то теряется одно из основных преимуществ vrf - изоляция от интернет(или в пределах локальной as) мусора.

 

В случае серверов я использую второй интерфейс(или сабинтерфейс) для выхода в глобал и перевешиваю все сервисы, которые не нужны в глобале(ssh, snmpd и т.п.) на интерфейс в vrf, это намного удобнее, чем возиться с ACL.

Share this post


Link to post
Share on other sites

А мне нужно именно так. Мне необходимо в vrf загнать UA-IX чтобы можно было отдельных клиентов включать только в vrf и отдавать им отдельно UA-IX а при этом клиенты которым нужен микс или просто абоненты без бгп могли получать и мир и UA-IX. Может есть какое-то другое более оригинальное решение в пределах одного комутатора - с удовольствием использую...

Share this post


Link to post
Share on other sites

Тогда стандартный способ с помощью статических маршрутов туда-сюда вам не подходит, ибо маршруты на ix заранее неизвестны. вам надо просто поднять 2 bgp-сессии с ua-ix, одну из глобала, 2ую из vrf.

Или ещё проще, с помощью одной сессии. На in на ua-ix ставите локалпреф побольше, добавляете community на маршруты ua-ix и на выход в сторону клиента, которому надо только ix фильтруете по добавленному community, но этот способ хуже тем, что тогда такие клиенты через вас смогут сливать исходящий в мир(от этого тоже можно защититься с помощью маркировки трафика, но это геморрой), поэтому vrf будет более правильно

Share this post


Link to post
Share on other sites

Можно загнать то, что сейчас находится в глобале в ещё одну vrf и сделать примерно следующее:

 

ip vrf internet

rd xxxx:1

route-target export xxxx:1

route-target import xxxx:1

route-target import 65001:1

 

По-идее так прокатит.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this