빠른 답변
코드에서 정적 ISP 프록시를 어떻게 사용하나요?
프록시 URL http://USERNAME:PASSWORD@IP:PORT(또는 SOCKS5의 경우 socks5h://)을 HTTP 클라이언트에 전달하세요: curl의 --proxy, Python requests의 proxies 인수, 또는 Node.js의 에이전트. PinnedIP는 두 프로토콜을 모두 지원하는 전용 미국 ISP IP를 US$2.03부터 30일간 임대합니다(2026년 10월); KYC 없이, 암호화폐 결제.
curl
curl은 두 프로토콜을 기본으로 지원합니다. socks5h은 프록시가 호스트 이름을 확인하도록 합니다.
curl -s --proxy http://USERNAME:[email protected]:HTTP_PORT https://api.ipify.org?format=json
curl -s --proxy socks5h://USERNAME:[email protected]:SOCKS_PORT https://api.ipify.org?format=jsonPython (requests)
requests을 설치하세요(SOCKS5의 경우 requests[socks]도). 하나의 세션은 연결을 재사용하므로 대상에 부담을 주지 않고 빠릅니다.
import requests
PROXY = "http://USERNAME:[email protected]:8080" # or socks5h://...:SOCKS_PORT
session = requests.Session()
session.proxies = {"http": PROXY, "https": PROXY}
session.headers["User-Agent"] = "price-check/1.0 (contact: [email protected])"
response = session.get("https://api.ipify.org?format=json", timeout=20)
response.raise_for_status()
print(response.json()["ip"])
import itertools
import time
import requests
IPS = ["203.0.113.10", "203.0.113.11", "203.0.113.12"]
USER, PASSWORD, PORT = "USERNAME", "PASSWORD", 8080
URLS = ["https://example.com/", "https://example.org/"]
pool = itertools.cycle(IPS)
for url in URLS:
ip = next(pool)
proxy = f"http://{USER}:{PASSWORD}@{ip}:{PORT}"
r = requests.get(url, proxies={"http": proxy, "https": proxy}, timeout=20)
print(ip, url, r.status_code)
time.sleep(5) # keep a polite pace
Node.js
Node의 내장 fetch은 프록시 옵션을 지원하지 않으므로, HTTP 프록시에는 undici 패키지의 ProxyAgent를 사용하세요(Node 18 이상).
const { ProxyAgent, fetch } = require('undici');
const agent = new ProxyAgent('http://USERNAME:[email protected]:8080');
(async () => {
const res = await fetch('https://api.ipify.org?format=json', { dispatcher: agent });
const body = await res.json();
console.log(body.ip);
})();
자동화된 요청에는 어떤 규칙이 적용되나요?
사이트가 감당할 수 있는 속도로 요청을 보내고, 가능한 경우 클라이언트를 식별하고, robots.txt와 사이트 약관을 준수하며, 처리할 권리가 없는 개인 데이터는 수집하지 마세요. 온라인 뱅킹, 정부 및 결제 포털은 모든 IP에서 차단되며, SMTP 포트 25, 465, 587도 마찬가지입니다. 전체 목록은 허용 사용 정책에 있습니다.
코드 예제: FAQ
socks5 대신 socks5h를 사용하는 이유는 무엇인가요?
socks5h를 사용하면 프록시가 호스트 이름을 확인하므로 DNS 조회도 미국 IP를 통해 이루어집니다. socks5를 사용하면 먼저 여러분의 기기에서 이름을 확인합니다.
요청이 407을 반환하는 이유는 무엇인가요?
프록시가 유효한 인증 정보를 받지 못했습니다. 사용자 이름과 비밀번호를 확인하거나, 고객 영역에서 여러분의 IP를 허용 목록에 추가하고 인증 정보를 제거하세요.
하나의 IP에서 여러 요청을 병렬로 실행할 수 있나요?
예, 공정 사용 범위 내에서 가능합니다. 많은 사이트가 IP당 요청을 제한하므로, 무거운 작업을 여러 IP에 분산하고 적절한 속도를 유지하세요.