您已设置代理,检查了 IP 地址——一切正常。但几天后,Facebook Ads 或 Instagram 帐户被封禁。原因通常在于 WebRTC 泄漏——一种即使在使用代理时也会暴露您真实 IP 地址的技术。在本指南中,我们将讨论什么是 WebRTC,为什么它对套利者和 SMM 专家构成危险,以及如何在不同浏览器和反检测解决方案中正确禁用它。
什么是 WebRTC,为什么它会暴露您的真实 IP
WebRTC(Web 实时通信)是一种嵌入在现代浏览器中的技术,用于在浏览器中直接进行视频和音频通信,而无需安装额外的程序。Zoom、Google Meet、Discord 和其他服务都使用它进行通话。问题在于,WebRTC 绕过代理服务器,直接请求有关您网络连接的信息。
当您打开支持 WebRTC 的网站时,浏览器会自动向 STUN 服务器(会话穿越实用程序)发送请求,这些服务器返回有关您所有网络接口的信息:提供商的真实 IP 地址、家庭网络中的本地 IP 地址、IPv6 地址。通过 JavaScript,任何网站都可以访问这些信息——即使您使用代理或 VPN。
真实案例: 一位套利者在 Dolphin Anty 中设置了 15 个 Facebook Ads 帐户,每个帐户都有一个来自美国的单独 住宅代理。一周后,所有帐户都因“可疑活动”而被封禁。原因是 WebRTC 泄露了他真实的乌克兰 IP,Facebook 看到所有“美国”帐户实际上是从基辅访问的。
WebRTC 泄露的信息
| 数据类型 | 网站看到的内容 | 对多账户的危险性 |
|---|---|---|
| 公共 IP | 您提供商的真实 IP 地址(例如,95.123.45.67) | 关键——Facebook 和 Instagram 会立即看到替换 |
| 本地 IP | 您家庭网络中的 IP(192.168.x.x 或 10.0.x.x) | 中等——可能用于指纹识别 |
| IPv6 地址 | 您提供商的唯一 IPv6 地址 | 关键——经常忘记禁用 IPv6 |
| 连接类型 | 有关网络接口的信息(Wi-Fi、以太网) | 低——但增加了指纹的唯一性 |
对于从事 Facebook Ads 和 TikTok Ads 的套利者来说,WebRTC 泄漏是导致链式封禁的直接途径。反欺诈算法会分析不一致性:如果广告帐户显示来自洛杉矶的 IP(通过代理),而 WebRTC 泄露出莫斯科的 IP——这将是一个即时的红旗。负责客户 Instagram 帐户的 SMM 专家面临着由于一次未关闭的泄漏而失去所有个人资料的风险。
如何检查 WebRTC 泄漏:3 种测试方法
在设置保护之前,您需要确保问题确实存在。即使您确信 WebRTC 已禁用——也要检查一下。反检测浏览器有时会在更新后重置设置,而扩展可能会相互冲突。
方法 1:在线服务检查
最简单的方法是使用专门的网站,它们会自动测试 WebRTC 泄漏:
- BrowserLeaks.com/webrtc——显示网站通过 WebRTC 看到的所有 IP 地址。打开页面时启用代理并检查“公共 IP 地址”部分。如果那里显示的是您的真实 IP,而不是代理服务器的 IP——则存在泄漏。
- IPLeak.net——全面检查所有类型的泄漏:WebRTC、DNS、IPv6。方便的是,它在同一页面上显示结果。请注意“WebRTC 检测”部分——那里不应有您的真实 IP。
- WhatIsMyIPAddress.com/webrtc-test——简单的测试,界面清晰。显示通过 WebRTC 泄露的 IP 地址,并提供泄漏修复建议。
检查的逐步说明:
- 在浏览器或反检测解决方案中连接代理
- 打开 IP 检查网站(例如,2ip.ru)并记下代理服务器的 IP
- 转到 BrowserLeaks.com/webrtc
- 比较 IP 地址:如果“公共 IP”部分显示其他 IP(不是代理)——WebRTC 泄露了您的真实地址
- 同时检查“本地 IP”部分——那里不应有您的家庭 IP,例如 192.168.x.x
方法 2:浏览器开发者控制台
对于更技术性的检查,可以使用浏览器控制台。如果在线服务不可用或您想自动化检查,这种方法很合适:
// 打开控制台 (F12 → 控制台) 并粘贴代码:
var rtc = new RTCPeerConnection({iceServers:[]});
rtc.createDataChannel('');
rtc.createOffer().then(offer => rtc.setLocalDescription(offer));
rtc.onicecandidate = function(event) {
if (event.candidate) {
console.log('WebRTC IP:', event.candidate.candidate);
}
};
这段 JavaScript 代码创建了 WebRTC 连接,并将所有发现的 IP 地址输出到控制台。如果您看到自己的真实 IP——说明 WebRTC 没有被阻止。结果应仅显示代理服务器的 IP,或者根本不返回公共地址。
方法 3:浏览器扩展
一些扩展不仅阻止 WebRTC,还实时显示保护状态。例如,“WebRTC Leak Shield”用于 Chrome,在工具栏中显示图标:绿色——保护处于活动状态,红色——检测到泄漏。这在开始使用广告帐户之前进行快速检查非常方便。
在 Google Chrome 和 Chromium 浏览器中禁用 WebRTC
Google Chrome 没有提供内置设置来完全禁用 WebRTC——Google 在其服务(Meet、Hangouts)中积极使用此技术。然而,有几种有效的方法可以阻止通过 WebRTC 在 Chrome 和基于 Chrome 的浏览器(Opera、Brave、Edge)中泄漏 IP。
方法 1:WebRTC Leak Prevent 扩展
这是来自 Chrome 开发者的官方扩展,可在 Chrome 网上应用店中找到。它不会完全禁用 WebRTC,但会阻止本地和公共 IP 地址的泄漏:
- 打开 Chrome 网上应用店并搜索“WebRTC Leak Prevent”
- 点击“添加到 Chrome”并确认安装
- 安装后,右键单击扩展图标 → “选项”
- 选择“禁用非代理 UDP(强制代理)”模式——这将使 WebRTC 仅通过代理工作
- 重新启动浏览器并在 BrowserLeaks.com/webrtc 上检查泄漏
重要提示:该扩展仅在代理通过系统或代理扩展设置时有效。如果您在反检测浏览器中使用 住宅代理,请确保配置文件设置正确指向代理。
方法 2:带过滤器的 uBlock Origin 扩展
uBlock Origin 是一个强大的广告拦截器,也可以禁用 WebRTC:
- 从 Chrome 网上应用店安装 uBlock Origin
- 单击扩展图标 → 齿轮图标(设置)
- 转到“设置”选项卡
- 找到“隐私”部分并勾选“防止 WebRTC 泄漏本地 IP 地址”
- 保存更改——WebRTC 将被阻止
此方法的优点是 uBlock Origin 还会阻止跟踪器和广告,从而进一步降低指纹识别的风险。许多套利者将此扩展作为在 Facebook Ads 工作时的基本保护。
方法 3:使用命令行标志启动 Chrome
要完全禁用 WebRTC,可以使用特殊参数启动 Chrome。这种方法适合高级用户:
// Windows(创建带参数的 Chrome 快捷方式):
"C:\Program Files\Google\Chrome\Application\chrome.exe" --disable-webrtc
// macOS(通过终端启动):
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-webrtc
// Linux:
google-chrome --disable-webrtc
此方法的缺点是您将无法使用视频通话和其他需要 WebRTC 的服务。因此,对于日常工作,最好使用可以快速启用/禁用的扩展。
重要提示: 一些旧的说明建议使用标志 --enforce-webrtc-ip-permission-check,但它已过时并且在现代版本的 Chrome(从 48 版开始)中不起作用。请仅使用最新的方法。
如何在 Mozilla Firefox 中隐藏 WebRTC
Firefox 提供了内置设置来控制 WebRTC——这也是许多安全专家偏爱此浏览器的原因之一。在 Firefox 中禁用 WebRTC 不需要安装扩展,而是通过隐藏的配置参数完成。
方法 1:通过 about:config(完全禁用)
这是最可靠的方法,可以在浏览器级别完全阻止 WebRTC:
- 打开新标签页,在地址栏中输入:
about:config - 点击“接受风险并继续”(不用担心,这很安全)
- 在搜索框中输入:
media.peerconnection.enabled - 在列表中找到该参数并双击它——值将从
true更改为false - 重新启动 Firefox 以应用更改
完成后,WebRTC 将完全禁用。在 BrowserLeaks.com/webrtc 上检查结果——您应该看到“WebRTC 不受支持”或 IP 地址部分为空的消息。
方法 2:部分禁用(仅 IP 泄漏)
如果您需要保留 WebRTC 进行视频通话,但阻止 IP 地址泄漏,请使用更温和的设置:
- 打开
about:config - 找到参数:
media.peerconnection.ice.default_address_only - 将值更改为
true(双击) - 找到:
media.peerconnection.ice.no_host - 将值更改为
true
这些参数阻止了本地 IP 地址的泄漏,但保留了 WebRTC 的功能。这是一个折衷方案,如果您有时使用视频通话,但希望在使用代理时防止泄漏。
方法 3:Disable WebRTC 扩展
对于喜欢图形界面的用户,Firefox 附加组件商店中有一个“Disable WebRTC”扩展。它在工具栏中添加一个按钮,可以通过单击快速启用/禁用 WebRTC。如果您需要在工作模式之间切换——例如,使用 WebRTC 进行通话,然后在处理多账户 Instagram 时禁用它,这非常方便。
在反检测浏览器中设置 WebRTC:Dolphin Anty、AdsPower、Multilogin
反检测浏览器专为多账户管理而设计,已经内置了防止 WebRTC 泄漏的机制。然而,默认设置并不总是最佳的,因此为每个配置文件正确配置它们非常重要。让我们看看在套利者和 SMM 专家使用的流行解决方案中设置 WebRTC 的方法。
Dolphin Anty:为配置文件设置 WebRTC
Dolphin Anty 是套利者中最受欢迎的反检测浏览器之一,专注于 Facebook Ads 和 TikTok Ads。它提供了三种 WebRTC 工作模式:
- 打开 Dolphin Anty 并转到配置文件设置(创建新配置文件或编辑现有配置文件)
- 在指纹设置中找到“WebRTC”部分
- 选择其中一种模式:
- Disabled——完全禁用 WebRTC。最安全的选项,但某些网站可能无法正常工作
- Altered——将 IP 替换为代理服务器的地址。推荐用于大多数任务
- Real——显示真实 IP。仅在不使用代理时使用
- 对于使用 移动代理 的工作,选择“Altered”模式
- 确保配置文件设置中指定了代理服务器——WebRTC 将把 IP 替换为代理地址
实用建议: 在 Dolphin Anty 中为 Facebook Ads 创建配置文件时,始终使用“Altered”模式 + 高质量的住宅代理。“Disabled”模式可能会引起 Facebook 反欺诈系统的怀疑,因为缺少 WebRTC 对普通用户来说是异常的。通过“Altered”替换 IP 看起来更自然。
AdsPower:WebRTC 的高级设置
AdsPower 提供了对 WebRTC 更详细的控制,并允许为每个配置文件单独设置行为:
- 在 AdsPower 中创建或打开配置文件
- 转到“快速设置”→“WebRTC”部分
- 可用选项如下:
- Proxy——WebRTC 显示代理服务器的 IP(推荐)
- Disabled——WebRTC 完全禁用
- Real——显示真实 IP(不要与代理一起使用!)
- Custom——允许手动指定 WebRTC 将显示的 IP
- 对于 Instagram 多账户管理,选择“Proxy”——这将确保指纹的一致性
- 在“高级设置”部分可以设置其他参数:阻止本地 IP、禁用 IPv6
“Custom”选项在您需要显示与代理不同的特定 IP 时很有用。例如,如果您使用代理链或通过 VPN + 代理工作。但对于标准的套利和 SMM 任务,“Proxy”模式就足够了。
Multilogin:团队的专业设置
Multilogin 是大型套利团队和代理机构使用的高端解决方案。这里的 WebRTC 设置更加灵活:
- 在 Multilogin 中打开配置文件(Mimic 或 Stealthfox)
- 在“网络”部分找到 WebRTC 设置
- Multilogin 提供以下模式:
- Block——完全阻止 WebRTC
- Substitute——替换为代理的 IP(推荐用于大多数任务)
- Off——WebRTC 无变化地工作(仅适用于不使用代理的情况)
- 对于广告账户管理,选择“Substitute”模式
- Multilogin 会自动将 WebRTC 设置与配置文件中指定的代理类型同步
Multilogin 的一个重要特点是,它支持在创建配置文件时自动检查泄漏。在设置代理和 WebRTC 后,系统会自动测试配置文件是否存在泄漏,并在发现问题时发出警告。这节省了时间,并降低了在批量创建配置文件时出错的风险。
GoLogin 和 Octo Browser:快速设置
GoLogin 和 Octo Browser 也具有内置的 WebRTC 泄漏保护。设置与 Dolphin Anty 类似:
- 在配置文件设置中找到“WebRTC”部分
- 选择“Altered”或“Substitute”模式(名称可能不同)
- 确保代理设置正确——WebRTC 将显示其 IP
- 创建配置文件后,在开始工作之前检查 BrowserLeaks 上的泄漏
| 浏览器 | 推荐的 WebRTC 模式 | 备注 |
|---|---|---|
| Dolphin Anty | Altered | 适用于 Facebook Ads 和 TikTok |
| AdsPower | Proxy | 适用于 Instagram 和电子商务 |
| Multilogin | Substitute | 自动泄漏检查 |
| GoLogin | Altered | 适合新手的简单设置 |
| Octo Browser | Substitute | 团队的灵活设置 |
在移动设备上防止 WebRTC 泄漏
移动设备同样容易受到 WebRTC 泄漏的影响,尤其是在通过移动代理工作时。负责管理 Instagram 帐户的 SMM 专家和测试 TikTok Ads 创意的套利者必须在移动平台上保护 WebRTC。
Android:浏览器设置
在 Android 上,大多数浏览器缺乏内置的 WebRTC 泄漏保护。以下是有效的解决方案:
- Firefox for Android:支持与桌面版相同的 about:config 设置。打开 Firefox → 在地址栏中输入 about:config → 找到 media.peerconnection.enabled → 更改为 false。这将完全禁用 WebRTC。
- Brave Browser:具有内置的 WebRTC 泄漏保护。打开设置 → 隐私和安全 → WebRTC IP 处理策略 → 选择“禁用非代理 UDP”。Brave 会自动阻止本地 IP 泄漏。
- Chrome for Android:不支持扩展,因此 WebRTC 保护只能通过具有 WebRTC 阻止功能的 VPN 应用程序或使用替代浏览器来实现。
iOS 和 Safari:有限的功能
iOS 和 Safari 具有更严格的限制,完全禁用 WebRTC 几乎不可能,除非越狱。然而,有一些变通方法:
- 使用具有 WebRTC 阻止功能的 VPN:一些 iOS 的 VPN 应用程序(例如,NordVPN、ExpressVPN)具有“阻止 WebRTC 泄漏”功能。这不会完全禁用 WebRTC,但可以防止真实 IP 泄漏。
- 替代浏览器:iOS 的 Firefox Focus 阻止许多跟踪器,但不会完全禁用 WebRTC。Brave for iOS 提供更好的保护——在 iPhone 上使用它进行代理工作。
- 限制对相机和麦克风的访问:在 iOS 设置 → Safari → 相机和麦克风中选择“拒绝”。这不会完全阻止 WebRTC,但会限制其功能。
对 iOS 的重要提示: Safari 在 iOS 14.3+ 中内置了对某些类型指纹识别的保护,包括对 WebRTC 泄漏的部分保护。然而,不应仅依赖于此——在处理重要帐户之前,始终检查泄漏。
移动反检测解决方案
对于专业管理 Instagram 和 TikTok 移动帐户,使用专门的解决方案:
- 自定义固件的农场手机:一些套利者使用 Android 设备,采用修改过的固件,WebRTC 在系统级别被禁用。这需要技术技能,但提供了最大的保护。
- 云 Android 模拟器:像 Genymotion Cloud 这样的服务允许在云中运行 Android,完全控制设置,包括 WebRTC。方便进行大规模帐户管理。
高级设置:通过 WebRTC 替换本地 IP
对于希望最大限度控制指纹的经验丰富的用户,有一些方法不仅可以禁用 WebRTC,还可以替换本地 IP 地址。这会创建更现实的指纹,因为完全缺少本地 IP 可能会被反欺诈系统视为可疑。
生成虚假本地 IP
一些反检测浏览器(例如,Multilogin 和 Incogniton)允许您不完全禁用 WebRTC,而是为每个配置文件生成随机本地 IP 地址。其工作原理如下:
- WebRTC 保持活动状态,这对网站来说看起来很自然
- 公共 IP 被替换为代理服务器的地址
- 本地 IP 随机生成(例如,192.168.45.123),并在该配置文件中保持不变
- 每个配置文件都有唯一的本地 IP,从而降低了帐户关联的风险
该方法在处理 Facebook Ads 时特别有效,因为 Meta 的算法分析的不仅是公共 IP,还有本地地址的模式。如果您的所有帐户都显示相同的本地 IP(例如,标准的 192.168.1.1),这可能会成为反欺诈的信号。
设置 STUN/TURN 服务器
WebRTC 使用 STUN 服务器来确定公共 IP。高级用户可以设置自己的 STUN 服务器或使用替代服务器:
// 通过 JavaScript 设置自定义 STUN 服务器的示例:
var configuration = {
iceServers: [
{urls: 'stun:your-custom-stun-server.com:3478'},
{urls: 'turn:your-turn-server.com:3478', username: 'user', credential: 'pass'}
]
};
var pc = new RTCPeerConnection(configuration);
此方法需要技术知识和自己的基础设施,但可以完全控制网站通过 WebRTC 看到的信息。大型套利团队有时会部署自己的 STUN/TURN 服务器以增加安全性。
自动检查 WebRTC 的脚本
如果您管理数十个配置文件,手动检查每个配置文件的 WebRTC 泄漏会耗费大量时间。使用自动化:
// 使用 Selenium 检查 WebRTC 泄漏的 Python 脚本:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument('--proxy-server=your-proxy-here')
driver = webdriver.Chrome(options=options)
driver.get('https://browserleaks.com/webrtc')
# 解析结果并检查泄漏
# 如果发现真实 IP——发送通知
这样的脚本可以集成到配置文件创建过程中——在启动广告活动之前自动检查每个新配置文件的泄漏。
禁用 WebRTC 时的常见错误及如何避免
即使在正确设置 WebRTC 保护的情况下,也可能会出现导致真实 IP 泄漏的错误。以下是套利者和 SMM 专家面临的最常见问题:
错误 1:忘记禁用 IPv6
WebRTC 可能会泄漏 IPv6 地址,即使 IPv4 通过代理保护。许多提供商会分配唯一的 IPv6 地址,直接识别您的连接。解决方案:
- Windows: 控制面板 → 网络和 Internet → 网络和共享中心 → 更改适配器设置 → 连接属性 → 取消选中“IP 版本 6(TCP/IPv6)”
- macOS: 系统偏好设置 → 网络 → 高级 → TCP/IP → 配置 IPv6:关闭
- 在反检测浏览器中: 检查配置文件设置中是否禁用或替换 IPv6
错误 2:扩展之间发生冲突
如果您使用多个扩展来阻止 WebRTC(例如,WebRTC Leak Prevent + uBlock Origin),它们可能会发生冲突并创建漏洞。解决方案:仅使用一个扩展来控制 WebRTC。检查已安装的扩展列表并禁用重复项。
错误 3:未检查浏览器更新后的设置
反检测浏览器会定期更新,有时更新会将 WebRTC 设置重置为默认值。在每次更新 Dolphin Anty、AdsPower 或其他解决方案后,请检查配置文件中的 WebRTC 设置。创建检查清单:
- 更新反检测浏览器
- 打开测试配置文件
- 检查 WebRTC 设置(应为 Altered/Proxy 模式)
- 在 BrowserLeaks.com/webrtc 上进行测试
- 如果一切正常——继续工作,如果没有——在所有配置文件中修复设置
错误 4:使用低质量代理
即使 WebRTC 设置正确,如果代理服务器不支持 UDP 流量(WebRTC 使用的流量)或在路由方面存在问题,仍然可能发生泄漏。在选择用于多账户工作的代理时,请注意:
- 支持 SOCKS5 协议(比 HTTP 更好地支持 WebRTC)
- 代理套餐中是否有 UDP 支持
- IP 地址的质量(住宅或移动 IP 更适合社交网络)
对于 Facebook Ads 和 Instagram,我们建议使用 支持 SOCKS5 的住宅代理——它们确保 WebRTC 正常工作,并将封禁风险降到最低。
错误 5:在所有地方完全禁用 WebRTC
听起来矛盾的是,完全禁用 WebRTC 可能是一个错误。现代反欺诈系统分析整个指纹,缺少 WebRTC(99% 普通用户都有)可能会成为可疑活动的信号。建议:使用替换模式(Altered/Substitute),而不是完全禁用。