cURL Proxies Integration – The Definitive Guide 2022

It is a comprehensive guide about cURL. It is open-source software developed by Daniel Stenberg in 1996. In this tutorial, we will focus on only features related to how to use the proxy servers with this cUrl program.

This guide will brief you curl proxies integration in detailed. Although, you can use the proxies in other ways like integrating into Chrome ,Firefox using our proxy manager or Foxy proxy.

What is cURL?

The command line program can be used in any operating system. It is designed to be used for data transfer and it’s free-to-use software was developed in 1996. This cURL client provides you a libcurl which you can integrate into your own scripts, desktop, web and mobile applications. It has support for all major protocols available like HTTP,HTTPS,Socks ,FTP,SFTP, PUT, SCP, POP, LDAP, Gopher and much more.

How to install cUrl

Most operating systems like Mac, Windows 10, and Linux have already pre-installed this cURL software. For install or update use below commands.

Linux debian distros:

sudo apt install curl

Centos: 

yum install curl

Windows/Mac:

Check the download page below.

You can download the binary file or source code and compile it yourself. Select the file you want to download from the official link below.

You can get the docker version as well.

Example cURL commands:

curl https://www.facebook.com/

It will show you the content of Facebook in the terminal.

Get a web page from the ipv6 URL:

curl "http://[2001:1890:1112:1::20]/"

Pro tip:

Use this command to get the help for any argument cURL supports:

curl --help

Use this man command to get the manual with detailed explanation

man curl

How to use HTTP/HTTPS Proxies in the cURL Command line

Here we use a couple of flags with cURL to make the HTTP/HTTPS proxies work with it, And we can browse the URL.

Here is the syntax for cURL for HTTP/HTTPS:

curl -x "username:password@hostip:port" "replace_your_webpage_url_here" 

Flags to use:

-x for the proxy server define or use –proxy 

-k small k used to browse the insecure SSL URL

-L used to follow the redirections in the URL

-i use it to get the header info of the URL

-v verbose use to display that header information

Examples are here:

curl -x “http://proxy-hub:proxies@144.168.138.109:7777” “https://ip.seeip.org/jsonip”

curl –proxy “http://proxy-hub:proxies@144.168.138.109:7777” “https://ip.seeip.org/jsonip”

curl –proxy “http://proxy-hub:proxies@144.168.138.109:7777” “https://www.wikipedia.org/”

curl –proxy “http://proxy-hub:proxies@144.168.138.109:7777” “https://www.wikipedia.org/” -iL -v

curl –proxy “http://proxy-hub:proxies@144.168.138.109:7777” “https://www.wikipedia.org/” -k
It shows HTTP proxy results

Now, Let’s show you an example that shows TCP protocol for the HTTP/HTTPS proxies:

It shows TCP protocol used in the curl request

How to use Socks4 and Socks 5 in the cURL Command line

Socks are best to transfer data faster over UDP protocol.

cURL lib supports Socks4 and Socks5 proxies versions.

The syntax for cURL socks4/Socks5:

Remove the username and password for the IP authorized Socks or Public free proxies

curl –socks5 “username:password@hostip:port” “replace_your_webpage_url_here” 

curl –socks4 “username:password@hostip:port” “replace_your_webpage_url_here” 

Example:

To validate it, use the Socks protocol. We use -i flag to get the header information.

-v to display the info of protocol use.

It shows Socks protocol used in the curl request

How to Configure proxy in an environment variable for cURL

Setting up the proxy in your environment will not require you to place the proxy on every curl request you make via the command line interface.

It works for Linux and Mac operating systems. Follow this method to set http_proxy or https_proxy in the env variable.

Run these commands in your terminal

export http_proxy=”http://username:password@hostip:port” 

export https_proxy=”https://username:password@hostip:port”

export socks4=”username:password@hostip:port”

export socks5=”username:password@hostip:port”

Now, Run the command it will not require the proxy.

curl "https://ip.seeip.org/jsonip"

For windows configuration for curl, follow this guide.

Bypass Environmental variable Proxy and request the URL in cURL

This sets the proxy on global settings, and if you want to make some requests without the proxy from the environment variable. You can make the call with this flag –no-proxy

curl --noproxy "*" "https://ip.seeip.org/jsonip"

It will make the request use your default network IP.

Unset the Proxy in Env

Remove the proxy from the environment by these commands:

unset http_proxy

unset https_proxy

unset socks5_proxy

unset socks4_proxy

Conclusion

cURL is one of the most advanced and mature open-source data transmission software. We don’t need to reinvent the wheel because this library works on all primary operating systems and is integrated with any application you want. For any query related to this integration guide of curl, feel free to ask our team, and we can provide you with the proxies that work with curl. Email us from here and live support.

Sharing Is Caring:

I'm an enthusiast about proxies, networking, linux .I've been working in the IT industry for over 10 years and have a lot of experience with different platforms and software. I've also been involved in many online projects, including developing SaaS sites. My goal is to help others learn about these tools and how to use them effectively.

Leave a Comment