Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Keepalived: use_vmac, verkeerd mac adres

Pagina: 1
Acties:

  • cyberstalker
  • Registratie: September 2005
  • Niet online

cyberstalker

Eersteklas beunhaas

Topicstarter
Ik ben bezig om een keepalived configuratie op te zetten om daarbij meerdere loadbalancers in failover mode te draaien. Ik heb de keepalived.conf ingesteld om een macvlan device aan te maken gekoppeld aan bond0.

Als ik keepalived start, kan ik inderdaad verbinden naar de ip adressen die het moet aanmaken, maar de arp tabel bevat het mac adres van de bonding interface, i.p.v. de vmac interface. Als ik de arp entry lokaal aanpas naar het mac adres van de vmac interface, kan ik niet meer pingen of verbinden met het ip adres.

Ik heb de volgende dingen al gecontroleerd:

code:
1
2
3
4
5
6
7
8
9
10
11
# global configuration
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 1
net.ipv4.conf.all.arp_filter = 0

# physical interface
net.ipv4.conf.bond0.arp_filter = 1

# macvlan interface
net.ipv4.conf.vrrp0.arp_filter = 0
net.ipv4.conf.vrrp0.accept_local = 1


Daarnaast heb ik gezien dat de kernel de patch op http://git.kernel.org/?p=...65c11a5a35031ba47f18221c4 meegecompileerd heeft.

Ik heb de volgende keepalived.conf
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
vrrp_instance LB_GROUP_2 {
    nopreempt                   # do not assume master from another running server, even if we have a higher priority
    smtp_alert                  # send notifications when we are in failover state
    interface           bond0   # this is the real interface that will handle all the traffic
    virtual_router_id   47      # identifies the whole group as a single virtual router
    use_vmac            vrrp0   # virtual mac address for failover without gratitious arp
    garp_master_delay   3       # wait before sending gratuitous arp after becoming master
    priority            100     # priority for this router
    advert_int          1       # interval between advertisements

    # authenticate VRRP packages with these credentials
    authentication {
        auth_type PASS
        auth_pass 1337
    }

    # the virtual ip addresses we need to manage
    virtual_ipaddress {
        XXX.XXX.XXX.XXX
    }
}


Nu kom ik er niet uit hoe ik ervoor kan zorgen dat pakketten die worden gestuurd aan het macadres van vrrp0 aankomen op bond0. Ik zie ze wel verschijnen in tcpdump, maar ze komen nooit verder. Ik weet wel dat ik nog een aantal entries moet gaan toevoegen aan de keepalived.conf voor notify_master e.a. maar ik wil eerst begrijpen waarom het nu niet werkt.

Daarnaast krijg ik het niet voor elkaar dat keepalived het macadres van vrrp0 broadcast, die lijken op bond0 te worden verstuurd.

Ik ontken het bestaan van IE.