Quick Start Guide - How do I use the proxies?

Welcome to Geonode, the one-stop shop for all your proxy needs. Geonode is an ever-growing proxy network offering rotating residential proxies without any data caps or data transfer limits. It supports HTTP, HTTPS, SOCKS4, SOCKS4A, and SOCKS5 protocols and straightforward configuration options. Moreover, Geonode residential proxies facilitate any web extraction needs from simple web scraping to extensive market research and even targeted eCommerce data gathering.

Where to get API key

We have to authenticate before starting to use the Geonode proxy. These authentication details (The API Key) can be easily found in the Proxy Authentication section of the Geonode dashboard.

Login to Geonode Dashboard (https://dashboard.geonode.com/)

Then click on the Key icon on the sidebar to navigate to the Proxy Authentication section. There, we can find both the username and API Key, which are required for authentication.

NOTE - If you need a new API key, simply click on the GENERATE NEW KEY button to generate a new API Key.

How to Whitelist an IP

You can whitelist specific IPs if you need to authenticate the proxy service without providing the Username and the API Key all the time. You can whitelist up to 20 IP addresses through which you can connect to the proxy without having to provide any additional authentication details.

Proxy Authentication -> Whitelisted IP Addresses (Press Enter after each IP address to confirm)

NOTE - Please allow up to 5 minutes for the Whitelisted IP to be reflected in the system.

Geonode Proxy usage examples (Python 3)

Geonode Proxy Request using Username/API Key (Credentials are required)

import requests

username = "geonode_XXXXXXXX"

password = "ac2049c6-XXXX-XXXX-XXXX-XXXXXXXXXXX"

GEONODE_DNS = "rotating-residential.geonode.com:222"

endpoint = "http://ip-api.com/json"

proxy = {"http":"http://{}:{}@{}".format(username, password, GEONODE_DNS)}

response = requests.get(endpoint, proxies=proxy)

print("Response:\n{}".format(response.text))

Geonode Proxy Request through the whitelisted IP (Credentials are not required when the connection is originated from the whitelisted IP)

import requests

GEONODE_DNS = "rotating-residential.geonode.com:222"

endpoint = "http://ip-api.com/json"

proxy = {"http":"http://{}".format(GEONODE_DNS)}

response = requests.get(endpoint, proxies=proxy)

print("Response:\n{}".format(response.text))

Where to find API docs

You can find the complete API documentation regarding the Geonode proxies at the following URL: API Documentation.

Know how many threads are available in your plan

Users can see the number of available and currently in-use threads in the Threads panel on the homepage of the Geonode dashboard. Please refer to the Geonode documentation for more information about threads.

Note - The number of available threads depends on the subscribed service level. The following CURL command can be used to get the currently active threads in the account.

curl -x rotating-residential.geonode.com:222 -U username http://api.geonode.com/concurrent

How to select a proxy to use

Geonode offers millions of rotating residential IPs from more than 150 countries. We can select a specific proxy URL to use from the Residential Proxy page in the Geonode dashboard. For that,

Simply navigate to the PROXY ENDPOINTS section of the Residential Proxy.

Geonode provides two types of Residential proxies called the Rotating Proxy and the Sticky Proxy.

  • Rotating Proxy uses a new IP address for each request made through the proxy.

  • Sticky Proxy (Static proxy) enables the user to send requests via a single IP address. The default frequency for the sticky ports is 60 minutes.

Both these proxy types provide the following two options to obtain the necessary proxy URLs;

  1. Use Individual URLs

  2. Programmatically load all the URLs to an application using load proxy URL (https://geonode.com/api/ports/residential-sticky).

Rotating Proxies

The user can get the available proxy URLs from the Rotating Proxy Ports section of the Residential proxy screen and configure the target country.

Country Targeting - This option allows the user to configure a specific country for the proxy to use. Simply select a country and a port and then click on "ASSIGN" to confirm the selected country.

Note - Once the country is configured in Rotating Proxies, all other ports will automatically use the same country for the proxy connection.

Sticky Proxy (Static Proxy)

The Sticky Proxy Ports section of the Residential proxy screen allows users to get the available sticky proxy URLs and configure the URL Rotating Interval and target Country.

Rotating Interval - The rotating interval allows the user to configure the refresh time of sticky ports. You can get better results by selecting lower expiry times, such as 5 or 10 minutes.

Country Targeting - With this option, users can configure the countries that each port will use for the Geonode proxy service. The sticky proxy allows the user to assign different countries for different ports. Select the required country and the port and then click on "ASSIGN."

Code Generator

The Code Generator in the Residential Proxy page provides an efficient way to generate the necessary code blocks to connect to the Geonode proxy in multiple programming languages.

How to check if you are connected to the proxy

Now let's see how to verify if we are connected to the proxy by following the below three steps.

Step 1 - Use an online tool to determine the current IP address (https://ipinfo.io)

Step 2 - Connect to the Proxy (The following section demonstrates how to connect to the proxy using Windows 10)

Navigate to Settings -> Network & Internet -> Proxy

Toggle the "Use a proxy server" option in the "Manual proxy setup" section to "On" and provide any available proxy URL and port in Geonode.

Step 3 - Open a browser and navigate back to an online tool to determine the current IP address (https://ipinfo.io). Then the browser will prompt a popup requesting the username and password. Enter the Geonode username and API Key as username and password, respectively.

If you are successfully connected to the proxy, you will see a different IP address than what was displayed in the first step.

Note - Here, you can directly authenticate without entering the username and password (API Key) by using the previously mentioned IP whitelisting feature. The IP whitelisting method is the ideal choice to route traffic through the proxy at a device level.

How to make an initial request to prove the proxy is working

The user can make a simple request through the proxy server using a command-line utility or a simple script. The following section demonstrates how to make a request in Linux, Windows as well as using C#.

Linux (Bash - curl)

Here, we will be using the curl utility to make the request. Open the bash terminal and type the following commands.

export GEONODE_USERNAME=<Geonode Username>

export GEONODE_PASSWORD=<Geonode API Key>

export GEONODE_DNS=rotating-residential.geonode.com:222

curl -x http://$GEONODE_USERNAME:[email protected]$GEONODE_DNS http://ip-api.com/json && echo

This will make the request using the specified Geonode proxy, and if it is successful, it will provide the user with the output indicating a proxy IP address.

Windows (PowerShell - Invoke-WebRequest)

For Windows, we can use the inbuilt Invoke-WebRequest command in PowerShell to make a web request. Open the PowerShell terminal and enter the following.

$ENV:GEONODE_USERNAME = "<Geonode Username>"

$ENV:GEONODE_PASSWORD = "<Geonode API Key >"

$ENV:GEONODE_DNS = "rotating-residential.geonode.com:222" $RESULT = Invoke-WebRequest -Proxy http://$ENV:GEONODE_USERNAME:$ENV:[email protected]$ENV:GEONODE_DNS -Uri http://ip-api.com/json

Write-Host $RESULT

A successful request will inform the user of the IP address used in the request as shown below.

Programed Request (C# - Visual Studio)

Go through the following steps to make a request in C#.

Step 1 - Create a simple console project in Visual Studio. In this instance, we have named our project "Geonode Request."

Step 2 - Modify the Program.cs file to reflect the following code block.

using System;

using System.Net;

using System.Net.Http;

using System.Threading.Tasks;

namespace Geonode_Request

{

class Program

{

private const string Username = "<Geonode Username>";

private const string Password = "<Geonode API Key>";

private const string GeonodeDns = "http://rotating-residential.geonode.com:222";

private const string UrlToGet = "http://ip-api.com/json";

public static async Task Main()

{

using var httpClient = new HttpClient(new HttpClientHandler

{

Proxy = new WebProxy(GeonodeDns),

Credentials = new NetworkCredential(Username, Password)

});

using var responseMessage = await httpClient.GetAsync(UrlToGet);

var contentString = await responseMessage.Content.ReadAsStringAsync();

Console.WriteLine("Response:" + Environment.NewLine + contentString);

Console.ReadKey(true);

}

}

}

Visual Studio Interface

Step 3 - Run the Project (Press F5 on the keyboard). Then, Visual Studio will build and execute the project. If the request is successful, the user will get an output including the IP address of the Geonode proxy.

Did this answer your question?