Gen Build Tool client/server port requirements
search cancel

Gen Build Tool client/server port requirements

book

Article ID: 139143

calendar_today

Updated On:

Products

Gen Gen - Workstation Toolset

Issue/Introduction

When the Gen Build Tool (BT) client sends a build request to the BT server certain TCP/IP ports need to be opened on the firewall between server and client for it to be successful.
If that does not occur the Build or Split process could hang with status "Build-Scheduled" or "Split-Scheduled"

Environment

Gen Build Tool

Resolution

  1. When a  Gen Build Tool (BT) client sends a build request to the BT server's listening port, the BT client opens an ephemeral (random) port and sends the port number and the client's IP address to the server.

  2. The client's IP address is obtained from a DNS lookup of the client hostname from either the DNS or from the local hosts file (%SystemRoot%\System32\drivers\etc\hosts) and the order of that lookup depends on how DNS is configured at the specific site. 

  3. When the BT server sends back a response to the build request, it uses the information sent from the client to connect to the BT client's ephemeral port on the client's IP address.
    Therefore the firewall from the server to the client needs to be open for all possible client side ports.

  4. The other option is to set a fixed port on the BT Client under Tools > Options > Client listener port.
    Then just open the server firewall for the initial BT server connection port (default 7776) and that fixed client port.
    See Managing the Build Tool. NOTE: The BT client needs to be restarted after making that change.
    For example if 4444 is chosen as Client Listener port then assuming the connection and build is successful running netstat on the client should show these type of values for the closure of those socket connections:
    netstat -na|find "server_ip_address"
    TCP    client_ip_address:4444    server_ip_address:35134    CLOSE_WAIT

    TCP    client_ip_address:4444    server_ip_address:35208    CLOSE_WAIT
    TCP    client_ip_address:4444    server_ip_address:35220    CLOSE_WAIT

  5. If problems are still encountered:
    In file $HOME/user.configure on the server add this tracing entry anywhere in the file:
    Trace=HOB,ENG,CLI 
    Restart the build tool server and the Trace entry will create a TRCxxxxxxxxx trace log in the $HOME location.
    When the problem occurs, review the file.
    If this type of entry is seen then there is still a problem with the firewall not being open for the relevant client port:
    12:22:43.155:TID:95  BTclient setClientSocket:: LocalHost client_ip_address Port client_port
    12:22:44.210:TID:95  BTclient: client socket exception No route to host (Host unreachable)

Additional Information

Gen™ 8.6 > Developing > Working with Build Tool > Building in Client Server Mode

NOTE: In the BT there no equivalent of the Diagram Trace Utility (DTU) application.ini file to set the client's IP address: Using the Application.ini File