synxfpng utility

WTSupported in traditional Synergy on Windows
WNSupported in Synergy .NET on Windows
USupported on UNIX
VSupported on OpenVMS

The synxfpng utility can be used for troubleshooting network connections to the following Synergy TCP/IP services:

To verify that a client can access one of these services, run synxfpng from the client.

By default, synxfpng uses TCP/IP calls to make a socket connection and then do one or more send and receive cycles. Alternatively, for xfServer and License Manager server, you can specify that synxfpng only do a connect and disconnect by passing -i0.

Synxfpng displays a report to the screen. If there are errors, try running it again with the -v option to get more information, including the TCP/IP error number. This information can be used by your network administrator to resolve TCP/IP network socket communication problems.

Tip

You can use synxfpng to determine if a DNS look-up problem is the cause of a slow connection. To do this, first run synxfpng with the host name as the server_name argument, and then run it with the IP address as the server_name argument. If the connection is faster using the IP address, there is a DNS look-up problem. Consult your network administrator for assistance in resolving the problem.

By default, synxfpng first looks up the IP as an IPv4 formatted address; then, if that fails, it tries IPv6. You can specify that only one or the other be used with the -v4 and -v6 options. If both -v4 and -v6 are included on the command line, the last one takes precedence.

xfServer

When pinging xfServer, synxfpng has the following syntax:

synxfpng [-dsize] [-e] [-h] [-inum] [-pport] [-rnum] [-tms] [-v] [-v4|-v6] [-vers] server_name

-dsize

Specify a packet size for sending to xfServer.

-e

Display extended xfServer information, including the version and whether certain options, such as encryption, are enabled. The first line of the -e output will indicate whether the server is xfServer or xfServerPlus. This option does not do a ping; it just returns information. Not valid with -i0.

-h

Display usage information.

-inum

Ping the specified (or default) port num times. The default is 5. If you pass 0 (zero), synxfpng will only connect and disconnect (rather than doing a send and receive). See Usage below for more information.

-pport

Ping the specified port.

-rnum

Ping a range of num ports, starting with the port specified with the -p option or, if -p is not specified, with the default port.

-tms

Report connection time only when it exceeds the specified number of milliseconds; otherwise, there is no output. The ms value may include a decimal point. Use with -i0.

-v

Verbose output. See sample output below in Examples.

-v4

Server uses IPv4 addressing. (Default)

-v6

Server uses IPv6 addressing.

-vers

Returns the version of the server if it is version 10 or higher. This option returns only the version numbers (e.g., 11.1.1); if you need to also see the patch letter (e.g., 11.1.1f), use the -e option.

server_name

The host name or IP address of the system to ping.

By default, synxfpng pings the default xfServer port, 2330. If no service is found on that port, it increments the port number by 1 (i.e., 2331) and tests again. Synxfpng will continue incrementing the port number and testing ports until it finds a service or has tested 10 ports. You can specify a port with -p, in which case only that port is tested.

If the SCSPORT environment variable is set in the environment (and you do not specify -p), synxfpng will ping the SCSPORT port. If no service is found on that port, synxfpng will test up to 10 ports as described above. (On Windows, if SCSPORT is set in the registry, it is not read by synxfpng.)

By default, synxfpng pings 5 times when it finds a service. You can specify a different number of pings with the -inum option.

You can specify the number of ports to test with -rnum. By default synxfpng will test up to 10 ports, and it stops as soon as it finds the service. But when -r is used, synxfpng continues pinging until num ports are tested, even if it finds a service early in the sequence.

Normally, the packet sent by synxfpng is only a few bytes. To specify that a packet of a particular size be sent, specify the size with the -d option. The packet will be the size you specify plus the usual packet size. (For example, if it’s usually 28 bytes and you specify -d1024, the packet will be 1052 bytes.)

Passing 0 (zero) with -i causes synxfpng to only do a connect and disconnect, rather than a send and receive. The output includes the DNS lookup time and the connect time. You can specify that results are reported only when the connection time exceeds a specific number of milliseconds by passing -tms with -i0. The -t option returns 2 when the limit is exceeded, so that it can be used programmatically (e.g., in a batch file), indicating when there is an excessive connection time.

The example below pings the server named Tiger on the default xfServer port (2330):

synxfpng tiger

Pinging Synergy/DE xfServer on host [tiger] port 2330

Round trip (28 bytes) 31.933 ms
Round trip (28 bytes) 2.055 ms
Round trip (28 bytes) 0.795 ms
Round trip (28 bytes) 0.951 ms
Round trip (28 bytes) 0.551 ms

Average round trip 7.257 ms

 

The example below pings the server named Tiger on port 2545 and requests verbose output. The sample output is from Windows.

synxfpng -v -p2545 tiger

WinSock status information:
    Description: WinSock 2.0
    SystemStatus: Running
    Using version 2.2
    Supports up to version 2.2

