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

ASR1000 VRF-Lite + NAT

Приветствую. Задумал тут на ASR1002-X соорудить "домашний роутер" для абонента. В том смысле, что так-то на ней еще тыща абонентов PPPoE и IPoE, но они VRF не используют. А тут мне захотелось испробовать соорудить vCPE (я правильно называю, да?).

Вобщем дано:

 

asr-1002x-621#show run | sect 2013
vrf definition CPE_2013
rd 1:2013
route-target export 1:2013
route-target import 1:2013
!
address-family ipv4
exit-address-family
!
address-family ipv6
exit-address-family
!
ip dhcp pool CPE_2013
vrf CPE_2013
network 100.100.13.0 255.255.255.0
default-router 100.100.13.1
dns-server 185.dns.server.ip
lease 14
!
!
interface TenGigabitEthernet0/2/0.8
encapsulation dot1Q 8
ip address 185.to.uplink.3 255.255.255.254
ip nat outside
!
interface TenGigabitEthernet0/1/0.2002013
description CPE_2013
encapsulation dot1Q 200 second-dot1q 2013
vrf forwarding CPE_2013
ip address 100.100.13.1 255.255.255.0
ip nat inside
ip verify unicast source reachable-via rx l2-src
!
ip nat pool CPE_2013 185.real.client.ip 185.real.client.ip prefix-length 24
ip nat inside source list CPE_2013 pool CPE_2013 vrf CPE_2013 match-in-vrf overload
!
ip route vrf CPE_2013 0.0.0.0 0.0.0.0 TenGigabitEthernet0/2/0.8 185.to.uplink.2 name CPE_2013
!
ip access-list extended nat_CPE_2013
deny   ip any 100.64.0.0 0.63.255.255
deny   ip any 10.0.0.0 0.255.255.255
deny   ip any 172.16.0.0 0.15.255.255
deny   ip any 192.168.0.0 0.0.255.255
deny   ip any 169.254.0.0 0.0.255.255
permit tcp 100.100.13.0 0.0.0.255 any
permit udp 100.100.13.0 0.0.0.255 any
permit icmp 100.100.13.0 0.0.0.255 any
permit esp 100.100.13.0 0.0.0.255 any

 

Адрес на DHCP клиент получает. А дальше ничего не работает. Что я делаю не так?

Share this post


Link to post
Share on other sites

Я дел такую штуку на ios, посмотрите тут мои конфиги, может что бросится в глаза

 

Попробуйте протестить без QinQ и/или ip verify

Share this post


Link to post
Share on other sites

Я дел такую штуку на ios, посмотрите тут мои конфиги, может что бросится в глаза

 

Попробуйте протестить без QinQ и/или ip verify

 

Сделал ровно как в Вашем примере, не работает. Может не совместимо с CGN ?

Share this post


Link to post
Share on other sites

Может надо статик в врф из глобала на айпи нат пула?

 

Или мб убрать из нат правила match in vrf

Share this post


Link to post
Share on other sites

Может надо статик в врф из глобала на айпи нат пула?

 

Или мб убрать из нат правила match in vrf

 

Да я уже привел к такому виду:

 

asr-1002x-621#show run | sect 2013
vrf definition CPE_2013
rd 1:2013
route-target export 1:2013
route-target import 1:2013
!
address-family ipv4
exit-address-family
!
address-family ipv6
exit-address-family
!
ip dhcp pool CPE_2013
vrf CPE_2013
network 100.100.13.0 255.255.255.0
default-router 100.100.13.1
dns-server 185.dns.server.ip
lease 14
!
!
interface TenGigabitEthernet0/2/0.8
encapsulation dot1Q 8
ip address 185.to.uplink.3 255.255.255.254
ip nat outside
!
interface TenGigabitEthernet0/1/0.2002013
description CPE_2013
encapsulation dot1Q 200 second-dot1q 2013
vrf forwarding CPE_2013
ip address 100.100.13.1 255.255.255.0
ip nat inside
!
ip nat pool CPE_2013 185.real.client.ip 185.real.client.ip prefix-length 24
ip nat inside source list CPE_2013 pool CPE_2013 vrf CPE_2013 overload
!
ip route vrf CPE_2013 0.0.0.0 0.0.0.0 185.to.uplink.2 global name CPE_2013
!
ip access-list extended nat_CPE_2013
deny   ip any 100.64.0.0 0.63.255.255
deny   ip any 10.0.0.0 0.255.255.255
deny   ip any 172.16.0.0 0.15.255.255
deny   ip any 192.168.0.0 0.0.255.255
deny   ip any 169.254.0.0 0.0.255.255
permit tcp 100.100.13.0 0.0.0.255 any
permit udp 100.100.13.0 0.0.0.255 any
permit icmp 100.100.13.0 0.0.0.255 any
permit esp 100.100.13.0 0.0.0.255 any

 

