2012-06-24 3 views
0

프록시로드 및 스트레스 테스트를 위해 XULRunner와 Crowbar을 사용하여 Firefox 브라우저를 에뮬레이트하고 있습니다.transport.openOutputStream의 저수준 버전입니까?

꽤 잘 작동하며 우리가 좋아하는대로 WWW::Curl을 사용하여 HTTP-GET로드의 대상 URL과 화재 목록을 가져 오는 Google의 (Perl)로드 + 스트레스 도구와 아주 잘 어울립니다.

그러나 우리 perl 스크립트 stresstool도 (내가 집게와 통합하기 전에) 여러 다른 클라이언트를 에뮬레이트하기 위해 풀에서 소스 IP 주소를 선택합니다. crowbar는 모든 요청을 보내는 프록시 자체이기 때문에 아웃 바운드 연결에 사용해야하는 IP 주소를 넘겨 줄 HTTP-param을 구현하려고합니다 (예 : ?ip=4.5.6.7).

지름길의 소스 코드를 살펴보면 JS 전화 인 transport.openOutputStream을 사용하고 있는데 아웃 바운드 IP 주소를 선택할 가능성이 없다는 것을 알았습니다.

클라이언트 컴퓨터에 구성된 IP 주소 중 하나를 선택하기 위해 사용해야하는 (어쩌면 네이티브 게코) 기능이있는 사람이 있습니까? 모질라가 제공하는 모든 문서에서 다소 분실되어 있고 계속하려면 올바른 찌르거나 포인터 만 있으면됩니다.

답변

1

XULRunner/Firefox에는 아웃 바운드 IP 주소를 선택하는 기능이 없습니다. 항상 운영 체제의 라우팅 테이블로 이동합니다. 따라서 아웃 바운드 주소는 대상 주소에 의해서만 결정됩니다. 가장 좋은 방법은 프록시를 nsISocketTransportService.createTransport()에 지정하는 것입니다.

+0

확인해 주셔서 감사합니다. 나는 이미 이걸 의심스러워하므로 다른 것을 살펴볼 것입니다. –