KNOWLEDGE BASE

Identifying and Disabling Temporary IPv6 Addresses


Published: 10 Apr 2017
Last Modified Date: 10 Apr 2017

Issue

Tableau Server requires static IPv4 or IPv6 addresses. You may notice undesirable symptoms if your cluster has temporary IPv6 addresses (which are dynamic) enabled.

Symptoms

If you are running a Tableau Server cluster and one or more of the servers has temporary IPv6 addresses enabled, you may notice one or more of the following categories of symptoms.

"Down" Status in Status Table

If a primary Tableau Server has temporary IPv6 addresses enabled, worker servers running a data engine and/or repository may have a red, down status for those processes. This is because they are unable to communicate with the primary. For example, in the following graphic, TAB-SERVER has temporary IPv6 addresses enabled, but TAB-WORKER does not:



If one or more workers have temporary IPv6 addresses enabled (but the primary does not) you may not see the red, down status icons for any of the servers, but you will see connection errors in log files as the workers attempt and fail to communicate with services on the primary Tableau Server.

Log File Errors

Here are examples of errors that may be written to the Tableau Server log files, if the primary Tableau Server or Tableau Worker servers have temporary IPv6 addresses enabled.

Data Engine Connection Errors

A message similar to the following may be in the log file for the server(s) running the data engine (ProgramData\Tableau\Tableau Server\data\tabsvc\logs\dataengine\tabspawnde0.log):

2013-10-23 16:02:41.234 -0700 ERROR root: connection to database failed

The process that spawns the data engine is unable to query Tableau's PostgreSQL database to determine which is the active data engine and which is the standby data engine. This information is in the following location: ProgramData\Tableau\Tableau Server\data\tabsvc\logs\dataengine\tdeserver0_<date_and_time>.log. For example, in the log file you may see a message similar to this:

2013-10-24 10:57:40.345 (6056): tdeserver: connection failed (IPC_Server_Socket: whitelist exclusion, peer=1234:113:f00b:2108:f51d:2101:c67c:ea97:12345)

Repository Access Errors

A message similar to the following may in in the log file for the server(s) running the repository (ProgramData\Tableau\Tableau Server\data\tabsvc\logs\pgsql\postgresql-<Day>.log):

2013-10-24 10:53:01.112 PDT 5444 FATAL: no pg_hba.conf entry for host "1234:113:f00b:2108:f51d:2101:c67c:ea97", user "tblwgadmin", database "workgroup", SSL off

Environment

  • Tableau Server
  • Windows

Resolution

Confirming whether an operating system has temporary IPv6 addresses enabled, and how to disable them.

Determining if temporary IPv6 addresses are enabled

Step 1 

Open a command prompt on the computer.

Step 2 

Type the following: netsh interface ipv6 show privacy

You will see output similar to this:

If you see a status of enabled for Use Temporary Addresses, temporary IPv6 addresses are enabled for the computer.

Disabling Temporary IPv6 addresses

Step 1 

From a command prompt on the computer for which you want to disable temporary IPv6 addresses, type the following:

netsh interface ipv6 set global randomizeidentifiers=disabled

Step 2 

Run the following command: netsh interface ipv6 set privacy state=disabled

Step 3 

Restart the computer.

Step 4 

On Tableau Server (this is the primary, if you're running a cluster), open a command prompt and enter the following to stop the server: tabadmin stop

Step 5 

Enter the following command to update the Tableau Server configuration, and pick up IP addresses that are now static: tabadmin config

Step 6 

Start Tableau Server by entering the following command: tabadmin start

Cause

Temporary IPv6 addresses are a feature of some Windows operating systems, including many that are supported by Tableau Server. When a computer has temporary IPv6 addresses enabled, its IPv6 address changes over time.

This Windows feature affects Tableau Server because, internally, Tableau Server relies on static IP addresses to communicate with worker servers in a cluster, or with trusted hosts in an environment configured for trusted authentication. In other words, even though you can use a computer's name instead of its static IPv4 address to do certain types of configuration in Tableau—such as identify the primary Tableau Server to a worker, or vice versa—the IP address for the computer must be static.

Did this article resolve the issue?