Не работает.

 

другие интерфейсы на этом-же роутере в глобальной таблице также не пингаются с клиента, и при выключении "ip nat inside source list ..." также.

Share this post


Link to post
Share on other sites

ну давайте степ-бай-степ. уберите сначала нат, если не поможет, потом qinq, потом vrf, чтобы хотя бы понять что ж не работает-то

Share this post


Link to post
Share on other sites

ip nat inside source list CPE_2013 pool CPE_2013 vrf CPE_2013 overload
ip access-list extended nat_CPE_2013

 

Сам олень, короче. Щас исправлю и попробую снова.

Share this post


Link to post
Share on other sites

Все заработало, как в посте №5 с исправленым именем аксес листа.

Share this post


Link to post
Share on other sites

У вас теоретические изыскания или думаете предлагать услугу? Сколько планируется брать за нее и что с вифи?

Share this post


Link to post
Share on other sites

Чего-то я не очень понимаю, чем весь этот колхоз отличается от interface session в ISG?

Share this post


Link to post
Share on other sites

У вас в итоговой конфигурации CGNAT остался?

Edited by vtenkt

Share this post


Link to post
Share on other sites

У вас в итоговой конфигурации CGNAT остался?

Да

Share this post


Link to post
Share on other sites

У вас теоретические изыскания или думаете предлагать услугу? Сколько планируется брать за нее и что с вифи?

Теоретические, плюс решаю личную задачу :)

Ради вифи и затеял. У меня один говнороутер в доме с вифи, стоит в одной комнате. Мне захотелось проводами подключиться в другой комнате, провода все уходят в подвал, где есть свитч. Получается нужно либо еще один роутер покупать, либо делать CPE у провайдера, где я, по случаю, главный цискун :) Решил попробовать. Говнороутер переведу в режим тупо точки доступа.

 

Чего-то я не очень понимаю, чем весь этот колхоз отличается от interface session в ISG?

Тем что абонентские устройства изолированы в своем VRF, и могут работать с остальной сетью только через НАТ. Хотя с введением IPv6 надо будет что-то придумывать с фаерволом.

Share this post


Link to post
Share on other sites

ем что абонентские устройства изолированы в своем VRF, и могут работать с остальной сетью только через НАТ. Хотя с введением IPv6 надо будет что-то придумывать с фаерволом.

Ничто не мешает interface session упаковать в VRF. Я так и делаю, например. А бенефитов относительно колхоза гораздо больше.

Share this post


Link to post
Share on other sites

ем что абонентские устройства изолированы в своем VRF, и могут работать с остальной сетью только через НАТ. Хотя с введением IPv6 надо будет что-то придумывать с фаерволом.

Ничто не мешает interface session упаковать в VRF. Я так и делаю, например. А бенефитов относительно колхоза гораздо больше.

 

Сессия на каждое устройство создается?

Share this post


Link to post
Share on other sites

На радиус прилетает то, что в политике настроите, у меня nas-port-id прилетает, из которого RADIUS регулярками достаёт пару S-TAG/C-TAG.

 

interface Port-channel1.3761002
encapsulation dot1Q 376 second-dot1q 1002
vrf forwarding vrf-customer-x
ip address 100.127.13.1 255.255.255.0
ip helper-address 192.168.100.88
no ip redirects
no ip unreachables
no ip proxy-arp
ip mtu 1500
ip verify unicast source reachable-via rx
service-policy type control StaticCustomers
ip subscriber interface
end


