Задача:
Связать центральный маршрутизатор с филиальным. Филиальный имеет динамический IP внешний, так что статические тунели не подходят. В сетке давно работает динамическая маршрутизация OSPF, корп-сетка 10/8, ария одна на всех 0.0.0.0. Железки 2801 на обоих концах.В общем и целом,если не считать мелких трудностей, задача решена использованием L2TP:
server:
!
vpdn enable
!
vpdn-group l2tp
! Default L2TP VPDN group
accept-dialin
protocol l2tp
virtual-template 1
no l2tp tunnel authentication
l2tp tunnel receive-window 1024
!
!
interface Loopback1
ip address 10.35.13.1 255.255.255.0
ip ospf network point-to-point
!
interface Virtual-Template1
description l2tp_template
mtu 1200
ip unnumbered Loopback1
ip ospf network point-to-point
peer default ip address pool vpn
ppp authentication chap callin vpn
ppp authorization vpn
ppp accounting vpn
ppp ipcp mask 255.255.255.0
!
ip local pool vpn 10.35.13.100 10.35.13.200
client:
!
ip dhcp pool LOCAL
import all
origin ipcp
!
l2tp-class VPN
!
pseudowire-class PWIRE
encapsulation l2tpv2
protocol l2tpv2 VPN
!
interface Loopback1
ip address pool LOCAL
!
interface Virtual-PPP1
ip unnumbered Loopback1
ip mtu 1200
ip ospf network point-to-point
ppp authentication chap callin
ppp chap hostname test
ppp chap password 7 120D000406
ppp ipcp mask request
pseudowire A.B.C.D 10 pw-class PWIRE
!
OSPF работает, соседи друг-друга видят, но есть одна загвоздка: у клиента loopback1 получает адрес из пула, но маску /24, соответственно в локальной системе появляется маршрут:
C 10.35.13.0/24 is directly connected, Loopback1
и из-за этого пакеты к другим PPP пирам центрального маршрутизатора не уходят никуда, а пропадают на лупбеке.
Сетку 10.35.13.0/24 сервер экспортит в OSPF, и все участники протокола ее принимают, кроме PPP пиров (видимо из-за того, что она у них connected).
Как вариант решения промблемы может есть какая-то возможность на филиальной кисе отрубить публикацию connected маршрута на интерфейсе loopback1?
Может есть более правильное решение используя 2801 с обеих сторон?