Background info (pardon my lack of the correct lingo here): I'm going to be running a pair of physical servers, each hosting some simple sites with Nginx. The servers are in a colo and I will have some dedicated IP addresses (up to 16). The servers are connected via a switch. And their network sits behind a Cisco firewall.
My intention (correct me, if this is completely wrong) is to give each server a virtual IP. Then, traffic coming in through the firewall will be prepared to one of the virtual IP addresses (my primary server). This way, if I have a problem with the primary physical server, I can shut it down and use its VIP in the backup physical server (manual failover). My understanding is that if I change the Virtual IP of the failover server to the one that the primary server was using, requests to the public IP address will then be routed to the failover server.
I'm very confused, however, when it comes to understanding networks (as you can probably already tell).
1) If a TCP connection comes to my website's public IP, it'll hit the firewall. Then, it'll be directed to the primary server (based on the VIP). Is this correct?
2) If my servers both sit behind the same firewall, how can they both be accessed at the same IP address (so that I can point my A Record at a single IP)? Or, is this impossible to do with a firewall and only a router can handle that?
3) Would my use case be better suited to use a static IP address or DHCP? What are some downfalls of either?
4) Am I even understanding public IP addresses correctly. Do I assign a single public IP address to my firewall, then forward connections from there back to a single IP behind my firewall? Or, do each of my servers get an IP address and TCP connections simply come through my firewall and into one of the servers based on the IP being connected to?