policy-map type control StaticCustomers
class type control Unauth event timed-policy-expiry
 1 service disconnect
!
class type control always event session-start
 1 authorize aaa password cisco identifier nas-port 
 3 set-timer Unauth 3
!
class type control always event session-restart
 1 authorize aaa password cisco identifier nas-port 
 3 set-timer Unauth 3
!
class type control always event access-reject
 1 service-policy type service name OpenGarden
 2 service-policy type service name L4R
 3 set-timer Unauth 3
!
!

Share this post


Link to post
Share on other sites

На радиус прилетает то, что в политике настроите, у меня nas-port-id прилетает, из которого RADIUS регулярками достаёт пару S-TAG/C-TAG.

 

interface Port-channel1.3761002
encapsulation dot1Q 376 second-dot1q 1002
vrf forwarding vrf-customer-x
ip address 100.127.13.1 255.255.255.0
ip helper-address 192.168.100.88
no ip redirects
no ip unreachables
no ip proxy-arp
ip mtu 1500
ip verify unicast source reachable-via rx
service-policy type control StaticCustomers
ip subscriber interface
end


policy-map type control StaticCustomers
class type control Unauth event timed-policy-expiry
 1 service disconnect
!
class type control always event session-start
 1 authorize aaa password cisco identifier nas-port 
 3 set-timer Unauth 3
!
class type control always event session-restart
 1 authorize aaa password cisco identifier nas-port 
 3 set-timer Unauth 3
!
class type control always event access-reject
 1 service-policy type service name OpenGarden
 2 service-policy type service name L4R
 3 set-timer Unauth 3
!
!

А покажите плиз еще OpenGarden и L4R

И где у вас тут нат?

Share this post


Link to post
Share on other sites

Собсно ip subscriber interface ничем не отличается от того, что я тут тестирую за исключением прикручивания радиуса. NAT вероятно прилетает с радиуса в виде Cisco-AVPair="lcp:interface-config=ip nat inside" если я правильно помню синтаксис.

 

У меня щас загвоздка в другом - если использую VRF, то не работает PPTP. Причем на PPTP сервер GRE от клиента прилетает, а вот внутрь к клиенту - нет. Недоделка видимо. Надо в другой версии софта как нибудь попробовать.

Share this post


Link to post
Share on other sites

Да с pptp и прочими ALG-ами постоянно какие-то проблемы на этой платформе (asr1000), так что пробуйте разные версии смотрите, может есть какие-то настройки по ALG-ам в вашей версии

Share this post


Link to post
Share on other sites

в соседней теме писали вроде на тему алг и сгн. вроде как в 3.16.4 починено что-то.

Share this post


Link to post
Share on other sites

С unnumbered работает?

Там надо колхозить сложно, я бы не стал связываться.

 

А покажите плиз еще OpenGarden и L4R

 

class-map type traffic match-any L4R
match access-group input name WebRedirectIn
match access-group output name WebRedirectOut
!
class-map type traffic match-any OpenGarden
match access-group output name OpenGardenOut
match access-group input name OpenGardenIn
!

policy-map type service L4R
class type traffic L4R
 redirect to group Enclosure
!
class type traffic default in-out
 drop
!
!
policy-map type service OpenGarden
class type traffic OpenGarden
 police input 5000000 937500 1875000
 police output 5000000 937500 1875000
!
class type traffic default in-out
 drop
!
!

 

И где у вас тут нат?

На отдельном железе у нас он, но прикрутить не вижу проблем.

Share this post


Link to post
Share on other sites

Собсно ip subscriber interface ничем не отличается от того, что я тут тестирую за исключением прикручивания радиуса.

Ничего себе не отличается! С ISG всё работает автоматически с биллинга, как и должно быть.

 

ISG хотя бы на port-channel может клиенту скорость по-сервисно ограничивать на asr1k без проблем, а вашей схеме я даже не знаю, как вы это делать будите, если lag соберёте.

 

Там, кстати, есть Dynamic VRF selection, можно попробовать определённый VRF в биллинге прописать и прикрутить какую-нибудь бизнес-логику.

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