diff --git a/man/systemd.network.xml b/man/systemd.network.xml index b6bf993adc0..d847f0a0a3f 100644 --- a/man/systemd.network.xml +++ b/man/systemd.network.xml @@ -2089,22 +2089,6 @@ Table=1234 - - ForceDHCPv6PDOtherInformation= - - Takes a boolean that enforces DHCPv6 stateful mode when the 'Other information' bit is set in - Router Advertisement messages. By default setting only the 'O' bit in Router Advertisements - makes DHCPv6 request network information in a stateless manner using a two-message Information - Request and Information Reply message exchange. - RFC 7084, requirement WPD-4, updates - this behavior for a Customer Edge router so that stateful DHCPv6 Prefix Delegation is also - requested when only the 'O' bit is set in Router Advertisements. This option enables such a CE - behavior as it is impossible to automatically distinguish the intention of the 'O' bit otherwise. - By default this option is set to false, enable it if no prefixes are delegated when the device - should be acting as a CE router. - - - WithoutRA= diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c index 52ff5eb3aab..aba0699780f 100644 --- a/src/network/networkd-dhcp6.c +++ b/src/network/networkd-dhcp6.c @@ -1312,7 +1312,7 @@ static void dhcp6_handler(sd_dhcp6_client *client, int event, void *userdata) { } int dhcp6_request_information(Link *link, int ir) { - int r, inf_req, pd; + int r, inf_req; bool running; assert(link); @@ -1325,20 +1325,6 @@ int dhcp6_request_information(Link *link, int ir) { return r; running = r; - r = sd_dhcp6_client_get_prefix_delegation(link->dhcp6_client, &pd); - if (r < 0) - return r; - - if (pd && ir && link->network->dhcp6_force_pd_other_information) { - log_link_debug(link, "Enabling managed mode to request DHCPv6 PD with 'Other Information' set"); - - r = sd_dhcp6_client_set_address_request(link->dhcp6_client, false); - if (r < 0) - return r; - - ir = false; - } - if (running) { r = sd_dhcp6_client_get_information_request(link->dhcp6_client, &inf_req); if (r < 0) diff --git a/src/network/networkd-network-gperf.gperf b/src/network/networkd-network-gperf.gperf index ccbf02b99d9..3caf7c2bdd1 100644 --- a/src/network/networkd-network-gperf.gperf +++ b/src/network/networkd-network-gperf.gperf @@ -248,7 +248,6 @@ DHCPv6.RequestOptions, config_parse_dhcp_request_options, DHCPv6.UserClass, config_parse_dhcp_user_or_vendor_class, AF_INET6, offsetof(Network, dhcp6_user_class) DHCPv6.VendorClass, config_parse_dhcp_user_or_vendor_class, AF_INET6, offsetof(Network, dhcp6_vendor_class) DHCPv6.SendVendorOption, config_parse_dhcp_send_option, AF_INET6, offsetof(Network, dhcp6_client_send_vendor_options) -DHCPv6.ForceDHCPv6PDOtherInformation, config_parse_bool, 0, offsetof(Network, dhcp6_force_pd_other_information) DHCPv6.PrefixDelegationHint, config_parse_dhcp6_pd_prefix_hint, 0, 0 DHCPv6.WithoutRA, config_parse_dhcp6_client_start_mode, 0, offsetof(Network, dhcp6_without_ra) DHCPv6.SendOption, config_parse_dhcp_send_option, AF_INET6, offsetof(Network, dhcp6_client_send_options) @@ -530,11 +529,12 @@ DHCP.RouteTable, config_parse_dhcp_or_ra_route_table DHCP.UseTimezone, config_parse_bool, 0, offsetof(Network, dhcp_use_timezone) DHCP.ListenPort, config_parse_uint16, 0, offsetof(Network, dhcp_client_port) DHCP.RapidCommit, config_parse_warn_compat, DISABLED_LEGACY, 0 -DHCP.ForceDHCPv6PDOtherInformation, config_parse_bool, 0, offsetof(Network, dhcp6_force_pd_other_information) +DHCP.ForceDHCPv6PDOtherInformation, config_parse_warn_compat, DISABLED_LEGACY, 0 DHCPv4.UseDomainName, config_parse_dhcp_use_domains, AF_INET, 0 DHCPv4.CriticalConnection, config_parse_tristate, 0, offsetof(Network, dhcp_critical) DHCPv6.RouteMetric, config_parse_dhcp_or_ra_route_metric, AF_INET6, 0 DHCPv6.RapidCommit, config_parse_warn_compat, DISABLED_LEGACY, 0 +DHCPv6.ForceDHCPv6PDOtherInformation, config_parse_warn_compat, DISABLED_LEGACY, 0 IPv6AcceptRA.DenyList, config_parse_in_addr_prefixes, AF_INET6, offsetof(Network, ndisc_deny_listed_prefix) IPv6AcceptRA.BlackList, config_parse_in_addr_prefixes, AF_INET6, offsetof(Network, ndisc_deny_listed_prefix) TrafficControlQueueingDiscipline.Parent, config_parse_qdisc_parent, _QDISC_KIND_INVALID, 0 diff --git a/src/network/networkd-network.h b/src/network/networkd-network.h index bd9758c899a..f8d62fee6c3 100644 --- a/src/network/networkd-network.h +++ b/src/network/networkd-network.h @@ -189,8 +189,6 @@ struct Network { OrderedHashmap *dhcp6_client_send_options; OrderedHashmap *dhcp6_client_send_vendor_options; Set *dhcp6_request_options; - /* Start DHCPv6 PD also when 'O' RA flag is set, see RFC 7084, WPD-4 */ - bool dhcp6_force_pd_other_information; /* DHCP Server Support */ bool dhcp_server;