# net::ERR_TUNNEL_CONNECTION_FAILED dengan proxy: penyebab dan cara memperbaiki

> net::ERR_TUNNEL_CONNECTION_FAILED dengan proxy di Chrome, Playwright atau Puppeteer: tunnel CONNECT gagal. Temukan status tersembunyi dan perbaiki.

- URL: https://crawlrelay.com/id/docs/errors/err-tunnel-connection-failed/
- Terakhir diperbarui: 2026-10-13
- Publisher: CrawlRelay (https://crawlrelay.com)

Kesalahan jaringan Chromium: pesan tepat di tiap alat, penyebab yang mungkin secara urut, dan perbaikan yang berhasil.

**Jawaban cepat — Apa arti ERR_TUNNEL_CONNECTION_FAILED dengan proxy?**

**net::ERR_TUNNEL_CONNECTION_FAILED** berarti Chrome minta proxy buka tunnel ke situs HTTPS dan proxy tidak menjawab `200 Connection established`. Browser menyembunyikan status aslinya. Dengan proxy residential CrawlRelay, penyebab biasanya kredensial hilang di Playwright atau Puppeteer lalu target tidak terjangkau gateway. Reproduksi dengan `curl -v` untuk lihat kode asli.

## ERR_TUNNEL_CONNECTION_FAILED sekilas

| Atribut | Nilai |
| --- | --- |
| Kesalahan | ERR_TUNNEL_CONNECTION_FAILED |
| Tipe | Kesalahan jaringan Chromium |
| Dikirim oleh | Browser Anda, setelah proxy menolak atau gagal pada permintaan CONNECT |
| Didefinisikan dalam | CONNECT method: RFC 9110, section 9.3.6 |
| Mencoba lagi? | Hanya setelah Anda tahu status sebenarnya di baliknya |
| Periksa pertama | Reproduksi dengan curl -v untuk lihat status sebenarnya dari CONNECT |

## Apa arti ERR_TUNNEL_CONNECTION_FAILED?

Untuk memuat halaman HTTPS lewat proxy HTTP, browser dulu mengirimkan `CONNECT host:443`. Jika proxy jawab 200, browser mulai TLS di dalam tunnel. Jawaban lain seperti 407, 403 atau 502 menghentikan percobaan, dan Chromium laporkan satu kesalahan umum.

Itulah mengapa error ini memberitahu lokasi kegagalan, tunnel, tapi tidak alasannya. Alasannya adalah kode status yang proxy kirim, yang bisa Anda lihat pakai curl.

## Seperti apa ERR_TUNNEL_CONNECTION_FAILED dalam Python, curl, Node.js, dan browser?

Kegagalan yang sama dicetak berbeda di setiap alat. Ini adalah pesan yang perlu dicari di log Anda:

- **Playwright:** `page.goto: net::ERR_TUNNEL_CONNECTION_FAILED at https://...`
- **Puppeteer:** `Error: net::ERR_TUNNEL_CONNECTION_FAILED at https://...`
- **Bilah alamat Chrome:** 'Situs ini tidak dapat dijangkau' dengan kode `ERR_TUNNEL_CONNECTION_FAILED`
- **Selenium dengan Chrome:** kode yang sama di dalam `WebDriverException`

## Apa penyebab ERR_TUNNEL_CONNECTION_FAILED?

Kemungkinan besar pertama:

- **Tidak ada kredensial yang dikirim** (tersembunyi 407). Chrome mengabaikan nama pengguna dan kata sandi dalam `--proxy-server`.
- **Tujuan ditolak** (tersembunyi 403), seperti kategori yang diblokir oleh kebijakan penggunaan proxy.
- **Target tidak dapat dijangkau** (tersembunyi 502 atau 504): host mati, kesalahan ketik, atau kegagalan DNS di jalur keluar.
- **Port salah**: mengarahkan browser ke port SOCKS5 seolah-olah itu HTTP, atau sebaliknya.

## Bagaimana cara mendiagnosis ERR_TUNNEL_CONNECTION_FAILED langkah demi langkah?

1. Jalankan URL yang sama melalui curl dengan `-v` (perintah di bawah) dan baca baris setelah `CONNECT`.
2. `407` berarti kredensial; `403` berarti tujuan ditolak; `502` atau `504` berarti target atau jalur keluar.
3. Pastikan browser menggunakan port HTTP untuk server proxy `http://`.
4. Uji halaman sederhana seperti `https://api.ipify.org` sebelum target sebenarnya.

*Uji URL yang gagal dengan curl (port HTTP, verbose)*

```bash
# Use the URL that fails; with https://api.ipify.org instead, you test the gateway alone.
# "HTTP/1.1 200 Connection established" first, then the site's own status: the site answered.
curl -v -x http://USERNAME:PASSWORD@gw.crawlrelay.com:7777 https://TARGET_URL

# Same test through the SOCKS5 port, with DNS resolved at the exit
curl -v --socks5-hostname gw.crawlrelay.com:7778 --proxy-user USERNAME:PASSWORD https://TARGET_URL
```

## Bagaimana cara memperbaiki ERR_TUNNEL_CONNECTION_FAILED?

- **Playwright:** masukkan `server`, `username` dan `password` dalam opsi `proxy`, per browser atau konteks. Lihat [panduan Playwright](https://crawlrelay.com/id/docs/playwright/).
- **Puppeteer:** jalankan dengan `--proxy-server=http://host:port` dan panggil `page.authenticate()` sebelum `goto` pertama. Lihat [panduan Puppeteer](https://crawlrelay.com/id/docs/puppeteer/).
- **Selenium:** jalankan penerus lokal kecil yang menambahkan kredensial. Lihat [panduan Selenium](https://crawlrelay.com/id/docs/selenium/).
- **Periksa tujuan** terhadap [Kebijakan Penggunaan yang Dapat Diterima](https://crawlrelay.com/id/acceptable-use/) kami.

*Playwright (Python): kredensial sebagai bidang terpisah*

```python
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(proxy={
        "server": "http://gw.crawlrelay.com:7777",
        "username": "USERNAME-country-us",
        "password": "PASSWORD",
    })
    page = browser.new_page()
    response = page.goto("https://api.ipify.org")
    print(response.status, page.inner_text("body"))
    browser.close()
```

## Haruskah saya mencoba lagi setelah ERR_TUNNEL_CONNECTION_FAILED?

Coba ulangi hanya setelah status tersembunyi diketahui. Status tersembunyi 407 atau 403 akan terus berulang; perbaiki konfigurasi. Status tersembunyi 502 atau 504 dapat dicoba ulang di jalur keluar baru, seperti kesalahan gateway manapun.

## Bagaimana ERR_TUNNEL_CONNECTION_FAILED berlaku untuk CrawlRelay?

Port HTTP CrawlRelay membawa HTTPS melalui terowongan `CONNECT`, yang didukung oleh semua alat berbasis Chromium. Gunakan port HTTP untuk browser: Chromium tidak mendukung SOCKS5 dengan nama pengguna dan kata sandi.

Gateway: `gw.crawlrelay.com`, port 7777 (HTTP, HTTPS melalui CONNECT) dan port 7778 (SOCKS5). Format username: `USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}`. Terkait: [407 Proxy Authentication Required](https://crawlrelay.com/id/docs/errors/407-proxy-authentication-required/) · [ERR_PROXY_CONNECTION_FAILED](https://crawlrelay.com/id/docs/errors/err-proxy-connection-failed/) · [Panduan Playwright](https://crawlrelay.com/id/docs/playwright/).

## ERR_TUNNEL_CONNECTION_FAILED: pertanyaan yang sering ditanyakan pengembang

### Mengapa curl berhasil tapi Playwright menunjukkan ERR_TUNNEL_CONNECTION_FAILED?

Karena curl mengirim kredensial dari URL proxy, sedangkan Chromium mengabaikan kredensial yang ditulis di alamat server proxy. Di Playwright, masukkan `username` dan `password` sebagai bidang terpisah dari opsi `proxy`. Di Puppeteer, panggil `page.authenticate()` sebelum menavigasi.

### Bisakah saya menggunakan proxy SOCKS5 dengan autentikasi di Chrome?

Tidak langsung. Chromium mendukung proxy SOCKS5 tapi tidak autentikasi nama pengguna dan kata sandi SOCKS5. Gunakan port HTTP gateway sebagai gantinya, yang menangani situs HTTPS melalui terowongan CONNECT, atau jalankan penerus lokal yang mengautentikasi untuk browser.

### Apakah ERR_TUNNEL_CONNECTION_FAILED disebabkan oleh situs web?

Jarang secara langsung. Terowongan ada antara browser dan proxy, jadi kesalahan terjadi sebelum situs web melihat handshake TLS. Situs bisa menjadi penyebab tidak langsung ketika tidak dapat dijangkau dan proxy menjawab 502 atau 504 pada permintaan CONNECT.

## Kesalahan proxy lain dalam referensi ini

- [401 Unauthorized vs 407](https://crawlrelay.com/id/docs/errors/401-unauthorized/)
- [403 Forbidden](https://crawlrelay.com/id/docs/errors/403-forbidden/)
- [407 Proxy Authentication Required](https://crawlrelay.com/id/docs/errors/407-proxy-authentication-required/)
- [429 Too Many Requests](https://crawlrelay.com/id/docs/errors/429-too-many-requests/)
- [502 Bad Gateway](https://crawlrelay.com/id/docs/errors/502-bad-gateway/)
- [503 Service Unavailable](https://crawlrelay.com/id/docs/errors/503-service-unavailable/)
- [504 Gateway Timeout](https://crawlrelay.com/id/docs/errors/504-gateway-timeout/)
- [Cannot connect to proxy (ProxyError)](https://crawlrelay.com/id/docs/errors/cannot-connect-to-proxy/)
- [Connection reset by peer (ECONNRESET)](https://crawlrelay.com/id/docs/errors/connection-reset/)
- [ERR_PROXY_CONNECTION_FAILED](https://crawlrelay.com/id/docs/errors/err-proxy-connection-failed/)
- [ERR_TUNNEL_CONNECTION_FAILED](https://crawlrelay.com/id/docs/errors/err-tunnel-connection-failed/)
- [Read timed out (ReadTimeout)](https://crawlrelay.com/id/docs/errors/read-timeout/)
- [SOCKS5 proxy errors](https://crawlrelay.com/id/docs/errors/socks5-proxy-errors/)
- [SSL: CERTIFICATE_VERIFY_FAILED](https://crawlrelay.com/id/docs/errors/ssl-certificate-verify-failed/)
- [SSL: WRONG_VERSION_NUMBER](https://crawlrelay.com/id/docs/errors/ssl-wrong-version-number/)

**Proxy residensial dengan dokumentasi yang membahas kasus kegagalan** Proxy residensial CrawlRelay dari US$0,50/GB, lalu lintas yang tidak pernah kedaluwarsa. [Lihat harga](https://crawlrelay.com/id/pricing/) · [Mulai cepat](https://crawlrelay.com/id/docs/)

---

CrawlRelay: CrawlRelay adalah layanan proxy residensial dan proxy seluler 4G/5G yang berfokus pada pengembang untuk scraper dan pipeline data AI: trafik pay-as-you-go tanpa kedaluwarsa mulai dari US$0,50/GB, dibayar dengan crypto, tanpa perlu unggah ID. Tanpa KYC — tanpa ID, tanpa selfie, tanpa dokumen. Bayar dengan crypto.
