Page MenuHomeVyOS Platform

VRRP add option virtual_ipaddress_excluded
Closed, ResolvedPublicFEATURE REQUEST

Description

# VRRP IP excluded from VRRP optional.
# For cases with large numbers (eg 200) of IPs
# on the same interface. To decrease the number
# of addresses sent in adverts, you can exclude
# most IPs from adverts.
# The IPs are add|del as for virtual_ipaddress.
# Can also be used if you want to be able to add
# a mixture of IPv4 and IPv6 addresses, since all
# addresses in virtual_ipaddress must be of the
# same family.
virtual_ipaddress_excluded {
    <IPADDR>[/<MASK>] [brd <IPADDR>] [dev <STRING>] [scope <SCOPE>]
                      [label <LABEL>] [peer <IPADDR>] [home]
                      [-nodad] [mngtmpaddr] [noprefixroute]
                      [autojoin] [no_track]
    <IPADDR>[/<MASK>] ...
    ...
}

ref. https://manpages.debian.org/unstable/keepalived/keepalived.conf.5.en.html

Details

Difficulty level
Unknown (require assessment)
Version
-
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Feature (new functionality)

Event Timeline

PR https://github.com/vyos/vyos-1x/pull/557

To decrease the number of packets sent in adverts, you can exclude most IPs from adverts." It also mentions a secondary IPv4+IPv6 use case.

set interfaces ethernet eth1 address '100.64.0.254/24'
set interfaces ethernet eth1 description 'LAN'

set high-availability vrrp group GRP01 hello-source-address '100.64.0.254'
set high-availability vrrp group GRP01 interface 'eth1'
set high-availability vrrp group GRP01 no-preempt
set high-availability vrrp group GRP01 peer-address '100.64.0.253'
set high-availability vrrp group GRP01 priority '150'
set high-availability vrrp group GRP01 rfc3768-compatibility
set high-availability vrrp group GRP01 virtual-address '100.64.0.1/24'
set high-availability vrrp group GRP01 virtual-address-excluded '2001:DB8::1/64'
set high-availability vrrp group GRP01 virtual-address-excluded '2001:DB8::2/64'
set high-availability vrrp group GRP01 virtual-address-excluded '2001:DB8::3/64'
set high-availability vrrp group GRP01 virtual-address-excluded '203.0.113.3/32'
set high-availability vrrp group GRP01 virtual-address-excluded '203.0.113.4/32'
set high-availability vrrp group GRP01 virtual-address-excluded '203.0.113.5/32'
set high-availability vrrp group GRP01 vrid '10'

Keepalived.conf

vrrp_instance GRP01 {
    state BACKUP
    interface eth1
    virtual_router_id 10
    priority 150
    advert_int 1

    nopreempt
    unicast_peer { 100.64.0.253 }
    unicast_src_ip 100.64.0.254
    use_vmac eth1v10
      vmac_xmit_base
    virtual_ipaddress {
    100.64.0.1/24
    }

    virtual_ipaddress_excluded {
    2001:DB8::1/64
    2001:DB8::2/64
    2001:DB8::3/64
    203.0.113.3/32
    203.0.113.4/32
    203.0.113.5/32
    }
    }

Ip addresses on master

4: eth1v10@eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:00:5e:00:01:0a brd ff:ff:ff:ff:ff:ff
    inet 100.64.0.1/24 scope global eth1v10
       valid_lft forever preferred_lft forever
    inet 203.0.113.3/32 scope global eth1v10
       valid_lft forever preferred_lft forever
    inet 203.0.113.4/32 scope global eth1v10
       valid_lft forever preferred_lft forever
    inet 203.0.113.5/32 scope global eth1v10
       valid_lft forever preferred_lft forever
    inet6 2001:db8::3/64 scope global nodad 
       valid_lft forever preferred_lft forever
    inet6 2001:db8::2/64 scope global nodad 
       valid_lft forever preferred_lft forever
    inet6 2001:db8::1/64 scope global nodad 
       valid_lft forever preferred_lft forever
erkin set Issue type to Feature (new functionality).Aug 29 2021, 12:49 PM
Viacheslav claimed this task.
Viacheslav removed a project: VyOS 1.2 Crux.
Viacheslav moved this task from Need Triage to Finished on the VyOS 1.3 Equuleus (1.3.0) board.