Setting P4TARGET protocol

Set P4TARGET to the fully-qualified domain name or IP address of the master server from which a replica server is to retrieve its data.

You can:

  • set P4TARGET explicitly
  • use p4 configure to set a P4TARGET for each named replica server
  • specify on the p4d command line -t protocol:host:port
    so that p4d examines its configuration for startup.N commands. If no valid p4 pull commands are found, p4d waits for the user to manually start a p4 pull command. If you omit a target, p4d assumes the existence of an external metadata replication source, such as p4 replicate. For more information, see "p4 pull vs. p4 replicate" in the p4 pull command topic.
Protocol Behavior

<not set>

Use tcp4: behavior, but if the address is numeric and contains two or more colons, assume tcp6:. If the net.rfc3484 configurable is set, allow the OS to determine which transport is used.

tcp:

Use tcp4: behavior, but if the address is numeric and contains two or more colons, assume tcp6:. If the net.rfc3484 configurable is set, allow the OS to determine which transport is used.

tcp4:

Listen on/connect to an IPv4 address/port only.

tcp6:

Listen on/connect to an IPv6 address/port only.

tcp46:

Attempt to listen on/connect to an IPv4 address/port. If this fails, try IPv6.

tcp64:

Attempt to listen on/connect to an IPv6 address/port. If this fails, try IPv4.

ssl:

Use ssl4: behavior, but if the address is numeric and contains two or more colons, assume ssl6:. If the net.rfc3484 configurable is set, allow the OS to determine which transport is used.

ssl4:

Listen on/connect to an IPv4 address/port only, using SSL encryption.

ssl6:

Listen on/connect to an IPv6 address/port only, using SSL encryption.

ssl46:

Attempt to listen on/connect to an IPv4 address/port. If this fails, try IPv6. After connecting, require SSL encryption.

ssl64:

Attempt to listen on/connect to an IPv6 address/port. If this fails, try IPv4. After connecting, require SSL encryption.

P4TARGET can be the hostname or the IP address of the host. Both IPv4 and IPv6 addresses are supported. For the listen setting, you can use the * wildcard to refer to all IP addresses, but only when you are not using CIDR notation.

If you use the * wildcard with an IPv6 address, you must enclose the entire IPv6 address in square brackets. For example, [2001:db8:1:2:*] is equivalent to [2001:db8:1:2::]/64. Best practice is to use CIDR notation, surround IPv6 addresses with square brackets, and avoid the * wildcard.