Starting DNS Lookup tiger Fri Aug  2 13:34:53 2019

getaddrinfo response 1
	Flags: 0x0
	Family: AF_INET6 (IPv6)
	IPv6 address fe80::41f7:36bb:e385:15f7%3

getaddrinfo response 2
	Flags: 0x0
	Family: AF_INET (IPv4)
	IPv4 address 10.1.10.77
Complete 10.1.10.77 Fri Aug  2 13:34:53 2019
			
Pinging Synergy/DE xfServer on host [tiger] port 2545

Starting socket(AF_INET, SOCK_STREAM, IPPROTO_TCP) -- Completed
Starting connect(AF_INET) -- Fri Aug  2 13:34:53 2019
Starting setsockopt(, SOL_SOCKET, SO_KEEPALIVE,,) -- Completed
Starting setsockopt(, IPPROTO_TCP, TCP_NODELAY,,) -- Completed
Starting Ping Fri Aug  2 13:34:53 2019

Round trip (28 bytes) [v11.0.2 server] 0.160 ms
Round trip (28 bytes) [v11.0.2 server] 0.102 ms
Round trip (28 bytes) [v11.0.2 server] 0.068 ms
Round trip (28 bytes) [v11.0.2 server] 0.065 ms
Round trip (28 bytes) [v11.0.2 server] 0.074 ms

Average round trip 0.093 ms
Socket closed Fri Aug  2 13:34:57 2019

 

The example below does only a connect/disconnect on port 2545:

synxfpng -i0 -p2545 tiger

Looking up host [tiger]
DNS lookup time 5.495 ms
Connecting to Synergy/DE xfServer on host [tiger] port 2545
Connect time 0.131 ms

License Manager server (Windows)

Run synxfpng with the -s option to ping License Manager server (synd). Synxfpng can also be used to check the status of a system with a primary and backup license server; see Checking the status of a primary and backup license server for details.

These License Manager server options are supported on Windows only.

Note

The synxfpng utility checks connectivity between a license client and its license server. It has nothing to do with License Manager polling the Synergy License Web Service. If you need to troubleshoot connectivity issues between your license server and the Synergy License Web Service, use the lmcheck utility.

synxfpng -s [-e] [-h] [-inum] [-pport] [-rnum] [-tms] [-v] [-v4|-v6] [-vers] 
     [-pls|-bls|-als] [server_name]

-s

Ping License Manager server connection.

-e

Display extended License Manager server information, including the version. This option does not do a ping; it just returns information. Not valid with -i0.

-h

Display usage information.

-inum

Ping the specified (or default) port num times. The default is 5. If you pass 0 (zero), synxfpng will only connect and disconnect (rather than doing a send and receive).

-pport

Ping the specified (non-default) port.

-rnum

Ping a range of num ports, starting with the port specified with the -p option or, if -p is not specified, with the default port (2380).

-tms

Report connection time only when it exceeds the specified number of milliseconds; otherwise, there is no output. The ms value may include a decimal point. Use with -i0.

-v

Verbose output.

-v4

Server uses IPv4 addressing. (Default)

-v6

Server uses IPv6 addressing.

-vers

Returns the version of the server if it is version 10 or higher. This option returns only the version numbers (e.g., 11.1.1); if you need to also see the patch letter (e.g., 11.1.1f), use the -e option.

-pls

Displays the status of the backup license server from the perspective of the primary server. That is, this option tells you if the backup is connected to the primary and what the backup’s status is. See Checking the status of a primary and backup license server.

-bls

Displays the status of the backup license server. In most cases, this will be the same as the status reported by -pls, but it is possible there could be a situation where the license client is able to access the primary server, but not the backup server. See Checking the status of a primary and backup license server.

-als

Displays the status of both the primary and the backup license servers. In other words, -als does both -pls and -bls in one command and reports on the overall health of the license manager/backup license server system. See Checking the status of a primary and backup license server.

server_name

(optional) The host name or IP address of the system to ping. As of version 11.1.1g, server_name is optional for all synxfpng -s commands because synxfpng gets the license server name from the Windows registry on the license client. You can pass server_name when you want to ping a server other than the one the license client is using.

When -s is used, by default synxfpng pings port 2380, the default License Manager server (synd) port. If no service is found on that port, it will increment the port number by 1 (i.e., 2381) and test again. Synxfpng will continue incrementing the port number and testing ports until it finds a service or has tested 10 ports. When it finds a service, it pings 5 times by default. To specify a different number of pings, use -inum.

To ping a non-default port, use the -p option.

When -rnum is used, synxfpng continues pinging until num ports are tested, even if it finds a service early in the sequence.

Passing 0 (zero) with -i causes synxfpng to only do a connect and disconnect, rather than a send and receive. The output includes the DNS lookup time and the connect time. You can specify that results are reported only when the connection time exceeds a specific number of milliseconds by passing -tms with -i0. The -t option returns 2 when the limit is exceeded, so that it can be used programmatically (e.g., in a batch file), indicating when there is an excessive connection time.

