Files
infix/test/case/dhcp
Joachim Wiberg fa6023c9c4 Migrate to odhcp6c for dhpcv6 client support
Replace BusyBox udhcpc6 with OpenWrt's odhcp6c for improved DHCPv6
functionality and better integration with Router Advertisements (RA).

The primary motivation is support for a common ISP deployment scenario
where IPv6 addresses are assigned via SLAAC (from Router Advertisements)
and DHCPv6 is used in stateless/information-only mode to provide DNS
servers and other configuration options. This hybrid RA+DHCPv6 setup is
standard practice for many ISPs but was not supported by udhcpc6, which
treats RA and DHCPv6 as separate, non-integrated mechanisms.

Additional benefits of odhcp6c:

- Better IPv6 Prefix Delegation (IA-PD) support with proper handling
  of delegated prefix lifetimes and renewal
- Native integration of RA-provided configuration (DNS servers, routes,
  addresses) with DHCPv6-provided options
- Support for stateless DHCPv6 via information-only mode

To verify stateless DHCPv6 integration with SLAAC addresses - the ISP
scenario that motivated this migration, a new test case has been added.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2026-01-10 13:15:53 +01:00
..

:testgroup:
== DHCP

Tests verifying DHCPv4/DHCPv6 client and server functionality:

 - Basic DHCPv4 client lease acquisition and configuration
 - DHCPv4 client with default gateway assignment
 - DHCPv4 client with static route configuration
 - DHCPv4 client hostname management and priority
 - Basic DHCPv6 client operation with address assignment
 - DHCPv6 client with prefix delegation (IA_PD)
 - DHCPv6 SLAAC/RA (Stateless)
 - Basic DHCPv4 server operation and lease assignment
 - DHCPv4 server with host-specific IP reservations
 - DHCPv4 server with multiple subnet configurations

include::client_basic/Readme.adoc[]

<<<

include::client_default_gw/Readme.adoc[]

<<<

include::client_routes/Readme.adoc[]

<<<

include::client_hostname/Readme.adoc[]

<<<

include::client6_basic/Readme.adoc[]

<<<

include::client6_prefix_delegation/Readme.adoc[]

<<<

include::client6_slaac_ra/Readme.adoc[]

<<<

include::server_basic/Readme.adoc[]

<<<

include::server_host/Readme.adoc[]

<<<

include::server_subnets/Readme.adoc[]