NAT, which is supported in an HADR environment, is usually used for firewall and security because it hides the server's real address.
In an HADR setup, the local and remote host configurations on the primary and standby nodes are cross-checked to ensure they are correct. In a NAT environment, a host is known to itself by a particular IP address but is known to the other hosts by a different IP address. This behavior causes the HADR host cross-check to fail unless you set the DB2_HADR_NO_IP_CHECK registry variable to ON. Using this setting causes the host cross-check to be bypassed, enabling the primary and standby to connect in a NAT environment.
If you are not running in a NAT environment, use the default setting of OFF for the DB2_HADR_NO_IP_CHECK registry variable. Disabling the cross-check weakens the HADR validation of your configuration.
In a NAT environment with a multiple standby setup, each standby's settings for hadr_local_host and hadr_local_svc must still be listed in the primary's hadr_target_list or the primary does not accept the connection from that standby.
In a multiple standby setup, DB2_HADR_NO_IP_CHECK should be set on all databases that might be making a connection to another database across a NAT boundary. If a database will never cross a NAT boundary to connect to another database (that is, if no such link is configured), then you should not set this registry variable on that database. When DB2_HADR_NO_IP_CHECK is set, it prevents a standby from automatically discovering the new primary after a takeover has occurred, and you have to manually reconfigure the standby to have it connect to the new primary.