KX Community

Find answers, ask questions, and connect with our KX Community around the world.
KX Community Guidelines

Home Forums kdb+ Cannot run kdb 64bit behind a proxy

  • Cannot run kdb 64bit behind a proxy

    Posted by pinebear123 on March 9, 2022 at 12:00 am

    Hi,

    I get an error message about connecting to a licensing server when running a 64bit version of kdb on Windows 10. I am a grad student using a corporate laptop. I don’t see a way to configure KDB to use a proxy.  The Internet connectivity is there. The proxy setting in Windows is configured to use a script at a particular address (automatic proxy setting with the script).

    Does kbd support proxies? How would I configure it to use a particular proxy? I want to use 64 bit kdb since I plan to experiment with jupyterq that does not support 32 bit kdb.

    “‘2022.03.09T15:28:47.728 couldn’t connect to license daemon — exiting”

    Thanks

    pinebear123 replied 8 months, 1 week ago 2 Members · 5 Replies
  • 5 Replies
  • pinebear123

    Member
    March 9, 2022 at 12:00 am

    Forgot to mention. I tried setting an environment variable HTTP_PROXY=http://myproxy.com:8090 but that did not work. That’s the proxy I used for Python’s pip

  • pinebear123

    Member
    March 10, 2022 at 12:00 am

    Ping works fine (as seen below). I also added an entry to windows firewall to allow network access to q.exe. The issue must be with the proxy, I just want to see what q sees.

    I looked in registry and AutoConfigURL for proxy is http://xyz/abc.pac. The pack file has the rules for proxying. I am guessing that might be an issue.

    Pinging dy2kttecucxn3.cloudfront.net [13.249.90.90] with 32 bytes of data:
    Reply from 13.249.90.90: bytes=32 time=13ms TTL=237
    Reply from 13.249.90.90: bytes=32 time=12ms TTL=237
    Reply from 13.249.90.90: bytes=32 time=12ms TTL=237
    Reply from 13.249.90.90: bytes=32 time=12ms TTL=237

    Ping statistics for 13.249.90.90:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
    Minimum = 12ms, Maximum = 13ms, Average = 12ms

  • pinebear123

    Member
    March 10, 2022 at 12:00 am

    I read proxy’s pac file and figured out the right proxy to use. Using that as the HTTP_PROXY solved the problem. If there are issues with the connection on the start-up, the log is not created however.

    Thank you

  • rocuinneagain

    Member
    March 10, 2022 at 12:00 am

    The email you received with your kc.lic included some details on this topic:

     

    Generally, kdb+ as an on-demand client behaves exactly like, and should be treated the same as, any plain http client (e.g. curl, apt-get or firefox) accessing a CDN-fronted web service.
    It connects to a remote port 80 as part of a normal http request; thus you generally only need to allow outbound http _connections_ but both _traffic_ to and from remote port 80.
    As the communication protocol is plain http you can employ any standard mechanism, including proxies (transparent and opaque by setting the HTTP_PROXY environment variable) as long as kdb+ is able to issue an http request and receive a response from the remote Kx service.
    If you need to allowlist the remote servers should treat kdb+ on-demand as a CDN-fronted service and employ DNS-based filtering. The current list of hostnames required for kdb+ on-demand operation is {h,g}.kdbod.{com,net,org}.

  • pinebear123

    Member
    March 10, 2022 at 12:00 am

    Is there a way to run q.exe with some verbose logging to see where the connectivity breaks? I tried setting http proxy via “set HTTP_PROXY=http://xyz:1080” and using -l option for logging, but the log file is not created.

Log in to reply.