Afternoon misc,

I recently added an extra loopback interface to an OpenBSD host running OpenOSPFd as a way of assigning specific IP addresses to the host in a way that didn't tie them to a specific physical interface.

I'm using the addresses for NAT and also announcing them as a route into an OSPF area where there is another OpenBSD box (matched with this one running with carp/pfsync/sasync/openospfd) and two Linux machines running quagga's ospfd.

Ever since I did this, my OSPF area fell over and I think it might be because ospfd is now sending packets with a source address matching one of the (public) addresses on this loopback interface instead of the address on the interface it is speaking OSPF on which matches its router-id. I've configured static routes for now, until I can figure out exactly what's going on.

How does ospfd choose the address to send from? I thought it might be something to do with the multicast route, but that's set to be on 'lo0', whereas my new loopback interface is lo1.

This is on OpenBSD 4.2 (I attempted to upgrade to 4.3 and the other node in the carp group died, so I'll be trying that again outside office hours, I think!).

The machine is connected to the ospf area via the 'vlan20' interface which is configured with an IP address 192.168.50.10/24 and is supposed to be announcing all the networks it is connected to on other interfaces. I've anonymised the non-rfc1918 addresses, but (and this might be important) they are the 'lowest' addresses on the router.

/etc/ospfd.conf:

cost_vpn="100"
cost_gige="10"
cost_gige_shared="12"
cost_gige_crossover="8"

router-id 192.168.50.10

auth-key <censored>
auth-type simple
hello-interval 6
retransmit-interval 5
router-dead-time 10
redistribute connected
redistribute static

area 0.0.0.0 {
        interface trunk0 {
                metric $cost_gige_crossover
        }
        interface trunk2 {
                metric $cost_gige
                passive
        }
        interface vlan1 {
                metric $cost_gige_shared
                passive
        }
        interface vlan5 {
                metric $cost_gige_shared
                passive
        }
        interface vlan6 {
                metric $cost_gige_shared
                passive
        }
        interface vlan8 {
                metric $cost_gige_shared
                passive
        }
        interface vlan10 {
                metric $cost_gige_shared
                passive
        }
        interface vlan20 {
                metric $cost_gige_shared
        }
        interface lo1:1.2.3.4 {
                metric $cost_gige
                passive
        }
        interface lo1:1.2.3.5 {
                metric $cost_gige
                passive
        }
        interface lo1:1.2.3.6 {
                metric $cost_gige
                passive
        }
        interface lo1:1.2.3.7 {
                metric $cost_gige
                passive
        }
        interface lo1:1.2.3.8 {
                metric $cost_gige
                passive
        }
}


--
Russell Howe, IT Manager. BMT Marine & Offshore Surveys Ltd.
[EMAIL PROTECTED]

Reply via email to