mirror of
https://github.com/kernelkit/infix.git
synced 2026-07-22 01:13:00 +02:00
doc: update IPv6 forwarding documentation
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
@@ -415,13 +415,12 @@ admin@example:/>
|
||||
|
||||
## IPv6 forwarding
|
||||
|
||||
Due to how the Linux kernel manages IPv6 forwarding, we can not fully
|
||||
control it per interface via this setting like how IPv4 works. Instead,
|
||||
IPv6 forwarding is globally enabled when at least one interface enable
|
||||
forwarding, otherwise it is disabled.
|
||||
Forwarding must be enabled on an interface for it to route IPv6
|
||||
traffic (static or dynamic). The setting is per-interface and works
|
||||
the same way as IPv4 forwarding.
|
||||
|
||||
The following table shows the system IPv6 features that the `forwarding`
|
||||
setting control when it is *Enabled* or *Disabled:
|
||||
The following table shows the IPv6 features that the `forwarding`
|
||||
setting controls when it is *Enabled* or *Disabled*:
|
||||
|
||||
| **IPv6 Feature** | **Enabled** | **Disabled** |
|
||||
|:-----------------------------------------|:------------|:-------------|
|
||||
|
||||
@@ -335,6 +335,10 @@ static int netdag_gen_sysctl(struct dagger *net,
|
||||
err = err ? : netdag_gen_sysctl_setting(net, ifname, &sysctl, 1, "0", node,
|
||||
"net.ipv4.conf.%s.forwarding", ifname);
|
||||
|
||||
/*
|
||||
* Use force_forwarding for IPv6 (available since Linux 6.17) which provides
|
||||
* true per-interface control, unlike the legacy forwarding sysctl.
|
||||
*/
|
||||
node = lydx_get_descendant(lyd_child(dif), "ipv6", "forwarding", NULL);
|
||||
err = err ? : netdag_gen_sysctl_setting(net, ifname, &sysctl, 1, "0", node,
|
||||
"net.ipv6.conf.%s.force_forwarding", ifname);
|
||||
|
||||
Reference in New Issue
Block a user