隧道代理ip使用

news2024/9/21 0:33:06

简介

隧道代理(Tunnel Proxy)是一种特殊的代理服务,它的工作方式是在客户端与远程服务器之间建立一条“隧道”。这种技术常被用来绕过网络限制或提高网络安全性。

主要功能

  • IP地址变换:隧道代理能够改变客户端的IP地址,使得客户端访问的目标服务器看到的是代理服务器的IP地址,而不是客户端的真实IP地址。
  • 数据加密传输:某些隧道代理服务会提供加密功能,确保数据在客户端与远程服务器之间的安全传输。
  • 动态IP池管理:隧道代理通常由云服务提供支持,具有动态分配IP地址的能力,这意味着可以频繁更换IP以避免被目标服务器封锁。
  • 简化开发流程:对于开发者来说,使用隧道代理可以减少管理IP池的复杂度,从而降低开发成本。

使用

注册隧道代理服务

https://www.kuaidaili.com/?ref=nes3yyyaelhd

互联网上有许多代理服务商,这个以其中一个举例

选择对应方式

按个人所需购买不同方式,若仅为短时非高频使用,建议购买按量付费模式。

代码实现

这里以java语言为例

jsoup

import java.io.IOException;
import java.net.Authenticator;
import java.net.InetSocketAddress;
import java.net.PasswordAuthentication;
import java.net.Proxy;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

public class TestProxyJsoup {
    // 用户名密码, 若已添加白名单则不需要添加
    final static String ProxyUser = "t****";
    final static String ProxyPass = "*****";

    // 隧道域名、端口号
    final static String ProxyHost = "***.***.com";
    final static Integer ProxyPort = '****';

    public static String getUrlProxyContent(String url) {
        Authenticator.setDefault(new Authenticator() {
            public PasswordAuthentication getPasswordAuthentication() {
                return new PasswordAuthentication(ProxyUser, ProxyPass.toCharArray());
            }
        });

        Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(ProxyHost, ProxyPort));

        try {
            // 此处自己处理异常、其他参数等
            Document doc = Jsoup.connect(url).followRedirects(false).timeout(3000).proxy(proxy).get();
            if (doc != null) {
                System.out.println(doc.body().html());
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

        return null;
    }

    public static void main(String[] args) throws Exception {
        // 目标网站
        String targetUrl = "https://***.***.com/****";

        // JDK 8u111版本后,目标页面为HTTPS协议,启用proxy用户密码鉴权
        System.setProperty("jdk.http.auth.tunneling.disabledSchemes", "");

        getUrlProxyContent(targetUrl);
    }
}

hutool

import java.net.Authenticator;
import java.net.PasswordAuthentication;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpRequest;

// 代理验证信息
class ProxyAuthenticator extends Authenticator {
    private String user, password;

    public ProxyAuthenticator(String user, String password) {
        this.user     = user;
        this.password = password;
    }

    protected PasswordAuthentication getPasswordAuthentication() {
        return new PasswordAuthentication(user, password.toCharArray());
    }
}


public class TestProxyHutool {
    // 用户名密码, 若已添加白名单则不需要添加
    final static String ProxyUser = "t****";
    final static String ProxyPass = "*****";

    // 隧道域名、端口号
    final static String ProxyHost = "***.***.com";
    final static Integer ProxyPort = '*****';

