How to Configure Network Settings in Java

How to Configure Network Settings in Java

Proxies

Setting the proxy server and port:

System.setProperty("http.proxyHost", "proxy.example.com");

System.setProperty("http.proxyPort", "80");

For an HTTPS proxy, just change 'http' to 'https' for each property.

Or you can just use the system's proxies:

System.setProperty("java.net.useSystemProxies", "true");

IP Protocol

Disabling the IPv6 stack and forcing IPv4:

System.setProperty("java.net.preferIPv4Stack" , "true");

Use IPv6 addresses when possible:

System.setProperty("java.net.preferIPv6Addresses" , "true");

SOCKS

Setting a SOCKS proxy:

System.setProperty("socksProxyHost" , "socks.example.com");

System.setProperty("socksProxyPort" , "1080")

Specify the SOCKS protocol used by the server:

System.setProperty("socksProxyVersion" , "4");

Authenticating with a SOCKSv5 proxy server:

System.setProperty("java.net.socks.username" , "myusername");

System.setProperty("java.net.socks.password" , "mypassword");

SSL/Certificates

Setting a TrustStore that was created with keytool:

System.setProperty("javax.net.ssl.trustStore", "/path/to/truststore");

Misc. Properties

Set the string sent in the User-Agent request header in HTTP requests:

System.setProperty("http.agent", "foobar");

Keep in mind that this new string will have "Java/" appended at the end. So the example above would yield "foobar Java/1.6.0" if the current Java version being used is 1.6.0.

Prevent persistent connections:

System.setProperty("http.keepalive", "false");

Set the maximum number of idle connections that will be kept alive (http.keepalive must be true):

System.setProperty("http.maxConnections", "5");

Set the maximum number of redirects that will be followed for an HTTP request:

System.setProperty("http.maxRedirects", "20");
Last Updated: December 2nd, 2015
Was this article helpful?

Improve your dev skills!

Get tutorials, guides, and dev jobs in your inbox.

No spam ever. Unsubscribe at any time. Read our Privacy Policy.

Want a remote job?

    Prepping for an interview?

    • Improve your skills by solving one coding problem every day
    • Get the solutions the next morning via email
    • Practice on actual problems asked by top companies, like:
     
     
     

    Better understand your data with visualizations

    With over 330+ pages, you'll learn the ins and outs of visualizing data in Python with popular libraries like Matplotlib, Seaborn, Bokeh, and more.

    © 2013-2021 Stack Abuse. All rights reserved.