Hello,

I'm having some very weird carp problems with OpenBSD 4.0-stable running
on HP Proliant DL 360 machines, with dual bge and quad em network
interface cards. I've invested already two days trying to solve weird
problems on these machines related to carp, and I feel like I've been
banging my head on concrete walls.

First a simple network diagram:

    Switch 4A------- trunk ------Switch 4B
       | |                          | |
    em0\ /em3                    em0\ /em3
       pfi1---- bge0 is pfsync0 ----pfi2
   em1/|em2\bge1               em1/|em2\bge1
      ||   |                      ||   |
    Switch 5A------- trunk ------Switch 5B

On both machines:
em0 connects to vlan 100 of switch 4 A/B
em3 connects to vlan 200 of switch 4 A/B
em1 connects to vlan 100 of switch 5 A/B
em2 connects to vlan 200 of switch 5 A/B
bge1 connects to vlan 300 of switch 5 A/B

carp0 is on em0
carp1 is on em1
carp2 is on em2
carp3 is on em3
carp4 is on bge1

All 4 switches are Cisco Catalyst 2950, and I am now using spanning-tree
portfast on all pfi1 and pfi2 interface ports since I read that that
could help. It didn't.

If this drawing isn't clear enough, then please help me explain it!

Next:
only bge0 doesn't have a carp interface associated to it, but it is
pfsync0 (even tough pf is currently disable so I can make sure it isn't
breaking something by accident).

Next:
on boot, pfi1 becomes MASTER on all interfaces as expected, since
net.inet.carp.preempt=1 is on sysctl and pfi2 has advskew 100 on all
carp interfaces.
pfi2 is BACKUP on all interfaces as expected, as well.

Next: I start sniffing the network on em0 on both machines with
        tcpdump -v -pni em0 ip
Next: I watch all carp interfaces in console 2 with
        while ifconfig carp | grep -v inet ; do sleep 1 ; done

Next: I disconnect pfi1's em1 by pulling the cable off Switch 4A, here's
what I see on tcpdump (well, not the traffic, that is in the
attachment):
        1) pfi1 was advertising carp0 with advskew=0
        2) pfi1 advertised carp0 with advskew=240 ONCE
        3) pfi2 advertised carp0 with advskew=100 ONCE
        4) advertisement of carp simply stops (on all other carp
           interfaces too)

Next: what I see on the interfaces:
        1) on pfi1, all carp interfaces are BACKUP as expected except
           for carp1 which is on INIT state (as execpted).
        2) on pfi2, all carp interfaces are MASTER *except* for carp1
           which is BACKUP

Next: I plug back pfi1's em1 cable in the same switch port, but there's
no change. No advertisement, no changes on pfi2. What simply happens is
that pfi1's carp1 becomes BACKUP.

I'm starting to become raving mad with this :) I hope the attachments
can also be of some help.

Thanks in advance to anyone who can help me,
Rui

ps: I'm giving it sometime to not stress to much over it and move to the
GNU/Linux application servers while I "rest" and see if someone can help
me.

-- 
+ No matter how much you do, you never do enough -- unknown
+ Whatever you do will be insignificant,
| but it is very important that you do it -- Gandhi
+ So let's do it...?

[demime 1.01d removed an attachment of type application/x-compressed-tar which 
had a name of pfi1-data.tar.gz]

[demime 1.01d removed an attachment of type application/x-compressed-tar which 
had a name of pfi2-data.tar.gz]

Reply via email to