FreeBSD's base DHCP client (dhclient) currently does not support acquiring an IPv6 IP address via DHCP.
This article details how to install the dual-dhclient port to be able to acquire both an IPv4 and IPv6 address via DHCP servers on a dual-stack network.
Description from /usr/ports/net/dual-dhclient/pkg-message:
This port provides a script which spawns both /sbin/dhclient and
/usr/local/sbin/dhclient -6; this simplifies the configuration needed to
run DHCP on both protocols of a dual-stack network.
make install clean
/etc/rc.conf with the following and replace em0 with your network interface:
ifconfig_em0="DHCP" # inet ipv4 address via FreeBSD base dhclient
ifconfig_em0="inet6 DHCP" # inet6 ipv6 address via dual-dhclient.
Reboot and check if the interface acquired both DHCP addresses.
For troubleshooting check relevant logs.
DHCP IPv6 Lease File: