networkd: Assign VXLAN destination port to when GPE is set

When VXLAN destination port is unset and GPE is set
then assign 4790 to destination port. Kernel does the same as
well as iproute.

IANA VXLAN-GPE port is 4790
This commit is contained in:
Susant Sahani 2019-05-08 20:09:42 +05:30 committed by Yu Watanabe
parent 4eb086a387
commit 1c8b0eccc7
2 changed files with 5 additions and 1 deletions

View file

@ -661,7 +661,8 @@
<para>Takes a boolean. When true, Generic Protocol Extension extends the existing VXLAN protocol
to provide protocol typing, OAM, and versioning capabilities. For details about the VXLAN GPE
Header, see the <ulink url="https://tools.ietf.org/html/draft-ietf-nvo3-vxlan-gpe-07">
Generic Protocol Extension for VXLAN </ulink> document. Defaults to false.</para>
Generic Protocol Extension for VXLAN </ulink> document. If destination port is not specified and
Generic Protocol Extension is set then default port of 4790 is used. Defaults to false.</para>
</listitem>
</varlistentry>
<varlistentry>

View file

@ -289,6 +289,9 @@ static int netdev_vxlan_verify(NetDev *netdev, const char *filename) {
"%s: VXLAN TTL must be <= 255. Ignoring.",
filename);
if (!v->dest_port && v->generic_protocol_extension)
v->dest_port = 4790;
return 0;
}