Dunno if this is possible...

I'm trying to set up an OpenBSD (4.2 snapshot) router as a VRRP
neighbor to a Juniper M7i (JunOS version 7.5R2).  I've set up the
following:

On the M7i Gigabit interface:

unit 0 {
    description "Gigabit Ethernet Backbone";
    family inet {
        mtu 9000;
        no-redirects;
        address X.X.X.49/28 {
            vrrp-group 55 {
                virtual-address X.X.X.55;
                priority 10;
                accept-data;
            }
        }
    }
}

> show vrrp detail
Physical interface: ge-0/0/0, Unit: 0, Address: X.X.X.49/28
  Index: 72, SNMP ifIndex: 72, VRRP-Traps: enabled
  Interface state: up, Group: 55, State: master
  Priority: 10, Advertisement interval: 1, Authentication type: none
  Preempt: yes, Accept-data mode: yes, VIP count: 1, VIP: X.X.X.55
  Advertisement timer: 0.631s, Master router: X.X.X.49
  Virtual router uptime: 00:46:48, Master router uptime: 00:46:39
  Virtual MAC: 00:00:5e:00:01:37
  Tracking: disabled


On the OpenBSD machine (4.2 GENERIC.MP#259):

msk0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 9000
        lladdr 00:00:5a:72:6f:9f
        description: Gigabit Ethernet Backbone #1
        media: Ethernet autoselect (1000baseT full-duplex)
        status: active
        inet X.X.X.50 netmask 0xfffffff0 broadcast X.X.X.63
        inet6 fe80::200:5aff:fe72:6f9f%msk0 prefixlen 64 scopeid 0x4

carp1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        lladdr 00:00:5e:00:01:37
        carp: MASTER carpdev msk0 vhid 55 advbase 1 advskew 150
        groups: carp
        inet6 fe80::200:5eff:fe00:137%carp1 prefixlen 64 scopeid 0xe
        inet X.X.X.55 netmask 0xfffffff0 broadcast X.X.X.63

CARP preempt is set on the BSD box.

They both show up as CARP/VRRP masters no matter how much I play with
the VRRP priority or the CARP advskew, and cause duplicate IP probs
(same IP, same virtual MAC).

I turned on logging for CARP, and am getting this:

carp: packet too short 40 on carp1
carp: packet too short 40 on carp1
carp: packet too short 40 on carp1
<etc, etc>

Doing a sniff, it looks like the VRRP packet from the Juniper is 10
bytes smaller than the CARP packet on the BSD machine (60 bytes vs
70).  Does anyone know if there's a tweakable option to fix this, or
if it's even possible to do this at all (is CARP compatible with
regular VRRP)?

Reply via email to