2013-03-10 3 views
1

У меня есть хост VM, который действует как маршрутизатор quagga. Он объявляет маршруты к размещенным виртуальным машинам (я не использую мосты, только маршрутизированные виртуальные машины)Как перераспределить подключенные/32 с помощью quagga ospfd?

Он хорошо работает, когда интерфейс tun сконфигурирован с/30; например:

$ ip a 
4: gentoo: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 500 
    link/ether 2a:c8:0a:ae:cc:c1 brd ff:ff:ff:ff:ff:ff 
    inet 10.42.1.5/30 brd 10.42.1.7 scope global gentoo 
    inet6 fe80::5c23:52ff:fec1:f2b7/128 scope link 
     valid_lft forever preferred_lft forever 
    inet6 fe80::28c8:aff:feae:ccc1/64 scope link 
     valid_lft forever preferred_lft forever 

Но я хочу поставить некоторые publicy маршрутизации IP по некоторым виртуальным машинам, не теряя 3 IP-адресов для сети, передачи в эфир, и хостом IP; например:

$ ip ro 
94.23.110.211 dev gentoo scope link 

Маршрут показан на "показать IP маршрута" команда Quagga

arrakeen# show ip route 

коды: K - маршрутные ядро, C - связно, S - статический, R - RIP, O - OSPF, I - ISIS, B - BGP,> - выбранный маршрут, * - FIB маршрут

O 0.0.0.0/0 [110/110] via 10.42.42.1, eth0, 00:01:24 
K>* 0.0.0.0/0 via 10.42.42.1, eth0 
O>* 10.0.0.0/24 [110/20] via 10.42.42.1, eth0, 00:01:25 
C>* 10.0.42.21/32 is directly connected, eth0 
O>* 10.42.0.0/24 [110/20] via 10.42.42.1, eth0, 00:01:25 
O 10.42.1.4/30 [110/10] is directly connected, gentoo, 00:01:35 
C>* 10.42.1.4/30 is directly connected, gentoo 
K>* 10.42.1.6/32 via 10.42.1.5, gentoo 
O 10.42.42.0/24 [110/10] is directly connected, eth0, 00:01:35 
C>* 10.42.42.0/24 is directly connected, eth0 
O>* 10.242.0.1/32 [110/30] via 10.42.42.1, eth0, 00:01:25 
O>* 10.255.0.1/32 [110/30] via 10.42.42.1, eth0, 00:01:25 
O>* 10.255.0.2/32 [110/20] via 10.42.42.1, eth0, 00:01:25 
O 94.23.110.210/32 [110/10] is directly connected, eth0, 00:01:35 
C>* 94.23.110.210/32 is directly connected, eth0 
K>* 94.23.110.211/32 is directly connected, gentoo 
C>* 127.0.0.0/8 is directly connected, lo 

Но как вы можете видеть, это не выдумка OSPF в

arrakeen# show ip ospf route 
============ OSPF network routing table ============ 
N 10.0.0.0/24   [20] area: 0.0.0.0 
          via 10.42.42.1, eth0 
N 10.42.0.0/24   [20] area: 0.0.0.0 
          via 10.42.42.1, eth0 
N 10.42.1.4/30   [10] area: 0.0.0.0 
          directly attached to gentoo 
N 10.42.1.36/30   [10] area: 0.0.0.0 
N 10.42.42.0/24   [10] area: 0.0.0.0 
          directly attached to eth0 
          via 10.42.42.1, eth0 
N 10.242.0.1/32   [30] area: 0.0.0.0 
          via 10.42.42.1, eth0 
N 10.255.0.1/32   [30] area: 0.0.0.0 
          via 10.42.42.1, eth0 
N 10.255.0.2/32   [20] area: 0.0.0.0 
          via 10.42.42.1, eth0 
N 94.23.110.210/32  [10] area: 0.0.0.0 
          directly attached to eth0 
N 94.23.110.218/32  [30] area: 0.0.0.0 
          via 10.42.42.1, eth0 

============ OSPF router routing table ============= 
R 10.42.42.1   [10] area: 0.0.0.0, ASBR 
          via 10.42.42.1, eth0 

============ OSPF external routing table =========== 
N E1 0.0.0.0/0    [110] tag: 0 
          via 10.42.42.1, eth0 

Есть ли способ загнать их в ospf?

Вот ospfd.conf:

! -*- ospf -*- 
! 
hostname arrakeen 
! 
interface eth0 
! 
router ospf 
ospf router-id 10.42.42.21 
redistribute static 
redistribute connected 
network 10.42.1.0/24 area 0 
network 10.42.42.0/24 area 0 
network 94.23.110.210/28 area 0 
! 
log file /var/log/quagga/ospfd.log 

Спасибо,

ответ