Page MenuHomeVyOS Platform

Wrong configuration generated for DHCPv6 Relay
Closed, ResolvedPublicBUG

Description

Hello!

In the situation, when we want to use more than one DHCPv6 "upper" interface in DHCPv6-Relay, [[ https://github.com/vyos/vyos-1x/blob/c4c183a16fe2ddc612ed947fc5513c87f30c7c27/src/conf_mode/dhcpv6_relay.py#L34 | dhcpv6_relay.py ]] generates wrong OPTIONS. Multiple upstream_addr is joining with -u but must be joined with -u (with additional space at the start). In another case, dhcrelay can't start, because OPTIONS looks like:

OPTIONS="-6 -l XXXX:XXXX:XXXX%eth1  -u XXXX:XXXX:XXXX%eth2-u XXXX:XXXX:XXXX%eth3"

Also, we can't configure multiple upstream DHCPv6 servers in config on the same upstream-interface: instead of adding new IPv6 addresses to an upstream-interface configuration, they are replacing.

Details

Difficulty level
Easy (less than an hour)
Version
1.2.0-rolling+201903040337, 1.2.0-LTS
Why the issue appeared?
Implementation mistake
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Unspecified (please specify)

Event Timeline

c-po triaged this task as Normal priority.
c-po added a project: VyOS 1.3 Equuleus.
c-po changed Why the issue appeared? from Will be filled on close to Implementation mistake.
c-po moved this task from Need Triage to Finished on the VyOS 1.3 Equuleus board.
c-po moved this task from Need Triage to VyOS 1.2.1 on the VyOS 1.2 Crux board.
c-po edited projects, added VyOS 1.2 Crux (VyOS 1.2.1); removed VyOS 1.2 Crux.
c-po moved this task from Needs Triage to Finished on the VyOS 1.2 Crux (VyOS 1.2.1) board.

Sorry, I must reopen this task. Absolutely the same situation with multiple "lower" interfaces:

OPTIONS="-6 -l ::%eth1.100-l ::%eth1.102 -u 2001:db8:0:feed::2%eth2.88 -u 2001:db8:0:feed::3%eth2.88 "
                         ^^
                         here

Thanks for reopening and reporting.

Fixed on both current and crux

dmbaturin set Is it a breaking change? to Unspecified (possibly destroys the router).
dmbaturin set Issue type to Unspecified (please specify).