I believe on OpenBSD when you create the CARP interface, you tell it the physical device to use (carpdev option). Then you remove the IP from the physical device, and you put that IP on the CARP device.
In order to be able to connect to the individual boxes, you would add another interface to the box (or add a vLAN), and give that an IP.
Thus, between the two boxes, you would have 3 IPs:
- the CARP IP, which is shared between the two boxes, that hosts on the LAN point to
- the management IP for boxA
- the management IP for boxB
It would be wonderful if the carpdev option was ported to FreeBSD...