PAC 파일의 목적은 단 하나:
어떤 URL 요청이 어떤 프록시를 거칠지 자동으로 결정해주는 것.
Windows에 http://your-company.com/proxy.pac 주소를 입력하면
브라우저(또는 일부 앱)는 해당 URL의 .pac 파일을 다운받고
URL 요청마다 FindProxyForURL() 함수에 넘겨서
"프록시를 거칠지 말지" 판단함
function FindProxyForURL(url, host) { // url:접속하려는 URL, host:접속 대상의 도메인
if (shExpMatch(host, "*.internal.company.com")) { // 조건부 프록시 : 특정 도메인만 프록시를 거치게 할 수 있음
return "PROXY proxy.company.com:8080"; // 나머지는 이 프록시로
}
return "DIRECT"; // 프록시 안 거치고 직접 연결
}
내 컴퓨터에서 나가는 모든 네트워크가 PAC의 통제를 받나? | 아니다. PAC 설정을 따르는 앱만 영향을 받는다. |
영향을 받는 앱은? | 주로 브라우저들 (Chrome, Edge 등) |
영향을 안 받는 앱은? | CLI 도구(npm, git, curl 등), 일부 네이티브 앱 |
모든 트래픽을 통제하려면? | 방화벽( Windows Firewall이나 외부 네트워크 장비에서 강제로 차단 ) VPN( 모든 트래픽을 암호화된 터널로 우회) 라우터 수준의 제어가 필요 |
'【 개발 이야기 】' 카테고리의 다른 글
k8s는 뭘까? (3) | 2025.08.12 |
---|---|
Connection Timeout, Socket Timeout, Read Timeout의 차이점은 무엇인가요? (1) | 2025.08.01 |
스프링 생명주기와 @Bean (4) | 2025.07.30 |
[RxJava] Observable<T>와 MaybeSource<T> (0) | 2025.07.22 |
HTTP method (6) | 2025.07.21 |