proxychains 아래에서 실행되는 프로그램은 일반 호스트 이름을 낯선 주소 범위로 확인합니다. 그 주소는 인터넷에서 온 DNS 응답이 아니라 래퍼 내부의 관리용 값일 수 있습니다.

proxy-DNS 모드에서 proxychains-ng는 호스트 이름을 기억하고, 애플리케이션에 합성 주소를 반환하며, 나중에 가로챈 연결이 프록시를 통해 열릴 때 그 값을 다시 호스트 이름으로 변환할 수 있습니다.

자리표시자는 출구 IP가 아닙니다

예제 구성은 proxy_dns과 remote_dns_subnet을 문서화합니다. 예약된 매핑 범위는 구성할 수 있습니다. 이것은 ping을 하거나 프록시의 공개 소스로 게시할 것으로 예상하는 주소가 아닙니다.

이는 관련 이름 조회와 연결 호출이 의도한 프로세스 내에서 가로채지는지에 달려 있습니다. 다른 메커니즘으로 자체 DNS를 수행하거나, 자리표시자를 나중의 무관한 용도로 저장하거나, 후킹된 소켓 경로를 우회하는 프로그램은 다르게 동작할 수 있습니다.

이 제한은 로그의 합성 주소만으로 전체 애플리케이션이 원격 DNS를 올바르게 사용한다는 증거가 되지 않는 이유를 설명합니다. 마찬가지로 래핑된 프로세스 밖의 별도 DNS 도구는 애플리케이션의 매핑된 연결을 테스트하지 않습니다.

애플리케이션의 자리표시자, 프록시 측에서 선택되는 실제 목적지 주소, 그리고 웹사이트가 관찰하는 공개 출구를 구분하십시오. 이들은 서로 다른 역할을 하며 일치할 필요가 없습니다.

디버깅할 때 호스트 이름을 메모에 남기고 래핑된 정확한 프로세스와 구성을 파악하십시오. 의심스러운 자리표시자를 수동으로 바꾸면 래퍼가 그 호스트 이름을 복구하는 데 필요했던 매핑을 잃어버릴 수 있으며, 이해할 수 있는 간접 지정이 잘못된 목적지로의 연결로 바뀔 수 있습니다.

관련 글