Portunnel 代理转发工具使用指南

阅读模式

工具简介

Portunnel 是亿牛云推出的代理转发工具,旨在帮助爬虫开发者更高效、稳定地使用代理服务。它运行在本地,作为您的程序与亿牛云代理服务器之间的桥梁。

开源地址: https://github.com/16yun-cn/portunnel-realase

核心功能

  1. 端口策略灵活:支持主端口(随机转发)和隧道端口(固定 IP)同时使用。
  2. 本地免认证:工具自动处理上游认证,本地程序只需连接 localhost:port,无需配置用户名密码。
  3. 流量节省 (Bypass):通过路由规则配置,可实现内网直连或屏蔽不必要的静态资源请求,节省代理流量。

快速配置与使用

1. 端口与 IP 策略

  • 主代理端口(默认 18080):

    • 每次请求可能转发到不同的出口 IP。
    • 适用场景:需要高频轮转 IP 的爬虫任务。
  • 隧道端口范围(默认 18100-18199):

    • 每个端口对应一个固定的出口 IP
    • 适用场景:需要保持会话(Session)稳定、登录状态维持或验证码识别等场景。
    • 注意:所有端口共享您的“新建链接数量”配额。

2. 使用方法示例

由于实现了本地免认证,配置非常简单:

命令行 (curl) 示例:

1
# 使用主端口(随机 IP)
2
curl -x http://127.0.0.1:18080 https://httpbin.org/ip
3
4
# 使用隧道端口(固定 IP)
5
curl -x http://127.0.0.1:18100 https://httpbin.org/ip

代码/浏览器配置: 只需设置 HTTP 代理为 127.0.0.1 和对应端口(如 18080),无需填写用户名和密码


进阶功能:Bypass 流量节省(推荐)

通过配置路由规则,您可以决定哪些请求走代理,哪些请求直连或阻断。

支持的策略

  • DIRECT:直连(不走代理,节省流量,速度快)
  • REJECT:阻断(返回 HTTP 450,直接屏蔽请求)
  • PROXY:代理(正常走亿牛云代理)

典型配置 (config.yaml)

1
routing:
2
defaultPolicy: "PROXY" # 默认所有请求走代理
3
rules:
4
# 1. 本地与内网直连(避免误代理)
5
- type: "DOMAIN-SUFFIX"
6
value: "local"
7
policy: "DIRECT"
8
- type: "IP-CIDR"
9
value: "192.168.0.0/16"
10
policy: "DIRECT"
11
12
# 2. 节省流量:屏蔽统计分析与静态资源
13
- type: "DOMAIN-KEYWORD"
14
value: "analytics"
15
policy: "REJECT"
16
- type: "DOMAIN-KEYWORD"
17
value: "static"
18
policy: "REJECT"
19
20
# 3. 国内常用站点直连
21
- type: "DOMAIN-SUFFIX"
22
value: "cn"
23
policy: "DIRECT"
24
25
# 4. 特定目标才走代理(如果 defaultPolicy 设为 DIRECT 时使用)
26
- type: "DOMAIN-SUFFIX"
27
value: "google.com"
28
policy: "PROXY"
29
30
dns:
31
use_local_dns: true
32
dns_server: ["114.114.114.114", "223.5.5.5"]

提示

  • 规则按顺序匹配,首次命中即停止
  • REJECT 策略会直接返回 HTTP 450 错误,不会产生任何网络流量。
  • 可以在 Web 管理界面 http://127.0.0.1:YOUR_ADMIN_PORT/routing 查看规则命中统计(重启后清零)。

爬虫最佳实践

  1. 业务隔离:将不同的爬虫任务、账号或目标站点分配到不同的 隧道端口,实现天然的 IP 隔离。
  2. 动静分离:利用 Bypass 规则,将图片、JS、CSS 等非核心数据走 DIRECT 直连,仅核心 API 数据走 PROXY,大幅降低代理成本。
  3. 连接复用:在代码中尽量复用 HTTP 连接(Keep-Alive),减少 TCP 握手开销和“新建链接数量”消耗。