Many thanks for this very informative explanation. I did not know about CGN before now, but Wikipedia clearly explains why "direct connect" VNC (which depends on port forwarding in the router) will not work:
"Carrier-grade NAT usually prevents the ISP customers from using port forwarding because the network address translation (NAT) is usually implemented by mapping ports of the NAT devices in the network to other ports in the external interface. This is done so the router will be able to map the responses to the correct device; in carrier-grade NAT networks, even though the router at the consumer end might be configured for port forwarding, the "master router" of the ISP, which runs the CGN, will block this port forwarding because the actual port would not be the port configured by the consumer."
At least Team Viewer works as my fallback connectivity. So even though it definitely is slow (not only because of the erratic download speed and guaranteed very low upload speed of HughesNet, but also because of the enormous latency implicit in satellite service), at least it is usable.
Incidentally, VNC version 6.1.1 now supports a fee-based seat-based Cloud-based web-facilitated connectivity that uses a non-router approach similar to that of Team Viewer, in addition to the old original "direct connection" approach (which depends on port-forwarding in the router) that I've always used. It's called "VNC Connect", although I've never used it since I'm already paying to license their direct client/server technology. In contrast, I use Team Viewer "for personal use" (which is available free for non-commercial use) to support friends and family.
Anyway, again, many thanks for the unfortunate news about why I will not be able to use VNC to support my friend in Florida. But I've learned something.