This example pings License Manager server on port 2445 three times:

synxfpng -s -p2445 -i3

This example does a connect/disconnect and displays results only when the connection time exceeds 1 second:

synxfpng -s -i0 -t1000 

Checking the status of a primary and backup license server

The options -pls, -bls, and -als can be used to determine the status of a system with a primary license server and a backup license server. (Both the primary and backup must be running version 11.1.1g or higher.) These options return only a status; they do not perform multiple pings and display round trip statistics.

These three options return the output shown in the examples below (see Examples for -pls, -bls, -als ), and they also return the following exit status codes:

0 = Success. The primary server is serving licenses (ACTIVE) and the backup server status is READY. This is the ideal situation, which you hope to see. Can be returned by -pls, -bls, -als.

1 = Failure. Licenses are not being served. Connection is lost, or server is down or not responding. Can be returned by -pls, -bls, -als.

2 = Licenses are being served. The primary server is down (INACCESSIBLE), and the backup server status is ACTIVE (that is, it is serving licenses). Can be returned by -bls, -als.

3 = Licenses are being served. The primary server is serving licenses (ACTIVE), and the backup server status is INACCESSIBLE (that is, it is down or connection to the primary has been lost). Can be returned by -pls, -als.

4 = Licenses are being served. The primary server is serving licenses (ACTIVE), and no backup server has been configured. Can be returned by -pls, -als.

5 = Licenses are being served, but the server you are pinging is pre-v11.1.1g and does not understand the new backup license status commands. The message “Backup license server status is not supported by this server” will be returned. Can be returned by -pls, -bls, -als.

6 = Wrong license server type. You’ve passed a license server name that doesn’t correspond to the type of server you are pinging. For example, you passed the backup license server name with the -pls option. Normally, you do not need to pass a server name because synxfpng gets both the primary and backup server names from the license client’s registry settings. However, you can pass a server name if you want to ping a server other than the one the license client is using. If you pass a server name with -als, pass the name of the primary server. Can be returned by -pls, -bls, -als.

Here’s some sample output for a system with a primary server named Penguin and a backup named Badger.

The output includes the server name in square brackets followed by wording that identifies whether it’s the primary or backup, and then gives the backup server connection status. As you can see, the -als option is just a combination of -pls and -bls; however, the exit status represents licensing as a whole.

The following three examples show the output when the primary is serving licenses and the backup is in waiting (i.e., the “normal” situation). These will all return a status of 0.

c:\>synxfpng -s -pls
[Penguin] Primary license server: Backup Badger connection status: READY c:\>synxfpng -s -bls
[Badger] Backup license server: Backup status: READY c:\>synxfpng -s -als
[Penguin] Primary license server: Backup Badger connection status: READY
[Badger] Backup license server: Backup status: READY

This example shows the output when the primary is down and the backup is serving licenses. The options -als and -bls will return a status of 2; -pls will return a status of 1 (failure).

c:\>synxfpng -s -als
[Penguin] No service found on port 2380.
[Badger] Backup license server: Backup status: ACTIVE

This example shows the output when the backup is down and the primary is serving licenses. The options -als and -pls will return a status of 3; -bls will return a status of 1 (failure).

c:\>synxfpng -s -als
[Penguin] Primary license server: Backup Badger connection status: INACCESSIBLE [Badger] No service found on port 2380

This example shows the output when you include the server name, both correctly and incorrectly:

c:\>synxfpng -s -pls Penguin
Primary license server: Backup Badger connection status: READY c:\>synxfpng -s -pls Badger
Wrong license server type

If you pass a server name with -als, use the primary server or you will get a “Wrong license server type” error.

c:\>synxfpng -s -als Penguin

SQL OpenNet server

Run synxfpng with the -x option to ping SQL OpenNet server.

synxfpng -x [-h] [-pport] [-rnum] [-v] [-v4|-v6] server_name

-x

Ping SQL OpenNet server connection.

-h

Display usage information.

-pport

Ping the specified port.

-rnum

Ping a range of num ports, starting with the port specified with the -p option or, if -p is not specified, with port 1958.

-v

Verbose output.

-v4

Server uses IPv4 addressing. (Default)

-v6

Server uses IPv6 addressing.

server_name

The host name or IP address of the system to ping.

When -x is used, by default synxfpng pings port 1958. If no service is found on that port, it will increment the port number by 1 (i.e., 1959) and test again. Synxfpng will continue incrementing the port number and testing ports until it finds a service or has tested 10 ports.

When -x is used with the -v option, synxfpng provides more verbose SQL OpenNet error reporting than is available with vtxping.

To specify a port, use -p option. When -rnum is used, synxfpng continues pinging until num ports are tested, even if it finds a service early in the sequence.

To ping SQL OpenNet on ports 1955 through 1959 on the server named Tiger:

synxfpng -x -p1955 -r5 tiger