    public static void main(String[] args) {
        // 目标网站
        String url = "https://***.***.com/***";
        // JDK 8u111版本后,目标页面为HTTPS协议,启用proxy用户密码鉴权
        System.setProperty("jdk.http.auth.tunneling.disabledSchemes", "");
        // 设置请求验证信息
        Authenticator.setDefault(new ProxyAuthenticator(ProxyUser, ProxyPass));

        // 发送请求
        HttpResponse result = HttpRequest.get(url)
                .setHttpProxy(ProxyHost, ProxyPort)
                .timeout(20000)//设置超时,毫秒
                .execute();
        System.out.println(result.body());
    }
}

结束

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2072465.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《javaEE篇》--线程池

线程池是什么 线程的诞生是因为进程创建和销毁的成本太大,但是也是相对而言,如果频繁的创建和销毁线程那么这个成本就不能忽略了。 一般有两种方法来进一步提高效率,一种是协程(这里不多做讨论),另一种就是线程池 假如说有一个学校食堂窗口…

【Node】【2】创建node应用

创建node应用 node应用,不仅可以实现web应用,也能实现http服务器。 如果是php写后端,还需要有http服务器,比如apache 或者 nginx。 但是现在主流都是java写后端,也可以像 Node.js 一样用于实现 Web 应用和 HTTP 服务…

chapter08-面向对象编程(包、访问修饰符、封装、继承)day08

目录 277-包的使用细节 278-访问修饰符规则 279-访问修饰符细节 281-封装介绍 282-封装步骤 283-封装快速入门 284-封装与构造器 285-封装课堂练习 286-为什么需要继承 277-包的使用细节 1、需要哪个包就导入哪个包,不建议全部导入* 2、包的使用细节&…

宵暗的妖怪

宵暗的妖怪 错误代码和正确代码对比 #include <iostream> #include <string.h> using namespace std; const int N1e510; long long a[N],f[N],g[N]; // f 以i为结尾&#xff0c;饱食度最大值 // g 0-i中&#xff0c;饱食度最大值int main() {int n;cin>>…

Linux 内核源码分析---IPv6 数据包

IPv6是英文“Internet Protocol Version 6”&#xff08;互联网协议第6版&#xff09;的缩写&#xff0c;是互联网工程任务组&#xff08;IETF&#xff09;设计的用于替代IPv4的下一代IP协议&#xff0c;其地址数量号称可以为全世界的每一粒沙子编上一个地址。 由于IPv4最大的…

看图学sql之sql中的子查询

&#xfeff;&#xfeff; &#xfeff;where子句子查询 语法&#xff1a; SELECT column_name [, column_name ] FROM table1 [, table2 ] WHERE column_name OPERATOR(SELECT column_name [, column_name ]FROM table1 [, table2 ][WHERE]) 子查询需要放在括号( )内。O…

课后作业-第四次

1.将web-ssrfme.zip解压缩在Ubuntu下 Docker-compose up -d 更新后的镜像重新启动容器 2.拉取成功ssrfme镜像 3.使用端口访问文件&#xff0c; 可以看到有一个过滤条件&#xff0c;它限制了file&#xff0c;dict协议&#xff0c;127.0.0.1和localhost 也不能用&#xff0c;…

中仕公考怎么样?2025年国考现在准备来得及吗?

2025年国考时间线 2024年10月发布公告——2024年11月报名确认——2024年11月打印准考证——2024年12月笔试——2024年3月现场资格审查——2024年3-4月面试——2025年5月补录环节 考试科目&#xff1a; 笔试的主要科目是:行测申论 ①行测:常识、言语理解、判断推理、数量关系…

2025智能电动窗帘推荐!电动窗帘应该如何选择?看一篇窗帘省钱攻略!一体化电动窗帘

史新华 智能家居已经走进我们的生活。 智能马桶、智能穿衣镜、语音茶吧机、小爱音箱、天猫精灵这些家居好物让生活更加精致&#xff0c;智能窗帘走进千家万户还会远吗&#xff1f;&#xff01; 我最开始关注电动窗帘&#xff0c;就是从住酒店开始的&#xff0c;经常出差的同学…

uni-app里引入阿里彩色矢量图标(Symbol),却发现图标显示为黑白

当使用uniapp并尝试引入阿里iconfont的彩色图标时&#xff0c;发现图标显示为黑白。原因是Fontclass模式不支持彩色图标。 解决方法是下载Symbol模式的SVG文件&#xff0c;使用iconfont-tools进行转换&#xff0c;然后在项目中全局引入转换后的CSS文件&#xff0c;最终在组件中…

探索联邦学习:保护隐私的机器学习新范式

探索联邦学习&#xff1a;保护隐私的机器学习新范式 前言联邦学习简介联邦学习的原理联邦学习的应用场景联邦学习示例代码结语 前言 在数字化浪潮的推动下&#xff0c;我们步入了一个前所未有的数据驱动时代。海量的数据不仅为科学研究、商业决策和日常生活带来了革命性的变化&…

Datawhale X 李宏毅苹果书 AI夏令营_深度学习基础学习心得

本次学习了深度学习中的局部最小值 1、书上说有时候模型一开始就训练不起来&#xff0c;不管怎么更新参数损失都不下降。我之前遇到过这种情况&#xff0c;大概是做一个数据很不平衡的二分类&#xff0c;正负样本比例大概为9&#xff1a;1&#xff0c;模型倾向于全部预测为正样…

docker-compose自动化部署前后端项目--最终篇

docker-compose部署 一个项目肯定包含多个容器&#xff0c;每个容器都手动单独部署肯定费时费力。docker-compose可以通过脚本来批量构建镜 像和启动容器&#xff0c;快速的部署项目。 使用docker-compose部署主要是编写 docker-compose.yml 脚本。 项目结构 不论是 Dockerfil…

set的所有操作

1.基本概念 2.构造和赋值 3.大小和交换 4.插入和删除 5.查找和统计 6.set和multiset的区别 7.pair对组创建 用p.first和p.second调用前后两个属性。 8.仿函数实现降序排列 自定义数据类型也一样用仿函数&#xff1a;

【ubuntu20.4 常用经验分享】

文章目录 背景&#xff1a;问题解答1、软件替换3、办公4、提供多少价值 总结 背景&#xff1a; 个人AI深度学习&#xff0c;在windows下很不方便&#xff0c;容易各种莫名错误&#xff0c;各种生态也不好 那么linux是一个选择&#xff0c;开始时候时保守安装了双系统&#xff…

QTableView的一行里添加两个按钮

我是光明正大地抄&#xff0c;作者说的欢迎转载 作者&#xff1a;李鹏 出处&#xff1a;http://www.cnblogs.com/li-peng/ 本文版权归作者和博客园共有&#xff0c;欢迎转载&#xff0c;但未经作者同意必须保留此段声明&#xff0c;且在文章页面明显位置给出原文连接&#xff0…

基于Android Studio 多功能记事本-MySQL版

目录 一、项目演示 二、开发环境 三、项目详情 四、项目完整源码 一、项目演示 基于Android Studio 多功能记事本--MySQL版 二、开发环境 三、项目详情 1.启动页 这段代码主要实现了以下功能&#xff1a; 1. **延迟跳转**&#xff1a;在 StartActivity 中&#xff0c;使用…

polarctf靶场[WEB]cookie欺骗、upload、签到

[web]cookie欺骗 考点&#xff1a;cookie值 工具&#xff1a;Burp Suite抓包 根据题目提示&#xff0c;cookie欺骗&#xff0c;所以要在cookie值寻找关键 进入网页之后&#xff0c;说只有admin用户才能得到flag&#xff0c;而我们此时只属于普通访客 我们查看cookie值&…

如何使用ssm实现视频点播系统设计与实现+vue

TOC ssm142视频点播系统设计与实现vue 绪论 1.1 研究背景 信息化的世界&#xff0c;对于互联网就是一个无国界的传播过程。视频信息也像其他很多网络交流工具一样&#xff0c;时刻在给每一个人带来信息全球化的过程中自由发布个性化信息平台&#xff0c;这就是互联网给人们…

VTK随笔四:VTK基本数据结构

一、可视化数据的基本特点 离散性&#xff1a;为了让计算机能够获取、处理和分析数据&#xff0c;必须对无限、连续的空间体进行采样&#xff0c;生成有限的采样数据点&#xff0c;这些数据以离散点的形式存储&#xff0c;采样的过程是一个离散化的过程。数据具有规则或不规则…