diff --git a/man/systemd.netdev.xml b/man/systemd.netdev.xml
index 454878d680..21c7ba8270 100644
--- a/man/systemd.netdev.xml
+++ b/man/systemd.netdev.xml
@@ -713,7 +713,7 @@
Id=
- Specifies the Virtual Network Identifier (VNI) to use. Ranges [0-16777215].
+ Specifies the Virtual Network Identifier (VNI) to use. Ranges [0-16777215]. This field is mandatory.
@@ -731,7 +731,9 @@
TTL=
- Specifies the TTL value to use in outgoing packets. Ranges [1-255].
+ Specifies the TTL value to use in outgoing packets. Takes a number in the range 0-255.
+ When unset or set to 0, the kernel's default will be used meaning that packets TTL will be set from
+ /proc/sys/net/ipv4/ip_default_ttl.
diff --git a/src/network/netdev/geneve.c b/src/network/netdev/geneve.c
index fee596e582..1b1cd2fc9e 100644
--- a/src/network/netdev/geneve.c
+++ b/src/network/netdev/geneve.c
@@ -278,10 +278,10 @@ static int netdev_geneve_verify(NetDev *netdev, const char *filename) {
assert(v);
assert(filename);
- if (v->ttl == 0) {
- log_warning("Invalid Geneve TTL value '0' configured in '%s'. Ignoring", filename);
- return -EINVAL;
- }
+ if (v->id > GENEVE_VID_MAX)
+ return log_netdev_warning_errno(netdev, SYNTHETIC_ERRNO(EINVAL),
+ "%s: Geneve without valid VNI (or Virtual Network Identifier) configured. Ignoring.",
+ filename);
return 0;
}